要点このガイドでは、Odigos のテレメトリーを ClickStack にエクスポートする方法を説明します。ここでは、次の内容を学びます。
- Helm を使用して Kubernetes に Odigos をデプロイする
- Odigos UI でソースを追加する
- ClickStack を宛先とする OTLP HTTP 宛先を追加する
- ClickStack でログ、メトリクス、トレースを確認する
Odigosとは?
- コードレベルのコンテキスト — 関数やランタイムの挙動にひも付く属性
- HTTP トラフィック — サービス間のリクエストとレスポンス
- メッセージングシステム — Kafka や同様のブローカーからのペイロードやメッセージ
- 詳細なエラー情報 — 障害発生時のスタックトレース
- カスタム インストルメンテーション — 自動インストルメンテーションでカバーできない範囲を、コード変更や再起動なしで拡張
なぜ Odigos + ClickStack なのか
前提条件
- Kubernetes クラスターからアクセス可能な ClickStack がインストールされていること。Open Source ClickStack を使い始める または Managed ClickStack の Getting Started を参照してください。
- ClickStack の OTLP HTTP エンドポイント (ポート
4318) と、Odigos がAuthorizationヘッダーで渡す認証値。オープンソース版 ClickStack の場合、これは HyperDX UI の Team Settings → API Keys にある APIインジェストキー です。Managed ClickStack の場合、これは独自のスタンドアロン ClickStack collector の起動時に設定するOTLP_AUTH_TOKENです。 - Kubernetes クラスター (eBPF インストルメンテーションには、カーネル 4.18 以降の Linux ノードが必要)
odigos-systemネームスペースにインストールするための Helm、kubectl、およびクラスター認証情報- Odigos Enterprise オンプレミス トークン — アクセスするには Odigos チーム にお問い合わせください
ClickStackとOdigosを統合する
HelmでOdigosをデプロイする
Odigos Enterprise にはオンプレミス用のライセンス トークンが必要です。シェルでこれをエクスポートします:odigos-pro という名前の Kubernetes Secret にトークンを保存しておくこともできます。詳しくは、Odigos Enterprise installation を参照してください。Odigos の Helm リポジトリを追加し、チャートを odigos-system にインストールします。--set フラグまたはカスタム values ファイル (-f) を使用して、追加の設定上書きを指定できます。チャートのデフォルト値は、GitHub 上の helm/odigos/values.yaml にあります。Odigos のポッドが実行中であることを確認してください。Odigos UI でソースを追加する
- Odigos UI のサービスをポートフォワードします:
- ブラウザで http://localhost:3000 を開きます。
- SOURCES に移動し、インストルメントするネームスペースまたはワークロードを選択します。
- すべてのワークロードをインストルメンテーション対象としてマークしたら、画面下部の done をクリックします。
- SOURCES 列で、ワークロードが正常にインストルメントされていることを確認します。
Odigos UI で ClickStack を宛先として追加する
ClickStack にテレメトリーを送信するには、Odigos で OTLP HTTP 宛先を追加します。具体的な設定内容は、ClickStack のデプロイ方法によって異なります。Open Source ClickStack では OpenTelemetry collector が同梱されており、インジェスト key は HyperDX UI で自動的に生成されます。Managed ClickStack では、独自の standalone ClickStack collector を実行し、コンテナーの起動時に認証トークンを自分で設定します。- Open Source ClickStack
- Managed ClickStack
Open Source ClickStack では、たとえば all-in-one イメージを使用する場合、ゲートウェイ OpenTelemetry collector が含まれており、インジェスト API key は HyperDX によって自動的に生成されます。
- Odigos UI で Add Destination をクリックし、OTLP HTTP を選択します。
- OTLP HTTP Endpoint に ClickStack collector を設定します (例:
http://clickstack.example.com:4318) 。エンドポイントの詳細については、OpenTelemetry でのインジェスト を参照してください。 - ClickStack UI の Team Settings → API Keys で API Ingestion Key をコピーします。
- Headers に以下を追加します。
- Key:
Authorization - Value: API Ingestion Key
- Key:
- Logs、Metrics、Traces を有効にします。
- 宛先を保存します。
ClickStack でテレメトリーを確認する
- ClickStack UI (HyperDX) を開きます。
- Open Source ClickStack: たとえば、all-in-one イメージでは
http://<host>:8080です。 - Managed ClickStack: ClickHouse Cloud console でサービスを開き、Launch ClickStack をクリックします。詳しくは ClickStack UI に移動する を参照してください。
- Open Source ClickStack: たとえば、all-in-one イメージでは
- Logs、Metrics、Traces を確認し、インストルメントしたサービスからのデータがあることを確認します。
odigos.versionでトレースを絞り込み、エンドツーエンドでエクスポートされていることを検証します。
kubectl logs deploy/odigos-gateway -n odigos-system詳細設定
HyperDX ログノーマライザー
HYPERDX_LOG_NORMALIZER: true) を有効にしてください。これにより、JSON 形式のログ本文が解析され、属性が正規化されるため、ClickStack UI でより適切にクエリできるようになります。
ネイティブ ClickHouse 宛先
- 本番環境のスキーマ:
CLICKHOUSE_CREATE_SCHEMEをfalseに設定し、独自の DDL を適用してください。 - TLS / 認証:
CLICKHOUSE_TLS_ENABLEDとCLICKHOUSE_USERNAMEを使用し、パスワードは Kubernetes Secret で指定します。
Kubernetes のマニフェストで宛先を設定する
Odigos VM エージェント
Odigos Central
次のステップ
- ClickStack で、インストルメント済みの各サービスのトレースを確認する
- Odigos がエクスポートしたメトリクスのダッシュボードを作成する
- 保持期間やクエリパターンに合わせて ClickHouse のスキーマと有効期限 (TTL) を調整する