本指南介绍如何使用 kubectl 和 清单 文件安装 ClickHouse Operator。
- Kubernetes 集群 v1.28.0 或更高版本
- kubectl v1.28.0 或更高版本
- 集群管理员权限
需要使用 cert-manager 签发 webhook 证书。
从最新发布版本中安装 operator 和 CRD:
kubectl apply -f https://github.com/ClickHouse/clickhouse-operator/releases/latest/download/clickhouse-operator.yaml
这将会:
- 创建
clickhouse-operator-system 命名空间
- 为 ClickHouseCluster 和 KeeperCluster 安装 CustomResourceDefinitions (CRD)
- 创建必要的 ServiceAccount、Role 和 RoleBinding
- 部署 operator 控制器管理器
- 注册用于资源验证和默认值填充的 webhooks
- 使用 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 1m
确认已安装 CRD:
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,按需启用或禁用相关功能。
- 如需禁用 webhook,请注释掉
[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 -k dist/install.yaml