kubectl v1.21+ installed and configured with cluster accessdemo namespace: kubectl create ns demoStopping a cluster suspends all pods while retaining PVCs and data. Useful for saving compute costs during idle periods.
kubectl apply -f - <<EOF
apiVersion: operations.kubeblocks.io/v1alpha1
kind: OpsRequest
metadata:
name: clickhouse-stop
namespace: demo
spec:
clusterName: clickhouse-cluster
type: Stop
EOF
Monitor progress:
kubectl get cluster clickhouse-cluster -n demo -w
NAME CLUSTER-DEFINITION TERMINATION-POLICY STATUS AGE
clickhouse-cluster clickhouse Delete Stopping 10s
clickhouse-cluster clickhouse Delete Stopped 45s
kubectl apply -f - <<EOF
apiVersion: operations.kubeblocks.io/v1alpha1
kind: OpsRequest
metadata:
name: clickhouse-start
namespace: demo
spec:
clusterName: clickhouse-cluster
type: Start
EOF
NAME CLUSTER-DEFINITION TERMINATION-POLICY STATUS AGE
clickhouse-cluster clickhouse Delete Running 2m
Restart the ClickHouse shard component:
kubectl apply -f - <<EOF
apiVersion: operations.kubeblocks.io/v1alpha1
kind: OpsRequest
metadata:
name: clickhouse-restart
namespace: demo
spec:
clusterName: clickhouse-cluster
type: Restart
restart:
- componentName: clickhouse
EOF
For clusters with Keeper, restart the Keeper component:
kubectl apply -f - <<EOF
apiVersion: operations.kubeblocks.io/v1alpha1
kind: OpsRequest
metadata:
name: clickhouse-restart-keeper
namespace: demo
spec:
clusterName: clickhouse-cluster
type: Restart
restart:
- componentName: ch-keeper
EOF
Monitor the OpsRequest:
kubectl get opsrequest -n demo -w
NAME TYPE CLUSTER STATUS PROGRESS AGE
clickhouse-restart Restart clickhouse-cluster Succeed 1/1 30s
kubectl delete opsrequest clickhouse-stop clickhouse-start clickhouse-restart clickhouse-restart-keeper -n demo --ignore-not-found