皆様、こんにちは!
アイレット株式会社 DX開発事業部の楊林と申します。
前回の投稿では、Google Cloud におけるプロンプトエンジニアリングについて整理しました。
今回はGoogle Cloud のオペレーションスイートについて整理していきます。
オペレーションスイート
Google Cloud のオペレーションスイート(旧称 Stackdriver)は、Google Cloud 上のリソースだけでなく、Amazon Web Services(AWS)上のリソースも含めて可観測性を提供する統合運用基盤です。各種サービスと連携することで、クラウドリソースやアプリケーションサービスを動的に検出し、スマートなデフォルト設定によって主要な指標を短時間で可視化できます。
高度なデータ分析ツールを利用できるだけでなく、多くのサードパーティ製ソフトウェアプロバイダとの連携も可能であり、運用の選択肢が広がります。料金は従量課金制で、一定の無料枠も用意されているため、前払い費用や利用の確約なしに利用を開始できます。
また、Google Cloud のオペレーションスイートは、拡大し続けるテクノロジーパートナーのエコシステムをサポートしています。これにより、IT Ops、セキュリティ、コンプライアンスといった分野において、より幅広い機能を Google Cloud 利用者が活用できるようになります。
モニタリング
モニタリングは、サイト信頼性エンジニアリング(SRE)の基礎となる重要な要素です。SREとは、ソフトウェアエンジニアリングの考え方を運用に適用し、高い信頼性とスケーラビリティを備えたシステムを構築・運用するための規範です。
Cloud Monitoring は、リソースのデプロイ後にモニタリング設定を動的に構成します。スマートなデフォルト設定により、指標、イベント、メタデータといったデータを自動的に取り込み、プラットフォーム、システム、アプリケーションの状態を可視化できます。これらのデータをもとに、ダッシュボード、グラフ、アラートを作成し、状況を継続的に把握します。
指標スコープは Monitoring におけるルートエンティティであり、モニタリングや構成情報を保持します。1 つの指標スコープには最大 375 個の監視対象プロジェクトを含めることができ、そのスコープ内に属するすべてのプロジェクトのモニタリングデータをまとめて確認できます。カスタムダッシュボード、アラートポリシー、稼働時間チェック、通知チャンネル、グループ定義などもスコープ単位で管理されます。
指標データとログエントリ自体は各プロジェクトに保持されますが、スコープを通じて横断的に参照できます。指標スコープを作成する際に指定する最初のプロジェクトはスコーピングプロジェクトと呼ばれ、その名前が指標スコープの名称になります。
指標スコープを「一括表示」として利用することで、複数の Google Cloud プロジェクトや AWS アカウントのリソースを一元的に確認できます。スコープへのアクセス権限を持つユーザーは、原則としてそのスコープに含まれるすべてのデータにアクセスできます。プロジェクトごとに可視性を分けたい場合は、モニタリング対象を異なる指標スコープに分割する必要があります。
Cloud Monitoring では、監視対象の指標を可視化するカスタムダッシュボードを作成できます。グラフにはフィルタやグルーピング、集計機能を適用でき、ノイズを抑えた形で状況を把握できます。また、特定の条件を満たした際に通知を行うアラートポリシーを設定することも可能です。
アラート設計においては、原因ではなく症状を基に通知することや、複数の通知チャンネルを組み合わせて単一障害点を避けることが重要です。通知の対象や必要な対応が分かるよう、内容を明確に記述することで、運用時の負荷を抑えられます。
Ops エージェントは、Compute Engine の仮想マシン上で動作し、VM 内部のテレメトリー情報を収集する主要なエージェントです。収集された指標はダッシュボードやアラート、稼働時間チェックなどに利用され、ワークロードの可観測性向上に寄与します。Apache、MySQL、Oracle Database、SAP HANA、NGINX などのサードパーティ製アプリケーションの監視にも対応しています。
標準で提供される指標が要件に合わない場合には、カスタム指標を作成することも可能です。
ロギング
Cloud Logging は、Google Cloud および AWS から取得したログデータやイベントに対して、保存、検索、分析、モニタリング、通知を行えるフルマネージドサービスです。大規模な環境にも対応しており、多数の VM やアプリケーションからログを取り込めます。
Cloud Logging は、ログストレージ、Logging Explorer と呼ばれる UI、そしてログをプログラムから操作するための API で構成されています。ログの検索やフィルタリング、ログベース指標の作成などが可能です。
ログのデフォルト保持期間は 30 日ですが、Cloud Storage、BigQuery、Pub/Sub にエクスポートすることで、用途に応じた保存や活用ができます。Cloud Storage にエクスポートすれば長期間保存が可能になり、BigQuery にエクスポートすれば SQL を用いた高速な分析や、Looker Studio による可視化が行えます。ネットワークトラフィックなどのログを分析し、容量予測やコスト最適化、フォレンジック調査に活用することも可能です。
Pub/Sub にエクスポートしたログは、アプリケーションや外部エンドポイントへリアルタイムにストリーミングできます。
エラーレポート
Error Reporting は、実行中のクラウドサービスで発生したエラーを集計・分析するサービスです。一元化されたインターフェースから、エラーの確認や並べ替え、フィルタリングを行えるほか、新しいエラーが検出された際の通知設定も可能です。
現在、App Engine(スタンダード/フレキシブル)、Apps Script、Compute Engine、Cloud Functions、Cloud Run、Google Kubernetes Engine、Amazon EC2 などで利用できます。スタックトレース解析は、Go、Java、.NET、Node.js、PHP、Python、Ruby に対応しています。
トレース
Cloud Trace は分散トレーシングシステムとして、アプリケーションのレイテンシデータを収集し、Google Cloud コンソール上で可視化します。リクエストがアプリケーション内をどのように伝播しているかを追跡し、ほぼリアルタイムでパフォーマンスを分析できます。
App Engine や HTTP(S) ロードバランサ、Cloud Trace API によって計測されたアプリケーションからトレースを取得し、パフォーマンス低下の要因となるレイテンシを特定します。これはアプリケーション全体の性能を把握し、改善していくうえで重要な情報となります。
プロファイリング
Cloud Profiler は、本番環境で実行されているアプリケーションの CPU やメモリ使用状況を継続的に分析します。統計的手法を用いることで、アプリケーションの動作にほとんど影響を与えずに計測を行える点が特徴です。
Java、Go、Node.js、Python に対応しており、Google Cloud 上だけでなく、他のクラウド環境やオンプレミス環境で実行されているアプリケーションの分析にも利用できます。
最後に
今回は、Google Cloud のオペレーションスイートについて整理しました。
次回は、Google Cloud の DevOps 自動化についてまとめていく予定です。
続けて読んでいただけると嬉しいです。
以前の投稿
【Google Cloud入門】クラウドサービスの特徴とGoogle Cloudの触り方
【Google Cloud入門】リソースマネージメント
【Google Cloud入門】アクセス管理の基本 - IAM
【Google Cloud入門】サービスアカウントとCloud Identity
【Google Cloud入門】Compute Engineの基礎
【Google Cloud入門】コンピューティングオプションとマネージドインスタンスグループ
【Google Cloud入門】GKE入門の前準備-コンテナの基礎
【Google Cloud入門】GKE入門の前準備-Kubernetesの基礎
【Google Cloud入門】GKE入門の前準備-Kubernetesの構成
【Google Cloud入門】Googleのコンテナ仮想環境ーGoogle Kubernetes Engine
【Google Cloud入門】GCEとGKE以外のコンピューティングサービス
【Google Cloud入門】Google Cloudネットワークの基礎
【Google Cloud入門】Google Cloudネットワークへの接続とVPCの共有
【Google Cloud入門】Google Cloudネットワークの負荷分散
【Google Cloud入門】オブジェクトストレージサービスーCloud Storage
【Google Cloud入門】Google Cloudの構造化データストレージサービス
【Google Cloud入門】Google Cloudのストレージサービスの選び方
【Google Cloud入門】ストレージに関連する様々なサポートサービス
【Google Cloud入門】Google Cloud のプロンプトエンジニアリング