Delete a MySQL Cluster
Termination policy
note
The termination policy determines how you delete a cluster.
terminationPolicy | Deleting Operation |
---|---|
DoNotTerminate | DoNotTerminate prevents deletion of the Cluster. This policy ensures that all resources remain intact. |
Delete | Delete deletes Cluster resources like Pods, Services, and Persistent Volume Claims (PVCs), leading to a thorough cleanup while removing all persistent data. |
WipeOut | WipeOut is an aggressive policy that deletes all Cluster resources, including volume snapshots and backups in external storage. This results in complete data removal and should be used cautiously, primarily in non-production environments to avoid irreversible data loss. |
To check the termination policy, execute the following command.
- kubectl
- kbcli
kubectl -n demo get cluster mycluster
>
NAME CLUSTER-DEFINITION VERSION TERMINATION-POLICY STATUS AGE
mycluster mysql mysql-8.0.30 Delete Running 67m
kbcli cluster list mycluster -n demo
>
NAME NAMESPACE CLUSTER-DEFINITION VERSION TERMINATION-POLICY STATUS CREATED-TIME
mycluster demo mysql mysql-8.0.33 Delete Running Jul 05,2024 18:46 UTC+0800
Step
Run the command below to delete a specified cluster.
- kubectl
- kbcli
kubectl delete cluster mycluster -n demo
If you want to delete a cluster and its all related resources, you can modify the termination policy to WipeOut
, then delete the cluster.
kubectl patch -n demo cluster mycluster -p '{"spec":{"terminationPolicy":"WipeOut"}}' --type="merge"
kubectl delete -n demo cluster mycluster
kbcli cluster delete mycluster -n demo