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

Google Cloud VM のエージェント インストール オプション

2021年5月14日
https://storage.googleapis.com/gweb-cloudblog-publish/images/GCP_11_JbyEVTk.max-2600x2600.jpg
Google Cloud Japan Team

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

仮想マシン(VM)の運用を担当するサイト信頼性エンジニアリング(SRE)チームと運用チームは、安定性とスケーラビリティに優れた環境を開発パートナーに提供する方法を常に模索しています。安定したエクスペリエンスを提供する方法の一つは、システムやアプリケーションのテレメトリー データ(指標、ログ、トレース)を使用し、効果的なモニタリングとトラブルシューティングを実施できるようすることです。VM をはじめとする Google Cloud サービスの多くは、基本的なシステムの指標がすぐに利用でき、エージェントをインストールする必要がありません。ただし、VM やアプリケーションのテレメトリーに関する詳細な指標が必要な場合は、エージェントをインストールしてください。

Google Cloud VM のエージェント インストール オプション

VM にエージェントをインストールするために適切なソリューションを選択すると、時間と労力を大幅に節約できます。Google Cloud のオペレーション スイートでは、同時に 1 つの VM からプログラムによるフリート単位でのインストールまで、さまざまなオプションを作成しました。使えるツールが把握しづらいほど数が多いことを踏まえ、以下に示すオプションでは、現在組織ですでに使用されている可能性が高い Google Cloud ツールとサードパーティ ツールの両方を活用しています。

エージェントのインストールを始める前に、ニーズに合った Google Cloud エージェントを決める必要があります。Ops Agent はログと指標向けの単一のエージェントであり、特殊な高スループットのロギング ワークロードを対象としています。標準のロギング専用エージェントと比較して、より多くのデータをキャプチャでき、OutofMemory エラーを防止できます。現在、Ops Agent はプレビュー版ですので、ご使用の環境で最適なエージェントを必ずご確認ください。Ops Agent がお客様のニーズに合わない場合は、LoggingMonitoring の標準エージェントを使用してください。

VM インスタンス ダッシュボードを使用した単一の VM

モニタリングとロギングが必要な VM がごくわずかであり、Cloud Monitoring と Logging の標準エージェントが最適なオプションであると判断した場合は、Cloud Monitoring の VM インスタンス ダッシュボードを使用してインストール プロセスを開始できます。このダッシュボードにはワークスペース内の VM がすべてリストされ、各 VM にエージェントのインストールの有無が表示されます。エージェントがインストールされていない場合は、[エージェントをインストール] ウォークスルーを使用して、簡単なインストール フローを完了することができます。エージェントがインストールされていて古くなっている場合は、[詳細] をクリックし、リンク先の手順に沿ってエージェントをアップグレードできます。

https://storage.googleapis.com/gweb-cloudblog-publish/original_images/Monitoring_VM_Instances.gif
すべての VM とそのエージェントのステータスが表示される Cloud Monitoring の VM インスタンス ダッシュボード

コンテキスト内の Google Compute Engine を使用した単一の VM

Compute Engine の [VM インスタンス] ページから、Cloud Monitoring に移動せずに各 VM に関する重要なモニタリング情報を確認できます。また、モニタリング エージェントをインストールすることも可能です。

https://storage.googleapis.com/gweb-cloudblog-publish/original_images/Install_Agent_from_GCE.gif
エージェントをデプロイできる Compute Engine の VM インスタンス ダッシュボード

GCP ツール(エージェント ポリシー)を使用した複数の VM

数百から数千もの VM フリートを運用する必要がある場合、マシンごとに UI ベースのプロンプトをウォークスルーするスケーリングは現実的ではありません。Ansible や Terraform などのサードパーティの構成管理ツールやプロビジョニング ツールを使用しない場合、エージェント ポリシー(現在プレビュー版)というエージェントのインストールと管理をプログラムで制御できる組み込みオプションをご利用になれます。

1 つのコマンドで新規や既存の VM を管理するポリシーを作成できます。これにより、指定した条件を満たす VM における Ops Agent、標準の Logging エージェント、標準の Monitoring エージェントの適切なインストールやオプションの自動アップグレードを確実に実施することができます。

https://storage.googleapis.com/gweb-cloudblog-publish/images/Code_Snippet-_Agent_Install_policy.max-600x6.max-600x600.png
Debian オペレーティング システムが搭載された VM で gcloud コマンドを使用したエージェント ポリシーの例

Ansible と Terraform を使用した複数の VM

Ansible の使用

管理者、SRE マネージャー、IT マネージャーは新しいツールの習得に十分な時間をかけます。したがって、組織でオープンソース ツール Ansible の構成管理 / 自動化機能をすでに使っている場合は、それを使用して Cloud Logging や Cloud Monitoring のエージェントをインストールできるようにしてください。

Ansible のロールを使用すると、Linux や Windows の VM フリートにエージェントをインストールして構成できます。詳細については、Cloud Ops の Ansible ロールに関するドキュメントをご覧ください。

https://storage.googleapis.com/gweb-cloudblog-publish/images/Code_Snippet-_Ansible.max-600x600.png
Ansible で Ops Agent をインストールするプレイブックの例

Chef や Puppet といったよく使われる他の構成管理ツールの統合機能が今年の半ばに登場します。

Terraform の使用

オープンソースのプロビジョニング管理 / Infrastructure as Code ツールである Terraform をすでに使っている場合は、Terraform モジュールを使用して、VM にエージェントをインストールし構成できます。詳細については、Terraform エージェント ポリシーに関するドキュメントをご覧ください。

https://storage.googleapis.com/gweb-cloudblog-publish/images/Code_Snippet-_Terraform.max-1400x1400.png
「env = prod」と「app = myproduct」の 2 つのラベルが付いたすべての CentOS 8 VM に Ops Agent をインストールするモジュールの例

使ってみる

管理対象が少数の VM かフリート単位かを問わず、システムとアプリケーションから堅牢なオブザーバビリティ データを確実に利用できるようにすることが、効果的なモニタリングとトラブルシューティングの鍵となります。Cloud Monitoring の VM インスタンス ダッシュボードや、エージェント ポリシーを使う場合や、Ansible や Terraform などのオープンソース ツールを使う場合、Google Cloud VM にエージェントをインストールするための多数のオプションをご利用いただけます。Cloud Logging や Cloud Monitoring などの Google Cloud のオペレーション スイート サービスでは、いくつかの VM 指標がすぐに使用できますが、Ops Agent や、Cloud Monitoring エージェント、Cloud Logging エージェントをインストールすると、インフラストラクチャやアプリケーションを最適なレベルで運用するために役立つデータを収集できます。

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

-プロダクト マーケティング マネージャー John Day

投稿先