Deleting Classic clusters
Classic infrastructure
After your workloads are running on VPC and traffic has been fully redirected, delete the Classic cluster to remove unused infrastructure.
Before you begin
- All workloads are validated and running on the VPC cluster, DNS has been cut over, and the stabilization period has passed with no traffic or errors on the Classic cluster. See Cut over and validate.
- DNS TTLs have been restored to their original values.
- You have confirmed that no other Classic clusters in your account share VLANs with this cluster that you want to retain.
- Access your Red Hat OpenShift cluster.
Step 1: Verify no active traffic on the Classic cluster
Before deleting, confirm the Classic cluster is no longer receiving traffic.
From the console
- From the IBM Cloud console, click your Classic cluster.
- Click Kubernetes dashboard and navigate to Workloads > Pods.
- Confirm that no new pods are being created and that workload activity has stopped.
From the CLI
-
Check for active pod restarts or events on the Classic cluster that would indicate ongoing traffic.
oc get pods --all-namespaces --sort-by='.status.containerStatuses[0].restartCount' -
Confirm no new events are appearing on the Classic cluster.
oc get events --all-namespaces --sort-by='.lastTimestamp' | tail -10
Step 2: Remove any remaining Classic-specific resources
Before deleting the cluster, clean up any resources that were not migrated and are no longer needed.
- Cancel any Classic bare metal servers or virtual server instances that were attached to the cluster outside of the managed worker nodes.
- Review and delete any Classic load balancers that were created by Kubernetes
LoadBalancerservices, if they were not automatically cleaned up. - If your cluster used Classic File Storage or Classic Block Storage PVCs that you do not want to retain, delete those PVCs before cluster deletion or they will become orphaned volumes.
Classic PVCs that are not deleted before cluster removal persist as orphaned volumes and continue to incur charges. Delete them explicitly if you do not plan to reuse them.
Step 3: Delete the Classic cluster
From the console
Deleting the cluster removes all associated worker nodes, VLANs (if not shared with other clusters), and load balancers. This action cannot be undone.
- From the IBM Cloud console, click your Classic cluster.
- Click Actions > Delete.
- Select Delete all attached storage only if you want to permanently delete Classic persistent volumes along with the cluster.
- Confirm by entering the cluster name and click Delete.
From the CLI
Deleting the cluster removes the associated Classic infrastructure: worker nodes, VLANs (if not shared), and load balancers. Omit --force-delete-storage if you want to retain Classic storage volumes for manual cleanup.
-
Delete the Classic cluster.
ibmcloud oc cluster rm --cluster CLASSIC_CLUSTER_NAME --force-delete-storageExample output:
Remove cluster? [kube-a1b2c3d4] (Y/n)> Y Removing cluster kube-a1b2c3d4... OK
From the API
Deleting the cluster removes all associated Classic infrastructure. Omit deleteResources=true if you want to retain Classic storage volumes.
-
Delete the Classic cluster.
curl -X DELETE "https://REGION.containers.cloud.ibm.com/v1/clusters/CLASSIC_CLUSTER_ID?deleteResources=true" \ -H "Authorization: Bearer $(ibmcloud iam oauth-tokens --output json | jq -r '.iam_token')"A
204 No Contentresponse confirms the deletion request was accepted. The cluster is removed asynchronously. -
Confirm the cluster no longer appears in the cluster list.
curl -X GET "https://REGION.containers.cloud.ibm.com/v1/clusters" \ -H "Authorization: Bearer $(ibmcloud iam oauth-tokens --output json | jq -r '.iam_token')" \ | jq '[.[] | select(.id == "CLASSIC_CLUSTER_ID")]'An empty array
[]confirms the cluster has been deleted.
Next steps
Your migration is complete. To continue managing your new VPC cluster: