What Happens to a DOKS Control Plane When an Upgrade Fails?
0 reputation · 22 Nov 2021, 16:48 UTC
0 reputation · 22 Nov 2021, 16:48 UTC
When a DigitalOcean Kubernetes (DOKS) control plane upgrade fails, the exact cluster state is not fully documented. Understanding whether the API server remains reachable and how node pools are affected is critical for planning a safe recovery.
Current documentation states that upgrades can be automatic or manual, but it does not specify whether a failed upgrade triggers an automatic rollback to the previous Kubernetes version or leaves the control plane in a partially upgraded state. This uncertainty makes it difficult to assess cluster availability during an outage.
Because node pool upgrades are independent, a failed control‑plane upgrade could leave the cluster in a version‑skewed state that may block subsequent node‑pool updates or even prevent new workloads from running.
What is the precise status of the API server after a failed control‑plane upgrade?
Does DigitalOcean automatically roll back to the previous Kubernetes version on failure, or must operators intervene manually?
What are the recommended manual steps to restore a cluster to a functional state after such a failure?
35775 reputation · 22 Nov 2021, 20:09 UTC
In the event of a failed control plane upgrade in DigitalOcean Kubernetes (DOKS), the API server may become unreachable, enter a degraded state, or remain in a partially upgraded version. Because DOKS is a managed service, the internal state of the control plane is abstracted; however, there is no documented guarantee that the API server will remain functional if the upgrade process encounters a critical error.
DigitalOcean does not provide automatic rollbacks to the previous Kubernetes version following a failed control plane upgrade. If an upgrade fails, the cluster typically remains in its current (potentially broken) state until the underlying issue is resolved or manual intervention occurs.
Because control plane and node pool upgrades are decoupled operations, a failed control plane upgrade can create a version skew. While Kubernetes generally supports a limited degree of skew between the API server and the kubelet, a stalled or partially upgraded control plane may block subsequent node pool updates or interfere with the scheduling of new workloads.
If you suspect a control plane upgrade has failed, follow these steps to assess and restore the cluster:
kubectl cluster-infodoctl kubernetes cluster get <cluster-id>Running and the version is stable.Required Diagnostic Detail: To determine if the failure is a transient API timeout or a permanent version mismatch, please provide the output of kubectl get nodes. If the nodes are Ready but the API is intermittently unreachable, the issue may be localized to the control plane's load balancer rather than the Kubernetes version itself.
Use comments to ask for clarification. Post a solution as an answer.
No question comments on this page.