コンテンツに移動
クラウド オペレーション

トラブルシューティングやリソース帰属にプロセス指標を使用する

2021年8月26日
Google Cloud Japan Team

※この投稿は米国時間 2021 年 8 月 19 日に、Google Cloud blog に投稿されたものの抄訳です。

アプリケーションやサービスの問題に遭遇したときは、それらの基盤となるインフラストラクチャやソフトウェアに関する詳細な情報を得ることが不可欠です。大部分のモニタリング サービスが提供する分析情報は仮想マシン(VM)レベルのものであり、それより細かいレベルの情報が得られるサービスはほとんどありません。アプリケーションやサービスの状態の全体像を把握するには、インフラストラクチャでどのプロセスが実行されているかを知る必要があります。新しい Ops エージェントは、VM で実行されているプロセスを複雑な設定なしに可視化するもので、Cloud Monitoring でデフォルトで使用可能になっています。本日は、プロセス指標にアクセスする方法と、それらのモニタリングを開始すべき理由を取り上げます。

プロセス指標の可視性の向上

プロセス指標によって収集されるデータには、VM で実行されているすべてのプロセスやサービスの CPU、メモリ、I/O、スレッド数、その他が含まれます。Ops エージェントまたは Cloud Monitoring エージェントがインストールされている場合、これらの指標が 60 秒間隔で取得されて Cloud Monitoring に送信されるので、これらを可視化、分析、追跡し、アラートを発生させることができます。1 つの VM で実行されているプロセスの数は数十から数百程度ですが、VM フリート全体で見るとその数は数万に達する場合があります。

開発者は、メモリリークやパフォーマンスの問題が生じたとき、普通は 1 つの VM の内部だけを見てそのトラブルシューティングや原因の特定を行います。

それに対して、オペレーターや IT 管理者はリソース消費の集計値に関心を持ち、VM フリート全体のコンピューティング、ストレージ、ネットワークの使用状況に関するベースライン ビューを構築します。その後、それらのベースライン消費レベルが通常の動作で見られる水準を逸脱した場合には、システムを調査する時期が来たと判断します。

スケーリングと使いやすさを念頭に置いた仕様

Cloud Monitoring は、Google 全体の指標を支えているのと同じ高度なバックエンドを基に構築されています。この実証されたスケーラビリティにより、カーディナリティがどれだけ高くても、指標の取り込みが確実にサポートされます。さらに、Google のエージェントでプロセス指標のモニタリングを有効にするために構成ファイルを変更する必要はありません。

最後に、Google の目標は、オブザーバビリティとテレメトリーに関するデータを必要なときに必要な場所でお客様に提供することです。そのため、他のオペレーション スイートのツールと同様に、インフラストラクチャのコンテキストでのプロセス指標を VM 管理コンソールで直接提供しています。

https://storage.googleapis.com/gweb-cloudblog-publish/original_images/Navigating_to_a_single_VMs_in-context_process_monitoring_in_GCE.gif
GCE で単一の VM のコンテキスト内プロセス モニタリングに移動する

ナビゲーションは簡単です。Ops エージェントまたは Cloud Monitoring エージェントを VM にインストールした後、以下の手順を行います。

  1. Compute Engine コンソール ページに移動し、[VM インスタンス] をクリックします。

  2. 調査する VM を選択します。

  3. 上部のナビゲーション メニューで [オブザーバビリティ] をクリックします。

  4. [指標] をクリックします。

  5. 最後に [プロセス] をクリックします。

右側のウィンドウに、VM で実行されているすべてのプロセスを含むグラフと表が表示されます。データを時間枠でフィルタし、名前や値で並べ替えることもできます。プロセスを検出して表示するために必要なことは、エージェントをインストールすることだけです。

フリート全体での指標のモニタリング

Cloud Monitoring によって提供される VM フリート全体の一元的なビューにより、リソースの使用量をプロセス別に集計して割り出すことができます。このレベルの広範かつきめ細かい情報があれば、どのソフトウェアを実行するか、アプリやサービスを最適にサポートするために VM がいくつ必要かといった決断を容易に下せるようになります。管理者は、特定のプロセスが原因で多数の VM のパフォーマンスが低下しているかどうかを調べる場合、多大なコストをかけずに分析を実施できます。また、比較的性能の低い VM が多数動作している環境を、より性能の高い少数の VM に置き換えることもできます。

このフリート全体のビューを表示するには、以下の手順を行います。

  1. [Monitoring] に移動します。

  2. 左メニューで [ダッシュボード] をクリックします。

  3. [すべて ダッシュボード] リストで [VM Instances] をクリックします。

  4. ウィンドウの上部にある [PROCESSES] をクリックします。

これで、VM フリート全体で実行されているプロセスの詳細を示す多くのグラフが表示されます。

https://storage.googleapis.com/gweb-cloudblog-publish/original_images/new_Cloud_Monitoring_VM_Fleet-wide_Process_view.gif

Cloud Monitoring の VM インスタンス ダッシュボードに新しく組み込まれた VM フリート全体のプロセスビュー

使ってみる

プロセス指標の識別とモニタリングを開始するには、まず Ops エージェントをインストールするか、すでにレガシー Cloud Monitoring エージェントがインストールされている必要があります。これが完了したら、プロセス指標データが自動的に Cloud Monitoring と VM 管理コンソールに取り込まれます。

不明な点がある場合や、他の開発者、オペレーター、DevOps、SRE との会話に参加したい場合は、Google Cloud コミュニティの Cloud Operations ページをご覧ください。

-プロダクト マネージャー Rahul Harpalani

投稿先