LESSON 30分

ストーリー

田中VPoE
Step 1で現状を把握し、戦略を描いた。Step 2ではその戦略を具現化する「統合可観測性プラットフォーム」を設計する
あなた
ツールを一つに統一すればいいんですか?
田中VPoE
「ツールの統一」と「プラットフォームの設計」は別物だ。統一は手段に過ぎない。プラットフォームとは、データの生成から収集、保存、分析、可視化までのEnd-to-Endのアーキテクチャだ。ここを間違えると、数千万円の投資が無駄になる
あなた
アーキテクチャ設計が最初に来るんですね
田中VPoE
その通りだ。ツール選定はアーキテクチャの後だ。まず組織に必要な機能要件と非機能要件を定義し、それを満たすアーキテクチャを設計し、最後にそのアーキテクチャを実現するツールを選定する

プラットフォームアーキテクチャの全体像

レイヤー構成

┌─────────────────────────────────────────────────────┐
│                   消費レイヤー                        │
│  ダッシュボード │ アラート │ 分析 │ レポート           │
├─────────────────────────────────────────────────────┤
│                   分析レイヤー                        │
│  クエリエンジン │ 相関分析 │ 異常検知 │ ML基盤        │
├─────────────────────────────────────────────────────┤
│                  ストレージレイヤー                    │
│  メトリクスDB │ ログストア │ トレースDB │ 長期保管     │
├─────────────────────────────────────────────────────┤
│                   処理レイヤー                        │
│  フィルタリング │ サンプリング │ エンリッチメント      │
├─────────────────────────────────────────────────────┤
│                   収集レイヤー                        │
│  OTel Collector │ エージェント │ API受信              │
├─────────────────────────────────────────────────────┤
│                   計装レイヤー                        │
│  自動計装 │ 手動計装 │ SDK │ ライブラリ               │
├─────────────────────────────────────────────────────┤
│                   ソースレイヤー                      │
│  アプリケーション │ インフラ │ ネットワーク │ 外部SaaS │
└─────────────────────────────────────────────────────┘

計装(Instrumentation)戦略

OpenTelemetryを標準計装に

選定理由説明
ベンダー非依存特定バックエンドにロックインされない
業界標準CNCF Graduated Project、主要クラウドプロバイダーがサポート
3本柱統合メトリクス・ログ・トレースを単一フレームワークで計装
自動計装主要言語・フレームワークに対応した自動計装
エコシステム豊富なReceiver/Processor/Exporterの組み合わせ

計装の階層

階層内容カバレッジ目標
自動計装OTel SDKによるHTTPリクエスト、DB呼び出し等の自動トレース全サービス100%
フレームワーク計装ミドルウェア・フレームワークレベルの計装全サービス100%
ビジネス計装ビジネスロジック固有のメトリクス・スパン主要サービス80%
カスタム計装特殊な要件に対応するカスタム計装必要なサービスのみ
計装例(Go + OpenTelemetry):

// 自動計装: HTTPサーバーのミドルウェア
handler = otelhttp.NewHandler(handler, "api-service")

// ビジネス計装: カスタムスパン
ctx, span := tracer.Start(ctx, "process-payment")
defer span.End()
span.SetAttributes(
    attribute.String("payment.method", method),
    attribute.Float64("payment.amount", amount),
)

// カスタムメトリクス
paymentCounter.Add(ctx, 1, metric.WithAttributes(
    attribute.String("status", "success"),
))

アーキテクチャパターン

パターン1: 集中型(Centralized)

全サービス → OTel Collector → 単一バックエンド
                                (例: Datadog, Grafana Cloud)
メリットデメリット
運用が単純ベンダーロックイン
統合分析が容易スケーラビリティの上限
コスト予測が容易単一障害点のリスク

適用: 中小規模の組織(サービス数30以下)

パターン2: 分散型(Distributed)

全サービス → OTel Collector → ルーティング → メトリクス: Prometheus/Mimir
                                           → ログ: Loki
                                           → トレース: Tempo
                              → 統合可視化: Grafana
メリットデメリット
ベンダー非依存運用が複雑
コンポーネントごとの最適化統合に追加の設定が必要
スケーラビリティ運用チームのスキルが必要

適用: 大規模な組織、OSSを好む組織

パターン3: ハイブリッド型(Hybrid)

全サービス → OTel Collector → ルーティング → SaaS(メイン分析)
                                           → OSS(長期保管・コスト最適化)
                                           → 別SaaS(特定ユースケース)
メリットデメリット
柔軟性が高いアーキテクチャが複雑
コスト最適化しやすいデータの一貫性維持が必要
ベストオブブリード複数ツールの管理

適用: 大規模組織、コスト最適化が重要な組織


ツール選定の評価フレームワーク

評価軸重み評価項目
機能性25%3本柱統合、相関分析、異常検知、SLO管理
スケーラビリティ20%データ量、クエリ性能、マルチテナント
運用性20%マネージド度、アップグレード容易性、障害耐性
コスト15%ライセンス、ストレージ、人件費(運用工数)
エコシステム10%OTel対応、インテグレーション、API
セキュリティ10%データ暗号化、アクセス制御、コンプライアンス

「ツール選定で最もよくある失敗は”機能比較表”だけで決めることだ。TCO(総所有コスト)、運用工数、組織のスキルセット、将来の拡張性。これらを含めた総合評価が必要だ」 — 田中VPoE


まとめ

ポイント内容
レイヤー構成ソース→計装→収集→処理→ストレージ→分析→消費の7層
計装標準OpenTelemetryを全社標準として採用
アーキテクチャパターン集中型、分散型、ハイブリッド型から組織に適したものを選択
ツール選定機能性、スケーラビリティ、運用性、コスト、エコシステム、セキュリティの6軸で評価

チェックリスト

  • 7層のプラットフォームアーキテクチャを理解した
  • OpenTelemetryを標準計装とする理由を理解した
  • 3つのアーキテクチャパターンの特徴と適用基準を理解した
  • ツール選定の評価フレームワークを理解した

次のステップへ

次は「データ収集パイプライン」を学びます。テレメトリデータをどのように効率的に収集し、処理するかの設計手法を身につけましょう。


推定読了時間: 30分