マルチクラウド監視の設計方法

2026.04.28
マルチクラウド監視の設計方法

マルチクラウド監視の設計方法

SLOに紐づく監視対象と責務分解

最初に決めるのは「何を壊さないか」です。クラウドやツールの選定より、顧客価値を守るSLO(例:チェックアウトAPIの成功率99.9%、p95レイテンシ800ms以下)を先に置き、そこから必要なSLI(リクエスト成功率、遅延、エラーレート)を逆算します。SLOに結びつかない監視は後回しで構いません。

次に責務分解です。

  • アプリ責務:ビジネス指標に近いSLI(成功率、遅延、重要キューの滞留)
  • プラットフォーム責務:ノード/コンテナ/DBの資源(CPU、メモリ、I/O、コネクション)
  • クラウド責務:各クラウドのSLAとサービス健全性(リージョン障害、クォータ、レート制限)

アプリとプラットフォームの境界を明確にすると、マルチクラウドでも「誰が・何に」対応すべきかがぶれません。運用RunbookはChatGPTやClaudeを使ってドラフトを作ると、用語や観点のモレが減り、合意形成が速くなります。

収集設計の標準化:メトリクス・ログ・トレース

タグと名前付けの共通化

可観測性の9割はタグ(ラベル)設計で決まります。最低限そろえるべきは以下です。

  • env(prod/stg/dev)/region(ap-northeast-1等)/cloud(aws|gcp|azure)
  • service(決済API等)/owner(担当チーム)/version(デプロイ版)

メトリクス名は「領域.対象.指標」(例:app.checkout.request_success_ratio)に統一し、アラートも同名で追跡可能にします。

クラウド別の取り込み方針

各クラウド標準(CloudWatch、Azure Monitor、Cloud Monitoring)からは「必要最小限の指標のみ」取り込み、アプリ指標はOpenTelemetryを使って言語非依存に収集します。取り込み間隔は5〜30秒でSLOの粒度に合わせ、集約先はベンダーに依存しない時系列DB(Prometheus互換など)に統一するとクエリ資産が使い回せます。

ログとトレースの実用線

全ログ集中はコスト爆発の温床です。以下の二段構えが現実的です。

  1. 短期(7〜14日):全文検索できるホット層(障害調査用)
  2. 中長期(30〜180日):構造化サマリとアーカイブ(監査・傾向分析)

トレースは「SLO対象のエンドポイント」と「外部依存(決済・配送等)」に限定し、サンプリング率を動的制御します。遅延がSLO閾値を超えたリクエストは必ず保存する仕組みが有効です。

アラートとダッシュボード:運用できる設計に落とす

アラートはSLO中心、インフラは抑制

ページャ通知はSLO違反の前兆(いわゆるバーンレート)を主役にします。例:burn_rate(2h)>14 かつ burn_rate(6h)>6 を満たしたら緊急、など複数窓の条件で誤検知を減らします。インフラ指標はダッシュボードと週次レポートに回し、連鎖爆発を避けます。

エスカレーションと復旧手順

オンコールは「一次(サービス担当)→二次(プラットフォーム)→三次(クラウド窓口)」の順で、SLO種別で自動的に宛先を切り替えます。RunbookはCopilotやGeminiでコマンド例・クエリ例を自動補完し、実地検証したら固定化。Slack通知は「何が悪いか」「暫定アクション」「計測リンク」を必須にして、クリックゼロで意思決定できる形にします。

コスト管理と保持期間

  • 保持は用途逆算(障害=短期深掘り、傾向=長期サマリ)
  • 高頻度メトリクスはローリングダウンサンプル(1s→30s→5m)
  • 「アラートに使わないデータ」は毎月棚卸しで削除

この3点だけで監視コストは概ね3〜5割削減できます。

身近な企業活用例:D2CアパレルECの失敗と改善

キャンペーン拡大でAWSとGCPを併用しましたが、監視はクラウド別ダッシュボードで分断。セール中にGCP側の在庫API遅延が発生し、SlackがCloudWatchとGCPから二重三重に鳴り続け、誰も「顧客影響の全体像」を掴めず、復旧が遅れました。原因はタグ不統一(service名がバラバラ)、SLO不在、アラートが資源系ばかり、の三点でした。

改善では次を実施しました。

  • 「checkout成功率99.9%、p95 800ms以下」をSLOに採択し、SLIをOpenTelemetryで統一収集
  • env/region/cloud/service/owner/versionの共通タグを必須化
  • メトリクスはPrometheus互換に集約、クラウド固有は最小限にプロキシ
  • バーンレートアラートを導入し、資源系は週次レビューへ格下げ
  • Runbookのたたき台をChatGPTで作成、担当者が現場実測で更新

結果、セール時の誤検知が70%減、MTTDが8分→2分、監視コストは月額36%削減。何より「checkoutの健康度」を軸に会話できるようになり、マルチクラウドの複雑さが業務に与える影響を最小化できました。

まとめ:設計の要は「共通言語」と「使い切る運用」

マルチクラウド監視は、SLO起点の共通言語、タグと名前付けの標準化、SLO中心のアラート、実運用に耐えるRunbookの4点で固まります。ツールは手段ですが、生成AI(ChatGPT、Claude、Copilot、Gemini)を下書きや知識整備に活用すると立ち上がりが速く、運用のばらつきも抑えられます。サーバ監視運用事業に携わる立場としても、ここまで設計を具体化できれば、クラウドが増えても「見える・わかる・動ける」体制を地に足のついた形で維持できます。