Grundlegende Problembehandlung von Clusterverbindungsproblemen mit dem API-Server
In diesem Artikel werden Verbindungsprobleme mit einem Azure Kubernetes Service (AKS)-Cluster erläutert, wenn Sie den API-Server des Clusters nicht über das Kubernetes-Cluster-Befehlszeilentool (Kubectl) oder ein anderes Tool erreichen können, z. B. die Verwendung der REST-API über eine Programmiersprache.
Voraussetzungen
Ursache und Lösungen
Verbindungsprobleme mit dem API-Server können aus vielen Gründen auftreten, aber die Ursache liegt häufig in einem Fehler mit einem der folgenden Elemente:
- Netzwerk
- Authentifizierung
- Authorization
Sie können die folgenden allgemeinen Schritte zur Problembehandlung ausführen, um die Verbindung mit dem API-Server des AKS-Clusters zu überprüfen:
Geben Sie den folgenden Befehl "az aks show " in Azure CLI ein. Dieser Befehl ruft den vollqualifizierten Domänennamen (FQDN) Ihres AKS-Clusters ab.
az aks show --resource-group <cluster-resource-group> --name <cluster-name> --query fqdnÜberprüfen Sie mit dem FQDN, ob der API-Server über den Clientcomputer erreichbar ist, indem Sie die Befehle "Name Server Lookup" (nslookup), "client URL" (curl) und "telnet " verwenden:
# Check if the DNS Resolution is working: $ nslookup <cluster-fqdn> # Then check if the API Server is reachable: $ curl -Iv https://<cluster-fqdn> $ telnet <cluster-fqdn> 443Wenn der AKS-Cluster privat ist, stellen Sie sicher, dass Sie den Befehl von einem virtuellen Computer (VM) ausführen, der auf das Azure Virtual Network des AKS-Clusters zugreifen kann. Weitere Informationen finden Sie unter "Optionen für die Verbindung mit dem privaten Cluster".
Führen Sie bei Bedarf die Schritte im Artikel "Problembehandlung" aus, damit die Client-IP-Adresse nicht auf den API-Server zugreifen kann, sodass der API-Server Ihre Client-IP-Adresse zu den von ihm autorisierten IP-Bereichen hinzufügt.
Stellen Sie sicher, dass es sich bei der Kubectl-Version auf Dem Clientcomputer nicht um zwei oder mehr Nebenversionen hinter der Version dieses Tools des AKS-Clusters handelt. Um die neueste Version von kubectl zu installieren, führen Sie den Befehl "az aks install-cli " in Azure CLI aus. Anschließend können Sie den Kubectl-Versionsbefehl ausführen, um die Versionsnummer der Neuinstallation zu überprüfen.
Unter Linux würden Sie beispielsweise die folgenden Befehle ausführen:
sudo az aks install-cli kubectl version --clientVerwenden Sie für andere Clientbetriebssysteme die folgenden Kubectl-Installationsanweisungen.
Führen Sie bei Bedarf die Schritte in der Konfigurationsdatei des Artikels "Problembehandlung" aus, die beim Herstellen einer Verbindung nicht verfügbar ist, sodass Ihre Kubernetes-Konfigurationsdatei (Konfiguration) gültig ist und zum Zeitpunkt der Verbindung gefunden werden kann.
Führen Sie bei Bedarf die Schritte im Artikel zur Problembehandlung aus, in denen Benutzer keine Clusterressourcen abrufen können, sodass Sie die Details ihrer Clusterknoten auflisten können.
Wenn Sie eine Firewall verwenden, um den ausgehenden Datenverkehr von AKS-Arbeitsknoten zu steuern, stellen Sie sicher, dass die Firewall die mindestens erforderlichen Ausgangspunktregeln für AKS zulässt.
Stellen Sie sicher , dass die Netzwerksicherheitsgruppe, die AKS-Knoten zugeordnet ist, die Kommunikation am TCP-Port 10250 innerhalb der AKS-Knoten zulässt.
Weitere allgemeine Schritte zur Problembehandlung finden Sie unter "Tcp-Timeouts" bei Verwendung von Kubectl oder anderen Tools von Drittanbietern, die eine Verbindung mit dem API-Server herstellen.