2. Kubernetes installieren

Sobald die Infrastruktur bereit ist, können Sie mit der Einrichtung eines Kubernetes-Clusters fortfahren, um Rancher zu installieren.

Die Schritte zur Einrichtung von RKE2 oder K3s sind unten aufgeführt.

Zur Vereinfachung exportieren Sie die IP-Adresse und den Port Ihres Proxy in eine Umgebungsvariable und richten Sie die HTTP_PROXY Variablen für Ihre aktuelle Shell auf jedem Knoten ein:

Die NO_PROXY Umgebungsvariable ist nicht standardisiert, und das akzeptierte Format des Wertes kann zwischen Anwendungen variieren. Beim Konfigurieren der NO_PROXY Variablen für Rancher muss der Wert dem Format entsprechen, das von Golang erwartet wird.

Konkret sollte der Wert eine durch Kommas getrennte Zeichenfolge sein, die nur IP-Adressen, CIDR-Notation, Domainnamen oder spezielle DNS-Labels (z. B. *) enthält. Für eine vollständige Beschreibung des erwarteten Wertformats siehe die Upstream Golang-Dokumentation.

export proxy_host="10.0.0.5:8888"
export HTTP_PROXY=http://${proxy_host}
export HTTPS_PROXY=http://${proxy_host}
export NO_PROXY=127.0.0.0/8,10.0.0.0/8,cattle-system.svc,172.16.0.0/12,192.168.0.0/16
  • K3s

  • RKE2

Zuerst konfigurieren Sie die HTTP-Proxy-Einstellungen im K3s systemd-Dienst, damit der containerd von K3s Images über den Proxy abrufen kann:

cat <<'EOF' | sudo tee /etc/default/k3s > /dev/null
HTTP_PROXY=http://${proxy_host}
HTTPS_PROXY=http://${proxy_host}
NO_PROXY=127.0.0.0/8,10.0.0.0/8,cattle-system.svc,172.16.0.0/12,192.168.0.0/16,.svc,.cluster.local
EOF

Rancher muss auf einer unterstützten Kubernetes-Version installiert werden. Um herauszufinden, welche Kubernetes-Versionen für Ihre Rancher-Version unterstützt werden, beachten Sie die Rancher Support Matrix.

Um die K3s (Kubernetes)-Version anzugeben, verwenden Sie die Umgebungsvariable INSTALL_K3S_VERSION (z. B. INSTALL_K3S_VERSION="v1.24.10+k3s1"), wenn Sie das K3s-Installationsskript ausführen.

Erstellen Sie auf dem ersten Knoten einen neuen Cluster:

curl -sfL https://get.k3s.io | INSTALL_K3S_VERSION=<VERSION> K3S_TOKEN=<TOKEN> sh -s - server --cluster-init

Und fügen Sie dann die anderen Knoten hinzu:

curl -sfL https://get.k3s.io | INSTALL_K3S_VERSION=<VERSION> K3S_TOKEN=<TOKEN> sh -s - server --server https://<SERVER>:6443

Dabei ist <SERVER> die IP oder der gültige DNS des Servers und <TOKEN> das Node-Token vom Server, das Sie unter /var/lib/rancher/k3s/server/node-token finden.

Für weitere Informationen zur Installation von K3s siehe die K3s-Installationsdokumentation.

Um einen Blick auf Ihren Cluster zu werfen, führen Sie aus:

kubectl cluster-info
kubectl get pods --all-namespaces

Führen Sie auf jedem Knoten das RKE2-Installationsskript aus. Stellen Sie sicher, dass die RKE2-Version, die Sie installieren, von Rancher unterstützt wird.

curl -sfL https://get.rke2.io | INSTALL_RKE2_CHANNEL=v1.xx sh -

Dann müssen Sie die HTTP-Proxy-Einstellungen im RKE2 systemd-Dienst konfigurieren, damit der containerd von RKE2 Images über den Proxy abrufen kann:

cat <<'EOF' | sudo tee /etc/default/rke2-server > /dev/null
HTTP_PROXY=http://${proxy_host}
HTTPS_PROXY=http://${proxy_host}
NO_PROXY=127.0.0.0/8,10.0.0.0/8,cattle-system.svc,172.16.0.0/12,192.168.0.0/16,.svc,.cluster.local
EOF

Erstellen Sie als Nächstes die RKE2-Konfigurationsdatei auf jedem Knoten gemäß der RKE2-Dokumentation zur hohen Verfügbarkeit.

Starten und aktivieren Sie danach den rke2-server Dienst:

systemctl enable rke2-server.service
systemctl start rke2-server.service

Für weitere Informationen zur Installation von RKE2 siehe die RKE2-Dokumentation.

Um einen Blick auf Ihren Cluster zu werfen, führen Sie aus:

export KUBECONFIG=/etc/rancher/rke2/rke2.yaml
alias kubectl=/var/lib/rancher/rke2/bin/kubectl
kubectl cluster-info
kubectl get pods --all-namespaces

Probleme oder Fehler?

Siehe die Fehlerbehebung-Seite.