From b276ad87c0582ba28159d2deef934011bd0caea3 Mon Sep 17 00:00:00 2001 From: Kyle Fazzari Date: Mon, 3 Feb 2025 14:49:58 -0800 Subject: [PATCH] manual upgrades: clarify that a drain is not required In Kubernetes, pods are independent of containerd/kubelet, and thus restarting k3s without draining first is a safe thing to do. This is not immediately clear to folks new to hosting their own cluster, so add a reassuring note. Signed-off-by: Kyle Fazzari --- docs/upgrades/manual.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/docs/upgrades/manual.md b/docs/upgrades/manual.md index e5ad75716..cd2c11559 100644 --- a/docs/upgrades/manual.md +++ b/docs/upgrades/manual.md @@ -42,6 +42,10 @@ Running the install script will: 2. Update the systemd unit or openrc init script to reflect the args passed to the install script 3. Restart the k3s service +:::note +This script does not drain the node before restarting k3s. This is generally safe in Kubernetes (pods continue running and networking stays configured the same way it was), but you might consider draining first if you have pods that can't tolerate a short API server outage. +::: + For example, to upgrade to the current stable release: ```sh @@ -69,4 +73,8 @@ To upgrade K3s manually, you can download the desired version of the K3s binary 1. Download the desired version of the K3s binary from [releases](https://github.com/k3s-io/k3s/releases) 2. Copy the downloaded binary to `/usr/local/bin/k3s` (or your desired location) -3. Restart the k3s or k3s-agent service or restart the k3s process (binary) \ No newline at end of file +3. Restart the k3s or k3s-agent service or restart the k3s process (binary) + +:::note +It is generally safe to do this in Kubernetes without needing to drain the node (pods continue running and networking stays configured the same way it was), but you might consider draining first if you have pods that can't tolerate a short API server outage. +::: \ No newline at end of file