Install the ClickHouse Operator with kubectl
This guide covers installing the ClickHouse Operator using kubectl and manifest files.
Prerequisites
- Kubernetes cluster v1.33.0 or later
- kubectl v1.33.0 or later
- Cluster admin permissions
Install from Release Manifests
Note
Requires cert-manager to issue webhook certificates.
Install the operator and CRDs from the latest release:
This will:
- Create the
clickhouse-operator-systemnamespace - Install CustomResourceDefinitions (CRDs) for ClickHouseCluster and KeeperCluster
- Create necessary ServiceAccounts, Roles, and RoleBindings
- Deploy the operator controller manager
- Register webhooks for resource validation and defaulting
- Configure SSL certificates using cert-manager
- Enable metrics endpoint
Verify Installation
Check that the operator is running:
Expected output:
Verify the CRDs are installed:
Expected output:
Configure Custom Deployment Options
If you want to configure operator deployment options, follow the steps below.
1. Clone the Repository
2. Configure installation options
Edit config/default/kustomization.yaml to enable/disable features as needed.
- To disable webhooks, comment out the
[WEBHOOK]and[CERTMANAGER]sections. - To enable secure metrics endpoint, comment out
[METRICS]sections and uncomment[METRICS SECURE]and[CERTMANAGER]sections. - To enable ServiceMonitor for Prometheus Operator, uncomment the
[PROMETHEUS]section. - To enable operator network policies, uncomment the
[NETWORK POLICY]section.
3. Build and Deploy
Build the operator manifests and apply them: