このガイドでは、kubectl とマニフェストファイルを使用した ClickHouse Operator のインストールについて説明します。
前提条件
- Kubernetes クラスター v1.28.0 以降
- kubectl v1.28.0 以降
- クラスター管理者権限
リリースマニフェストを使ったインストール
最新リリースから operator と CRD をインストールします。
kubectl apply --server-side --force-conflicts -f https://github.com/ClickHouse/clickhouse-operator/releases/latest/download/clickhouse-operator.yamlサーバー側の apply が必要です。これは、結合された CRD がクライアント側 apply のサイズ制限を超えるためです。クライアント側 apply のみをサポートする環境では、description を削除した CRD バリアントを使用してください。
kubectl apply -f https://github.com/ClickHouse/clickhouse-operator/releases/latest/download/clickhouse-operator-stripped-crds.yamlこれにより、以下が実行されます。
clickhouse-operator-systemネームスペースを作成- ClickHouseCluster と KeeperCluster 用の CustomResourceDefinitions (CRD) をインストール
- 必要な ServiceAccount、ロール、RoleBinding を作成
- operator の controller manager をデプロイ
- リソースの検証とデフォルト設定のための webhook を登録
- cert-manager を使用して SSL 証明書を設定
- メトリクスエンドポイントを有効化
インストールを確認する
operator が稼働していることを確認します。
kubectl get pods -n clickhouse-operator-system想定される出力:
NAME READY STATUS RESTARTS AGE
clickhouse-operator-controller-manager-xxxxxxxxxx 1/1 Running 0 1mCRD がインストールされていることを確認します。
kubectl get crd | grep clickhouse.com出力例:
clickhouseclusters.clickhouse.com 2025-01-06T00:00:00Z
keeperclusters.clickhouse.com 2025-01-06T00:00:00Zカスタムのデプロイメントオプションを設定する
operator のデプロイメントオプションを設定するには、以下の手順に従ってください。
リポジトリをクローンする
git clone https://github.com/ClickHouse/clickhouse-operator.git
cd clickhouse-operatorインストールオプションを設定する
必要に応じて機能を有効または無効にするため、config/default/kustomization.yaml を編集します。
- webhooks を無効にするには、
[WEBHOOK]セクションと[CERTMANAGER]セクションをコメントアウトします。 - セキュアなメトリクスエンドポイントを有効にするには、
[METRICS]セクションをコメントアウトし、[METRICS SECURE]セクションと[CERTMANAGER]セクションのコメントを解除します。 - Prometheus Operator の ServiceMonitor を有効にするには、
[PROMETHEUS]セクションのコメントを解除します。 - operator のネットワークポリシーを有効にするには、
[NETWORK POLICY]セクションのコメントを解除します。
ビルドしてデプロイする
operator のマニフェストをビルドして適用します。
make build-installer VERSION=<required operator version> [IMG=<custom registry path>]
kubectl apply --server-side --force-conflicts -f dist/install.yaml