停止/启动集群
您可以停止/启动集群以释放计算资源。停止集群后,其计算资源将被释放,也就是说 Kubernetes 的 Pod 将被释放,但其存储资源仍将被保留。您也可以重新启动该集群,使其恢复到停止集群前的状态。
停止集群
-
配置集群名称,并执行以下命令来停止该集群。
- OpsRequest
- 编辑集群 YAML 文件
- kbcli
kubectl apply -f - <<EOF
apiVersion: apps.kubeblocks.io/v1alpha1
kind: OpsRequest
metadata:
name: ops-stop
namespace: demo
spec:
clusterName: mycluster
type: Stop
EOFkubectl edit cluster mycluster -n demo
将 replicas 设为 0,删除 Pods。
...
spec:
affinity:
podAntiAffinity: Preferred
topologyKeys:
- kubernetes.io/hostname
clusterDefinitionDef: redis
componentSpecs:
- componentDef: redis-7
enabledLogs:
- running
disableExporter: true
name: redis
replicas: 0 # 修改该参数值
...
- componentDef: redis-sentinel-7
name: redis-sentinel
replicas: 0 # 修改该参数值
...kbcli cluster stop mycluster -n demo
-
查看集群状态,确认集群是否已停止。
- kubectl
- kbcli
kubectl get cluster mycluster -n demo
kbcli cluster list -n demo
启动集群
-
配置集群名称,并执行以下命令来启动该集群。
- OpsRequest
- 编辑集群 YAML 文件
- kbcli
kubectl apply -f - <<EOF
apiVersion: apps.kubeblocks.io/v1alpha1
kind: OpsRequest
metadata:
name: ops-start
namespace: demo
spec:
clusterName: mycluster
type: Start
EOFkubectl edit cluster mycluster -n demo
将 replicas 数值调整为停止集群前的数量,再次启动集群。
...
spec:
affinity:
podAntiAffinity: Preferred
topologyKeys:
- kubernetes.io/hostname
clusterDefinitionDef: redis
componentSpecs:
- componentDef: redis-7
enabledLogs:
- running
disableExporter: true
name: redis
replicas: 3 # 修改该参数值
...
- componentDef: redis-sentinel-7
name: redis-sentinel
replicas: 3 # 修改该参数值
...kbcli cluster start mycluster -n demo
-
查看集群状态,确认集群是否已停止。
- kubectl
- kbcli
kubectl get cluster mycluster -n demo
kbcli cluster list -n demo