
Google Cloud オペレーション スイートで、監視アラートを検知
はじめに昨今、クラウドサービスの台頭により、Google Cloudを利用する企業が増えております。
クラウドサービスの利用にあたり、正常に稼働しているか監視したいとお考えの方もいらっしゃるかと思いますが、Google Cloudではオペレーションスイート(旧:Stackdriver)という監視サービスが提供されていることはご存知でしょうか。オペレーションスイートを利用することで、Google Cloudの各サービスの監視からアラートまで幅広いニーズに対応することができます。
本記事では、オペレーション スイートの機能解説や、仮想マシンを監視する方法についてご紹介します。
記事の前半ではオペレーション スイートの各種サービス(Cloud Logging, Cloud Monitoring)の概要および料金について解説していきます。後半ではCloud Loggingを使用して実際にアラートを検知する方法をご紹介しています。ぜひご覧ください。
Google Cloud オペレーション スイート(旧:Stackdriver)とは

Google Cloud オペレーションスイートは、Google Cloudが提供する統合運用管理ツールで、かつては「Stackdriver」と呼ばれていました。クラウドインフラやアプリケーションの監視、トラブルシューティング、ログ管理を支援する機能を提供します。
開発者や運用チームがシステムの可観測性を高め、問題発生時に迅速に対応できるよう設計されているのが特徴です。主な機能としては
- リアルタイムのメトリクス収集やアラートの設定
- 分散トレーシングによるリクエストフローの可視化
- 詳細なログ分析
などが挙げられます。
また、Google Cloud環境に最適化されている一方で、AWSやオンプレミス環境などのマルチクラウドやハイブリッド環境でも利用可能です。これにより、運用負荷を軽減し、信頼性の高いサービス提供を実現します。スケーラブルなデータ処理や、カスタムダッシュボードを活用して、ビジネス要件に合わせた監視体制を構築できる点が魅力です。
直感的なUIと豊富なドキュメントも用意されており、初心者から熟練者まで幅広いユーザーが利用できる製品と言えます。
Google Cloud オペレーションスイートの主なサービス
Google Cloud オペレーションスイートは、主に以下のようなサービスを提供することで、ユーザーの業務効率化などに貢献しています。
Cloud Logging
Google Cloud オペレーション スイートで提供されているサービスの一部です。Cloud Logging(旧称 Stackdriver Logging)はGoogle Cloud上で生成されたログを収集し、保管することができるサービスです。
コンソールの [ログエクスプローラー] から検索や閲覧ができ、クエリを使用することで指定された文字列を検知した際にアラートを通知するといった設定が行えます。収集したログは [ログバケット] で保管されており、保持期間を設定することで期限が過ぎたログを廃棄することも可能です。
Cloud Monitoring
Cloud Monitoring(旧称 Stackdriver Monitoring)では、クラウドで実行されるアプリケーションやインフラストラクチャのパフォーマンスといったシステムの監視を行うことができるサービスです。
[ダッシュボード] ではリソース状況や、各サービスのパフォーマンスをグラフ化し、アラートを設定したり、フィルタリングしたりすることが可能です。またLoggingで作成したアラートの設定変更も行えます。
アプリケーションパフォーマンス管理(APM)
上で紹介したCloud LoggingとCloud Monitoringに加え、Cloud Traceによるレイテンシの可視化や、Cloud デバッガによる状態検査などが統合されている機能です。アプリを効率よく実行する上で役に立ちます。
料金概要

Cloud Loggingと Cloud Monitoringの料金概要については以下の通りとなっております。
Cloud Logging の費用
Clod Loggingは、主にログの取り込みとストレージによって料金が発生します。いずれも従量課金制で、使った分だけ料金が加算される仕組みです。
機能 | 料金 |
ロギングの取り込み | 取り込まれたログに対して $0.50/GiB。 |
ロギングのストレージ | 30 日を超えて保持されたログに対して $0.01/GiB。 |
Cloud Monitoring の費用
Cloud Monitoringは、Monitoring実行時のデータ量に応じて料金が発生します。また、APIを呼び出した際にも、その都度費用が発生する仕組みです。なお、書き込みAPIを呼び出す場合には料金は発生しません。
機能 | 料金 |
全 Monitoring データ | $0.2580/MiB1: 最初の 150 ~ 100,000 MiB$0.1510/MiB: 次の 100,000 ~ 250,000 MiB$0.0610/MiB: 250,000 MiB 超 |
GKE ワークロード指標を使用して 取り込まれた Monitoring データ | 100 万サンプルごとに $0.15: 0~500 億サンプル#100 万サンプルごとに $0.12: 500~2,500 億サンプル100 万サンプルごとに $0.09: 2,500 億超のサンプル |
Monitoring の API 呼び出し | 1,000 ごとに $0.01 の読み取り API 呼び出し(書き込み API 呼び出しは無料) |
料金の詳細については 公式のドキュメント をご参照ください。
具体手順:メール通知を設定、アラートを検知
実際に、Cloud Loggingでログベースのアラートを作成し、Cloud Monitoringで監視してみます。今回はインスタンスを停止した際にメール通知でアラートを検知させてみます。
ログベースのアラートの作成手順は以下になります。
1.Cloud Console のナビゲーションメニューより、[オペレーション] > [ロギング] をクリックします。

2.[ログエクスプローラー] 画面に遷移するので、[クエリ] ペインで検知したいクエリを記述します。

今回はインスタンスが停止したときにアラートを検知するよう記述しています。これ以外にも、アラートの重要度などクエリに記録されるものであれば、様々な条件を指定可能です。
詳しい記述方法については公式のドキュメントをご参照ください。
3.[クエリの実行] をクリックし、[クエリの結果] より記述した内容に不備がないか確認します

4.画面中央の[アラートを作成]をクリック。

5.[ログベースのアラートポリシーの作成] 画面が表示されるので、各項目を入力していきます。
A)[アラート名] フィールドにアラートの名前を入力します。入力した値がそのままアラートの件名になります。
B)[ドキュメント] アラートの詳細を記載します。記載した内容がアラートメールの本文になります。

6.[次へ] をクリックします。
7.[アラートに含めるログを選択] ペインでは手順2で作成したクエリペインが表示されますので、内容に誤りがないことを確認し[次へ]をクリック。※必要に応じて編集することも可能です。

8.通知の間隔と自動クローズ期間を選択します。今回は最小単位で設定します。

9.[次へ] をクリックします。
10.[アラートの通知チャネル] を選択します。

11. [通知チャンネルを管理] をクリックします。

12.Email欄から [ADD NEW] をクリックし、通知を飛ばしたいメールアドレスを入力し保存します。

13.[ログベースのアラートポリシーの作成] 画面に戻り、更新すると追加したメールアドレスが表示されますので選択しOKをクリック。

14.[SAVE] をクリックすると、ポリシーが保存されます。
インスタンス停止とアラート通知の設定方法
次は、実際にインスタンスを停止してアラートを通知させてみます。
1. 左上の [ナビゲーションペイン] から [Compute Engine] > [VMインスタンス] 画面に遷移します。

2. 適当なインスタンスを選択し、停止します。

3. 設定したメールアドレス宛にアラート通知が届いているので確認します。以下のような内容でメールが届いておりました。

メール本文の[VIEW INCIDENT]をクリックすると、インシデントの詳細が見られます。

まとめ

今回は、オペレーション スイートの機能と料金概要の解説と、ログアラートの設定についてご紹介しました。
本記事をご覧いただき、オペレーションスイートに興味を持たれた方もいらっしゃるかと思います。アラートの設定がうまくいかず通知がうまく行えなかったといった事態にならないようお気を付けください。
ちなみに弊社では、システム監視の代行サービスをご契約のお客様が無料でご利用頂ける「puzzle」という監視ツールをご提供しております。監視設定は弊社にて実施させて頂きますので「監視サービスを導入したいが、設定方法がわからない」といった方でも安心です。
ご興味がございましたら、ぜひお気軽にご相談ください。