アップグレード
Kubernetes
Day 2 以降の Kubernetes 運用では、ワークステーション上の
helm CLI を使用します。組み込みの Helm クライアントを備えているのは init のみであるため、最初のアップグレード前に helm をインストールしてください。init で用意した values オーバーレイを再利用し、パブリックチャートリポジトリからリリースをアップグレードします。
v を除いたリリースタグです (チャート 0.9.0 はタグ v0.9.0 に対応します) 。公開済みのチャートはすでにパブリックコンテナーイメージを参照しているため、通常のインストールやアップグレードでイメージ値を指定する必要はありません。チャートのデフォルト値を確認するには、helm show values clicklink-connector --repo https://releases.clicklink.clickhouse.com/charts を実行してください。
直接指定したチャート参照 (oci://、URL、ローカルのアーカイブまたはディレクトリ) からインストールした場合、解決に使用できるリポジトリはありません。そのため、新しいバージョンでは helm upgrade clicklink-connector <same-chart-reference> を再実行してください。新しい CLI で init を再実行しても同じ状態に収束しますが、init には常にいずれかのエントリポイントが必要です。バンドルを保持している場合は --handoff を使用し、そうでない場合は、ドキュメントに記載されたクリーンアップ後に --force を指定して新しい登録トークンを使用します。通常は、上記の helm upgrade を使用してください (再実行と復旧を参照) 。
Linux VM
--version vX.Y.Z を追加します。
ヘルス
/livez エンドポイントを公開します。レスポンスボディの JSON status フィールドがヘルス状態を示すものであり、HTTP ステータスコードではありません。したがって、200 に頼らずボディを確認してください。Prometheus メトリクスは各コンポーネントのメトリクスポートで公開されます。両方のターゲットのデフォルトポートは次のとおりです。
サポートセッションが有効な場合、ゲートウェイは追加でポート 8443 でもリッスンします。VM では自己署名 TLS を使用し、Kubernetes では
kubectl port-forward 経由のポッドローカル HTTP、または TLS 終端イングレスを使用します。
VM では、いつでも完全なチェック一式を実行できます。
2 で終了します。
証明書
clicklink-mtls Secretに書き戻されます。VMでは、/etc/clicklink/tls/配下に書き込まれます。
現在の有効期限を確認するには:
認証情報のローテーション
API (HMAC) 認証情報
init コマンドに --enroll と --force を付けて再実行します。--force は保持されている設定を再ステージングするため、初回インストール時に指定したターゲット固有のフラグ (--target-namespace、--values、および --chart、--chart-repo、--chart-version のミラーフラグ) をすべて維持してください。デフォルトのインストールでは、以下のようになります。
SQL プロビジョニングでパスワードが必要な無人ローテーションでは、stdin から両方のシークレットを順に渡します。1 行目にトークン、2 行目にパスワードを指定します。トークンの読み取りでは、正確に 1 行が消費されます。
ClickHouse ユーザー
--apply-ch-grants を指定すると、再生成された権限がポッド内で再適用され、新しい認証情報が ClickHouse に反映されます (admin user にパスワードが設定されている場合は、--ch-admin-password-stdin を追加し、パイプで渡します) :
--ch-user-via cr とポッド選択フラグを追加してください。詳細については、CLI リファレンスを参照してください。
クライアント証明書
--force を指定して init を再実行します。
再実行と復旧
init は再実行しても収束するため、まずは同じコマンドを再実行してください。--force を指定しない場合、既存の /etc/clicklink/config.yaml (VM) または clicklink-values.yaml オーバーレイ (Kubernetes) は保持され、既存のクライアント秘密鍵が再利用されます。認証情報と CA チェーンはアトミックに上書きされます。部分的な失敗後に CLI が出力する復旧コマンドは、安全に繰り返し実行できます。
--force は保持されている設定またはオーバーレイを上書きし、クライアント秘密鍵を再生成して、有効期限が切れていないクライアント証明書を置き換えます。新しいクラスター UUID が発行されることはありません。--force を使用しても、コネクタ’のアイデンティティは保持されます。
ステージング後に証明書の署名に失敗した場合、または有効期限が切れていない証明書がすでに存在するために署名エンドポイントが 409 を返した場合でも、新しいトークンや 2 回目の発行は必要ありません。すでにディスク上にある署名済みマテリアルを使用して、インストールを完了してください。
/etc/clicklink を書き換え、サービスを管理します) 。Kubernetes では、CLI が --target helm、--target-namespace、--values を含む完全な形式を出力するため、出力されたコマンドをそのまま使用してください。
アンインストール
Linux VM
uninstall.sh はリリース tarball に含まれています。ホスト上に展開済みの tarball が残っていない場合は、手動でのダウンロードと検証の手順に従って取得・展開し、展開したディレクトリから実行します。
/etc/clicklink、/var/lib/clicklink、/var/log/clicklink、および clicklink ユーザーは保持されるため、後で再インストールした際に既存の設定が引き継がれます。これらも削除するには:
Kubernetes
init によって作成されたSecretはチャートによって管理されないため、アンインストール後も残ります。構成したすべてのインスタンスのインスタンスごとのアクセス用Secretを含め、明示的に削除してください。
ClickHouse ユーザー
--ch-user-suffix を設定している場合は、名前に付加してください) 。