Helm 設定
このページでは、サブチャートベースの v2.x Helm チャートについて説明します。現在も v1.x のインラインテンプレート チャートを使用している場合は、Helm 設定 (v1.x) を参照してください。移行手順については、アップグレード ガイド を参照してください。
このガイドでは、ClickStack の Helm デプロイメントに関する設定オプションを説明します。基本的なインストールについては、Helm デプロイメントのメイン ガイド を参照してください。
Values の整理
v2.x チャートでは、hyperdx: ブロック配下で、Kubernetes リソースの種類ごとに 値 を整理しています。
すべての環境変数は、envFrom を介して HyperDX デプロイメント および OTel collector で共有される、固定名の 2 つのリソースを通して渡されます。
clickstack-configConfigMap —hyperdx.configから生成clickstack-secretSecret —hyperdx.secretsから生成
OTel 専用の ConfigMap は、もはや別個には存在しません。両方のワークロードが同じソースを参照します.
API キーの設定
ClickStack のデプロイが正常に完了したら、テレメトリデータの収集を有効にするため、API キーを設定します。
- 設定済みのイングレスまたはサービスエンドポイントから、HyperDX インスタンスにアクセスします
- HyperDX ダッシュボードにログインし、Team settings に移動して API キーを生成または取得します
- 次のいずれかの方法で、API キーを使用してデプロイメントを更新します:
方法1: valuesファイルを使用した helm upgrade による更新
APIキーを values.yaml に追加します。
次に、デプロイメントをアップグレードします。
方法 2: --set フラグを指定して helm upgrade で更新
変更を適用するためにポッドを再起動する
API キーを更新したら、新しい設定を反映するためにポッドを再起動します。
このチャートは、設定値を含む Kubernetes シークレット (clickstack-secret) を自動的に作成します。外部シークレットを使用するのでなければ、追加のシークレット設定は必要ありません。
シークレット管理
API キーやデータベース認証情報などの機密情報を扱うために、v2.x チャートでは、hyperdx.secrets の内容を反映した統合 clickstack-secret リソースが提供されます。
シークレットのデフォルト値
このチャートには、すべてのシークレットのデフォルト値が含まれています。values.yaml で上書きしてください。
外部シークレットの使用
本番環境で認証情報を Helm 値 とは分けて管理したい場合は、外部の Kubernetes シークレットを使用します。
次に、値 でそれを参照します:
イングレスの設定
ドメイン名経由でHyperDXインターフェースとAPIを公開するには、values.yamlでイングレスを有効にします。
イングレスの一般設定
hyperdx.frontendUrl はイングレスのホスト名と一致させ、プロトコル (例: https://hyperdx.yourdomain.com) を含めてください。これにより、生成されるリンク、Cookie、リダイレクトがすべて正しく機能します。
TLS (HTTPS) を有効にする
デプロイメントをHTTPSで保護するには:
1. 証明書とキーを使ってTLSシークレットを作成します:
2. イングレスの設定でTLSを有効にします。
イングレス設定例
参考までに、生成されるイングレスリソースは次のようになります。
よくあるイングレスの落とし穴
パスとリライトの設定:
- Next.js やその他の SPA では、必ず上記のとおり Regex パスとリライトアノテーションを使用してください
- リライトを設定せずに
path: /だけを使用しないでください。静的アセットを配信できなくなります
frontendUrl と ingress.host の不一致:
- これらが一致していないと、Cookie、リダイレクト、アセットの読み込みで問題が発生することがあります
TLS の設定ミス:
- TLS シークレットが有効で、イングレス内で正しく参照されていることを確認してください
- TLS が有効な状態で HTTP 経由でアプリにアクセスすると、ブラウザーが安全でないコンテンツをブロックすることがあります
イングレスコントローラーのバージョン:
- 一部の機能 (Regex パスやリライトなど) を使用するには、比較的新しいバージョンの nginx ingress controller が必要です
- 次のコマンドでバージョンを確認してください:
OTel collector イングレス
OTel collector のエンドポイント (トレース、メトリクス、ログ) をイングレス経由で公開する必要がある場合は、additionalIngresses 設定を使用します。これは、クラスター外からテレメトリデータを送信する場合や、collector にカスタムドメインを使用する場合に役立ちます。
- これにより、OTel collector のエンドポイント用に個別のイングレスリソースが作成されます
- 別のドメインを使用したり、TLS の個別設定を構成したり、カスタムアノテーションを適用したりできます
- Regex パスルールを使用すると、すべての OTLP シグナル (トレース、メトリクス、ログ) を 1 つのルールでルーティングできます
OTel collector を外部に公開する必要がない場合は、この設定を省略できます。ほとんどのユーザーには、一般的なイングレス設定で十分です。
また、additionalManifests を使用して、AWS ALB Ingress などの完全にカスタムのイングレスリソースを定義することもできます.
OTEL collector の設定
OTEL Collector は、公式の OpenTelemetry Collector Helm チャートの otel-collector: サブチャートとしてデプロイされます。values では、otel-collector: の配下で直接設定してください。
環境変数 (ClickHouse エンドポイント、OpAMP URL など) は、統一された clickstack-config ConfigMap と clickstack-secret Secret を介して共有されます。サブチャートの extraEnvsFrom は、あらかじめ両方を参照するよう設定されています。
利用可能なすべてのサブチャート値については、OpenTelemetry Collector Helm チャートを参照してください。
MongoDB の設定
MongoDB は、MongoDBCommunity カスタムリソースを通じて MCK オペレーターにより管理されます。CR の spec は mongodb.spec からそのまま反映されます。
MongoDB のパスワードは hyperdx.secrets.MONGODB_PASSWORD で設定します。使用可能なすべての CRD フィールドについては、MCK documentation を参照してください。
ClickHouse の設定
ClickHouse は、ClickHouseCluster および KeeperCluster のカスタムリソースを通じて ClickHouse Operator によって管理されます。両方の CR の仕様は、値 の内容がそのままレンダリングされます。
ClickHouse のユーザー認証情報は hyperdx.secrets から取得されます (v1.x の clickhouse.config.users ではありません) 。利用可能なすべての CRD フィールドについては、ClickHouse Operator の設定ガイドを参照してください。
イングレスのトラブルシューティング
イングレスリソースを確認します:
イングレスコントローラーのログを確認する:
アセット URL のテスト:
curl を使用して、静的アセットが HTML ではなく JS として配信されていることを確認します。
ブラウザーの DevTools:
- Network タブで、404 エラーや、JS ではなく HTML を返しているアセットがないか確認します
- コンソールで
Unexpected token <のようなエラーがないか確認します (JS に対して HTML が返されていることを示します)
パスの書き換えを確認する:
- イングレスでアセットのパスが削除されたり、誤って書き換えられたりしていないことを確認します
ブラウザーと CDN のキャッシュをクリアする:
- 変更後は、古いアセットが残るのを防ぐため、ブラウザーのキャッシュと CDN/プロキシのキャッシュをクリアします
値のカスタマイズ
設定は --set フラグでカスタマイズできます:
あるいは、カスタム values.yaml を作成します。デフォルト値を取得するには:
カスタム値を適用します:
次のステップ
- デプロイメントオプション - 外部システムと最小構成のデプロイメント
- Cloud デプロイメント - GKE、EKS、AKS の構成
- アップグレードガイド - v1.x から v2.x への移行
- 追加マニフェスト - カスタム Kubernetes オブジェクト
- Helm メインガイド - 基本インストール
- 設定 (v1.x) - v1.x の設定ガイド