GCEのCPU使用率にアラートを設定する

たま~~~に原因不明のCPU使用率100%張り付き問題が起こるので、それが起こったときに通知されるように設定します。

Advertisement

このサイトはGoogle Compute Engineの無料枠で動作

このブログのシステムを再考してみる Google Compute Engineを使ってみる編

このサイトはGoogle Compute Engineの無料枠で動かしています。つまり性能的に貧弱なf1-microインスタンスを利用しているわけです。

このブログのシステムを再考してみる CDNを使ってみる編

確かに性能的には貧弱ではありますが、WordPressが意外と軽量だったり、CDNも挟んでいたり、大量のアクセスがくることもないことから、基本的にはCPU使用率は20%前後で安定し、快適に利用できているわけですが、今まで数回CPU使用率が100%に張り付く問題が発生しています。

CPU使用率100%張り付き

ブログ更新しよ~~~ということでアクセスした際になんか重いな~~~と感じGCEを確認してみるとCPU使用率が100%で張り付いているということが今まで数回ありました。

本来ならばその際に原因を探るべきでしょうが、毎回そんなこと気にせず問答無用で再起動してしまっているので未だに原因がわかっていません。

UpdraftPlus WordPress Backup Pluginを導入しました

原因として思いつく高負荷作業といえばデータのバックアップ作業ぐらいですが、この作業は最もアクセスが少なく私もアクセスしない早朝に自動で行われるようになっています。
また、バックアップ作業が行われたとしても100%の負荷にはなりません。

GCPでリソース監視が可能

GCPにはリソース監視機能があり、それを利用すればCPU負荷が高まった際にアラートを発出することも可能です。

CPU使用率が100%になると極端にページの表示が重くなり嫌な感じなので、そういった状態をできるだけ減らすために負荷が高くなった際にアラートを発出し、メールで受信できるように設定しようと思います。

通知チャンネル設定

アラートが発出された際に通知する連絡先を先に登録しておきます。

Google Cloud Platformを開き、メニューからMonitaring→アラート、EDIT NOTIFICATION CHANNELSをクリック、EmailをADD NEWし、メールアドレスと表示名を入力、SAVEします。

メールはPCの前にいる時しか確認していないのでリアルタイム性などを考えるとSMSとかのほうが良いのですが、電話番号がしょっちゅう変わるという事情もあるのでとりあえずメールだけ登録しました。

アラート設定

CPU負荷が高まったときにアラートを発出するように設定します。

メニューからMonitaring→アラート、CREATE POLICYをクリック、ADD CONDITIONをクリックしResource typeにVM Instance、MetricにCPU utilizationを選択、ConfigurationのCondition triggers ifにAll time series violate、Conditionにis above、Thresholdに75、Forに3 minuteと設定しADDをクリック、NEXTをクリック、Notification Channelsに先程登録したメールを設定、NEXTをクリック、アラート名を付け、SAVEをクリックすればOKです。

これでCPU使用率が3分間75%以上に張り付いたらアラートが発出され、メールが飛んでくるように設定されました。

アラート条件のCPU使用率は75%以上にしましたが、これはバックアップが動いても75%以上にはならないはずということで異常検知のために余裕を持って75%です。

Advertisement

これで次からは問題が発生してもすぐにメールが飛んできて対処できるわけです。

次はきちんと原因を確認します・・・