KubeBlocks
BlogsKubeBlocks Cloud
⌘K
​
KubeBlocks for MongoDB

Cluster Management

Create and connect
Scale
Expand volume
Restart
Stop/Start
Switchover
Delete protection

Configuration

Configure cluster parameters
  1. Stop a cluster
  2. Start a cluster

Stop/Start a MongoDB Cluster

You can stop/start a cluster to save computing resources. When a cluster is stopped, the computing resources of this cluster are released, which means the pods of Kubernetes are released, but the storage resources are reserved. You can start this cluster again to restore it to the state it was in before it was stopped.

Stop a cluster

Steps:

  1. Configure the name of your cluster and run the command below to stop this cluster.

    Apply an OpsRequest to stop a cluster.

    kubectl apply -f - <<EOF
    apiVersion: apps.kubeblocks.io/v1alpha1
    kind: OpsRequest
    metadata:
      name: ops-stop
      namespace: demo
    spec:
      clusterName: mycluster
      type: Stop
    EOF
    

    Configure replicas as 0 to delete pods.

    apiVersion: apps.kubeblocks.io/v1alpha1
    kind: Cluster
    metadata:
      name: mycluster
      namespace: demo
    spec:
      clusterDefinitionRef: mongodb
      clusterVersionRef: mongodb-5.0
      terminationPolicy: Delete
      componentSpecs:
      - name: mongodb
        componentDefRef: mongodb
        disableExporter: true  
        replicas: 0
        volumeClaimTemplates:
        - name: data
          spec:
            storageClassName: standard
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 20Gi
    
    kbcli cluster stop mycluster -n demo
    
  2. Check the status of the cluster to see whether it is stopped.

    kubectl get cluster mycluster -n demo
    
    kbcli cluster list mycluster -n demo
    

Start a cluster

  1. Configure the name of your cluster and run the command below to start this cluster.

    Apply an OpsRequest to start a cluster.

    kubectl apply -f - <<EOF
    apiVersion: apps.kubeblocks.io/v1alpha1
    kind: OpsRequest
    metadata:
      name:ops-start
      namespace: demo
    spec:
      clusterName: mycluster
      type: Start
    EOF 
    

    Change replicas back to the original amount to start this cluster again.

    apiVersion: apps.kubeblocks.io/v1alpha1
    kind: Cluster
    metadata:
      name: mycluster
      namespace: demo
    spec:
      clusterDefinitionRef: mongodb
      clusterVersionRef: mongodb-5.0
      terminationPolicy: Delete
      componentSpecs:
      - name: mongodb
        componentDefRef: mongodb
        disableExporter: true  
        replicas: 1
        volumeClaimTemplates:
        - name: data
          spec:
            storageClassName: standard
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 20Gi
    
    kbcli cluster start mycluster -n demo
    
  2. Check the status of the cluster to see whether it is running again.

    kubectl get cluster mycluster -n demo
    
    kbcli cluster list mycluster -n demo
    

© 2025 ApeCloud PTE. Ltd.