Dieses Dokument wurde mithilfe automatisierter maschineller Übersetzungstechnologie übersetzt. Wir bemühen uns um korrekte Übersetzungen, übernehmen jedoch keine Gewähr für die Vollständigkeit, Richtigkeit oder Zuverlässigkeit der übersetzten Inhalte. Im Falle von Abweichungen ist die englische Originalversion maßgebend und stellt den verbindlichen Text dar.

Fehlerbehebung bei nginx-proxy

Der nginx-proxy Container ist eine RKE1-spezifische Komponente. Wenn Sie RKE2 oder K3s verwenden, wird dieser Container nicht bereitgestellt, da der Lastausgleich zu den API-Servern intern von einem clientseitigen Lastausgleich innerhalb des Agentenprozesses selbst verwaltet wird.

Bitte beachten Sie außerdem, dass RKE1 sein EOL erreicht hat. Daher wird die Information auf dieser Seite als ausgelaufen betrachtet.

Der nginx-proxy Container wird auf jedem Knoten bereitgestellt, der nicht die controlplane Rolle hat. Er bietet Zugriff auf alle Knoten mit der controlplane Rolle, indem er die NGINX-Konfiguration dynamisch basierend auf den verfügbaren Knoten mit der controlplane Rolle generiert.

Überprüfen Sie, ob der Container läuft

Der Container heißt nginx-proxy und sollte den Status Up haben. Die Dauer, die nach Up angezeigt wird, ist die Zeit, die der Container bereits läuft.

docker ps -a -f=name=nginx-proxy

Beispielausgabe:

docker ps -a -f=name=nginx-proxy
CONTAINER ID        IMAGE                       COMMAND                  CREATED             STATUS              PORTS               NAMES
c3e933687c0e        rancher/rke-tools:v0.1.15   "nginx-proxy CP_HO..."   3 hours ago         Up 3 hours                              nginx-proxy

Überprüfen Sie die generierte NGINX-Konfiguration

Die generierte Konfiguration sollte die IP-Adressen der Knoten mit der controlplane Rolle enthalten. Die Konfiguration kann mit dem folgenden Befehl überprüft werden:

docker exec nginx-proxy cat /etc/nginx/nginx.conf

Beispielausgabe:

error_log stderr notice;

worker_processes auto;
events {
  multi_accept on;
  use epoll;
  worker_connections 1024;
}

stream {
        upstream kube_apiserver {

            server ip_of_controlplane_node1:6443;

            server ip_of_controlplane_node2:6443;

        }

        server {
            listen        6443;
            proxy_pass    kube_apiserver;
            proxy_timeout 30;
            proxy_connect_timeout 2s;

        }

}

nginx-proxy Containerprotokollierung

Die Protokollierung der Container kann Informationen darüber enthalten, was das Problem sein könnte.

docker logs nginx-proxy