Version: v26.09

Cluster Uninstallation Overview ​

This page is the single entry for openFuyao cluster uninstallation. It covers delete order, impact, where to run commands, and what each command removes. Detailed steps are in the linked guides below.

Danger:
Uninstall and delete are high-risk operations. Verify the target cluster, namespace, and resource names, and back up as needed. After a mistaken delete you may be unable to manage or uninstall other clusters from the management plane.

Uninstall in this order. Do not remove the bootstrap cluster while service/management clusters still depend on it:

text
Service cluster → Management cluster (if any) → Bootstrap cluster

Table 1 Recommended delete order

OrderTargetWhy
1Service clusterDeletion uses BKECluster (bc) and the management plane on the bootstrap or management cluster
2Management clusterFinish before bootstrap uninstall when a management cluster exists; handle bc on both the bootstrap cluster and the management cluster itself (after install, the listener switches from bootstrap to the management cluster)
3Bootstrap clusterLast step; the bootstrap management plane becomes unavailable afterward

Caution:
Do not delete the bootstrap cluster before service/management clusters are uninstalled. After bootstrap uninstall:

  • The openFuyao bootstrap management plane cannot be logged in;
  • You can no longer uninstall service/management clusters via the UI or bc on the bootstrap node;
  • Leftover nodes must be cleaned manually on each host.

Where to operate ​

Table 2 Where to operate and entry points

TargetWebCLI
Service clusterBootstrap-deployed: https://<bootstrap-IP>:30010; management-cluster-deployed: https://<management-cluster-IP>:31616 (Cluster Lifecycle Management)On the cluster that hosts the management plane that created the service cluster, edit/delete the target bc
Management clusterTwo Web steps: (1) delete on management-cluster UI https://<management-cluster-IP>:31616; (2) delete on bootstrap UI https://<bootstrap-IP>:30010First delete the local bc on the management cluster, then delete the corresponding bc on the bootstrap node
Bootstrap clusterNot supported via WebOnly on the bootstrap node with bke reset

What gets deleted ​

1. Service / management cluster (via BKECluster) ​

Edit the target bc on the bootstrap or management cluster; configuration details are as follows:

Table 3 BKECluster uninstall configuration

SettingMeaningEffect
bke.bocloud.com/ignore-target-cluster-deleteWhether to skip cleaning target nodesDefault "true": remove API/bc objects only. Set "false" to reset/clean target nodes
spec.reset: trueTrigger deleteTriggers the deletion reconcile flow for the bc
bke.bocloud.com/deep-restore-nodeDeep restoreDefault "true": also clean container runtimes
bke.bocloud.com/ignore-namespace-deleteKeep bc namespaceDefault "true"; delete namespace only when "false" and no other bc remains

For a full target uninstall, set ignore-target-cluster-delete to "false" and spec.reset: true. When only deleting API/bc objects without cleaning nodes, you can keep the default annotation as "true".

Note:
For a management cluster, the node agent bkeagent first listens on the bootstrap cluster and later switches to the management cluster itself. Uninstall must handle both sides (Web: delete on both UIs; CLI: delete bc on both clusters); see the dedicated guides.

During uninstall, the controller cleans addons, Kubernetes components, etcd, and related resources in reverse dependency order. If cleanup fails, the bc may enter a terminating-failed state; use kubectl describe bc to troubleshoot.

2. Bootstrap cluster (bke reset) ​

Table 4 bke reset command cleanup scope

CommandRemoves
bke resetLocal Kubernetes/k3s transition cluster containers and directories
bke reset --mountExtract/mount dirs; also container service, NTP, yum/repo related config when used alone
bke reset --allBroader cleanup of container services, NTP, runtime, network, leftovers (confirmation unless --confirm)
bke reset --all --mountCombination of --all and --mount, including BKE-managed system config / timezone restore as implemented

Note:

  • bke reset does not unbind leftover HA VIPs; if a VIP remains on a node, unbind it manually with ip addr del, see FAQ.
  • rm -rf /bke and rm -f /usr/local/bin/bke are optional, not required for a successful reset. They remove the install media directory and the local bke binary. Reset can still be considered successful without them, but you may need to re-download tools and media before the next install.

See Command Reference and bkeadm Configuration.

Success criteria ​

Frontend (Web) ​

  • Gone from the Cluster Lifecycle Management list.
  • For a management cluster: the management-cluster UI (:31616) can no longer be signed in or opened; the bootstrap UI (:30010) list shows no matching entry.

Backend (CLI) ​

  • Service cluster: kubectl get bc -A on the creating-side cluster no longer shows the BKECluster.
  • Management cluster: former management-cluster API / management plane is unavailable; on the bootstrap node, kubectl get bc -A no longer lists that management cluster.
  • Bootstrap: bke reset --all --mount finishes successfully; local k3s/Kubernetes processes and containers are gone; (after optional cleanup) /bke and the local bke binary are gone.

Table 5 Cluster uninstallation documentation navigation

ScenarioDoc
Delete service cluster (Web)Delete Service Cluster via Frontend (Web)
Delete service cluster (CLI)Delete Service Cluster via Backend (CLI)
Delete management cluster (Web)Delete Management Cluster via Frontend (Web)
Delete management cluster (CLI)Delete Management Cluster via Backend (CLI)
Delete bootstrap cluster (CLI)Delete Bootstrap Cluster via Backend (CLI)