Kubernetes Troubleshooting
RKE2
RKE2 startet nicht “cluster-cidr: [x.x.x.x/16 201:db8::/56] and node-ip: [y.y.y.y], must share the same IP version (IPv4, IPv6 or dual-stack)”
RKE2 hat die IPv6 der Node nicht erkannt. Durch eine zusätzliche
Konfigurationsdatei in /etc/rancher/rke2/config.yaml.d/ kann die bestehende
Konfiguration ergänzt werden:
# node-ip.yaml
{
"node-ip" : "y.y.y.y,201:db8:1::1/643"
}
Cluster meldet “Waiting fpr probes: kube-controller-manager, kube-scheduler”
Die Meldung deutet darauf hin, dass es ein Problem mit den Zertifikaten gibt
und dieses erneuter werden müssen.
Das folgende Script zeigt ob die Zertifikate aktuell sind:
$ curl --cacert /var/lib/rancher/rke2/server/tls/kube-controller-manager/kube-controller-manager.crt \
https://127.0.0.1:10257/healthz >/dev/null 2>& 1 \
&& echo "[OK] Kube Controller probe" \
|| echo "[FAIL] Kube Controller probe"
$ curl --cacert /var/lib/rancher/rke2/server/tls/kube-scheduler/kube-scheduler.crt \
https://127.0.0.1:10259/healthz >/dev/null 2>& 1 \
&& echo "[OK] Scheduler probe" \
|| echo "[FAIL] Scheduler probe"
Falls bei diesem Test ein Fehler ausgegeben wird, können mit dem folgenden
Script die Zertifikate gelöscht und erneuert werden:
export CRI_CONFIG_FILE = /var/lib/rancher/rke2/agent/etc/crictl.yaml
export CONTAINERD_ADDRESS = unix:///run/k3s/containerd/containerd.sock
export PATH = $PATH :/var/lib/rancher/rke2/bin
echo "Rotating kube-controller-manager certificate"
rm -f /var/lib/rancher/rke2/server/tls/kube-controller-manager/kube-controller-manager.{ crt,key}
crictl rm -f $( crictl ps -q --name kube-controller-manager)
echo "Rotating kube-scheduler certificate"
rm -f /var/lib/rancher/rke2/server/tls/kube-scheduler/kube-scheduler.{ crt,key}
crictl rm -f $( crictl ps -q --name kube-scheduler)