クラウド オペレーション

OpenTelemetry を基盤とする Ops エージェントの一般提供を開始

#cloudmigration

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

本番環境でサービスを実行し、トラブルシューティングするには、アプリケーションとインフラストラクチャの詳細をわかりやすく可視化する必要があります。Google Cloud Compute Engine(GCE)では、あらかじめ用意されている基本的なログや指標を利用できますが、高度なデータを収集するには、Monitoring エージェントと Logging エージェントをインストールする必要がありました。このたび、Logging エージェントと Monitoring エージェントの両方の機能を備え、全体としてシンプルなインストール、管理、構成を実現する新しい Ops エージェントが一般提供となりました。Cloud Logging と Cloud Monitoring の機能を統合した Ops エージェントは、オペレーティング システム間の垣根も取り払います。

Ops エージェントの新機能

  • このエージェントが推奨エージェントとなり、従来のエージェントは最終的にこのエージェントに置き換えられます。

  • ほぼ下位互換性が保たれています。

  • ロギングのスループットが大幅に向上しているため、OutOfMemory エラーやデータ損失を防止できます。

  • ログと指標の両方でシンプルな YAML ベースの構成をサポートしているので、ロギングツールと監視ツールの両方で一貫性のある運用が可能です。また、Linux ディストリビューションと Windows で一貫性のある機能セットが提供されます。

  • ロギングと監視の機能を兼ね備えているので 1 つのエージェントをダウンロード、インストール、保守すればよく、これまでのように 2 つのエージェントを使用する必要がありません。

  • オープンソースであり、急速に発展している OpenTelemetry コミュニティの成果を取り込むことができます。

Ops エージェントの詳細については、ドキュメントをご覧ください。

OpenTelemetry を基盤として構築

組織がクラウド、ハイブリッド クラウド、マルチクラウドへと環境を拡大する中、オペレーターや開発者は、(独自のエージェントを含む)数多くのエージェントやプロトコルを使用し、さまざまな方法で指標、ログ、トレースを収集することを迫られています。このような状況を改善したいという思いから、OpenTelemetry を基盤とした Ops エージェントを開発しました。CNCF によりサポートされた、オープンソースでベンダー中立のこのテクノロジーは、運用の統一に向けた取り組みで中心的な存在として広く利用されています。OpenTelemetry は、運用関連のテクノロジーを提供する多くのベンダーの支援を受けて開発が進められています。OpenTelemetry を基盤とした Ops エージェントは、オープン化を積極的に推進する Google Cloud の姿勢を明確に示すものです。OpenTelemetry のコミュニティでは、ユーザーにとって最適なテレメトリーの実現に向けた取り組みを行っています。Google Cloud がこのプロジェクトに参加し、貢献できることを大変うれしく思っております。

Fluent Bit による高いスループットとリソース効率向上

Google Cloud で構築されるサービスの大規模化と複雑化が進む中、よりスループットの高い VM Logging エージェントが必要とのご意見が寄せられていました。スループット向上により、データ損失や OutOfMemory エラーを防止できます。

そこで、パフォーマンス面で OpenTelemetry を補完するものとして、ログの処理と転送を行うオープンソースのツール Fluent Bit を利用することにしました。社内のテストでは、新しい Ops エージェントは従来の Logging エージェントと比べ、スループットが 15 倍向上しました。さらに、基盤となる VM のリソース効率向上も実現できたことで、最小限の構成の VM でも快適にエージェントを実行できるようになりました。

Cloud Logging や Cloud Monitoring との自動的な統合

以前の投稿で、Google Cloud のインフラストラクチャとオブザーバビリティ ツールの緊密な統合について詳しくご案内しましたように、Ops エージェントは Google Cloud Console で利用可能なオブザーバビリティ ツールとあらかじめ統合されています。エージェントを VM にインストールすると、ホストの指標、プロセスの指標、ログが自動的に Cloud Logging と Cloud Monitoring に転送されるようになります。そのための構成は一切必要ありません。
gce vm

ユーザー設定なしでそのまま使える VM ダッシュボードの例(出典

インストール オプション

管理者、開発者、IT マネージャーの皆様は、他の新しいツールについて学習するので手いっぱいでしょう。そこで、オープンソース ツール Ansible の構成管理と自動化の機能をすでに利用している場合は、その機能をそのまま使用して Ops エージェントをインストールできるようにしました。Ansible のロールを使用すると、Linux や Windows の VM フリートにエージェントをインストールして構成できます。詳細については、Cloud Ops の Ansible ロールに関するドキュメントをご覧ください。Ansible に加えて、今月末には Puppet もサポートされます。次の四半期には、Chef のサポートも追加される予定です。

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

マネージド ソリューションをご希望の方は、Ops エージェントのインストールを自動的に管理するメカニズムであるエージェント ポリシー(現在プレビュー版)を利用できます。わずか 1 つのコマンドで、新規や既存の VM を管理するポリシーを作成できます。これにより、指定した条件を満たす VM における Ops エージェントの適切なインストールやオプションの自動アップグレードを確実に実施することができます。

使ってみる

Ops エージェントのスループットとリソース効率の向上、そして機能統合の利便性といったメリットを実感していただけたら幸いです。Ops エージェントには新機能が続々と追加されていますので、ブログのページリリースノートのページで最新情報をご確認ください。Ops エージェントについて具体的な質問がありましたら、Google Cloud コミュニティの Cloud Operations のページでディスカッションに参加してみてください。

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

-エンジニアリング マネージャー Joe Lynch