跳转到主内容
跳转到主内容

使用 kubectl 安装 ClickHouse Operator

本指南介绍如何使用 kubectl 和清单文件安装 ClickHouse Operator。

前置条件

  • Kubernetes 集群 v1.33.0 或更高版本
  • kubectl v1.33.0 或更高版本
  • 集群管理员权限

从发布清单安装

注意

需要 cert-manager 来签发 webhook 证书。

从最新发布版本中安装 Operator 和 CRD:

kubectl apply -f https://github.com/ClickHouse/clickhouse-operator/releases/download/latest/clickhouse-operator.yaml

这将:

  1. 创建 clickhouse-operator-system 命名空间
  2. 为 ClickHouseCluster 和 KeeperCluster 安装自定义资源定义(CRD)
  3. 创建必要的 ServiceAccounts、Roles 和 RoleBindings
  4. 部署 operator controller manager
  5. 为资源校验和默认值设置注册 webhooks
  6. 使用 cert-manager 配置 SSL 证书
  7. 启用 metrics 端点

验证安装

检查 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 的部署选项,请按以下步骤进行。

1. 克隆仓库

git clone https://github.com/ClickHouse/clickhouse-operator.git
cd clickhouse-operator

2. 配置安装选项

编辑 config/default/kustomization.yaml,根据需要启用或禁用各功能。

  • 若要禁用 webhooks,请注释掉 [WEBHOOK][CERTMANAGER] 部分。
  • 若要启用安全的 metrics 端点,请注释掉 [METRICS] 部分并取消注释 [METRICS SECURE][CERTMANAGER] 部分。
  • 若要为 Prometheus Operator 启用 ServiceMonitor,请取消注释 [PROMETHEUS] 部分。
  • 若要启用 Operator 网络策略,请取消注释 [NETWORK POLICY] 部分。

3. 构建并部署

构建 Operator 清单并将其应用:

make build-installer VERSION=<required operator version> [IMG=<custom registry path>]
kubectl apply -k dist/install.yaml