Diagnostika problémů s připojením pro clustery Kubernetes s podporou Služby Azure Arc

Pokud máte problémy s připojením clusteru ke službě Azure Arc, příčinou je pravděpodobně některý z uvedených problémů. Poskytujeme dva vývojové diagramy s asistencí: jeden, pokud nepoužíváte proxy server, a jeden, který platí, pokud vaše síťové připojení používá proxy server.

Tip

Kroky v tomto vývojovém diagramu platí bez ohledu na to, jestli k připojení clusteru používáte Azure CLI nebo Azure PowerShell. Některé kroky ale vyžadují použití Azure CLI. Pokud jste ještě nenainstalovali Azure CLI, nezapomeňte to udělat, než začnete.

Připojení iony bez proxy serveru

Projděte si tento vývojový diagram a diagnostikujte váš problém při pokusu o připojení clusteru ke službě Azure Arc bez proxy serveru. Další podrobnosti o jednotlivých krocích najdete níže.

Flowchart showing a visual representation of checking for connection issues when not using a proxy.

Má identita Azure dostatečná oprávnění?

Zkontrolujte požadavky na připojení clusteru a ujistěte se, že identita, kterou používáte pro připojení clusteru, má potřebná oprávnění.

Používáte nejnovější verzi Azure CLI?

Ujistěte se, že máte nainstalovanou nejnovější verzi.

Pokud jste cluster připojili pomocí Azure PowerShellu, ujistěte se, že používáte nejnovější verzi.

connectedk8s Je rozšíření nejnovější verzí?

Spuštěním tohoto příkazu aktualizujte rozšíření Azure CLI connectedk8s na nejnovější verzi:

az extension update --name connectedk8s

Pokud jste rozšíření ještě nenainstalovali, můžete to udělat spuštěním následujícího příkazu:

az extension add --name connectedk8s

Ukazuje kubeconfig na správný cluster?

Spuštěním potvrďte kubectl config get-contexts název cílového kontextu. Potom nastavte výchozí kontext na správný cluster spuštěním kubectl config use-context <target-cluster-name>příkazu .

Jsou všichni požadovaná poskytovatelé prostředků zaregistrovaní?

Ujistěte se, že jsou zaregistrovaní poskytovatelé prostředků Microsoft.Kubernetes, Microsoft.KubernetesConfiguration a Microsoft.ExtendedLocation.

Jsou splněny všechny požadavky na síť?

Zkontrolujte požadavky na síť a ujistěte se, že nejsou blokované žádné požadované koncové body.

Jsou všechny pody v azure-arc oboru názvů spuštěné?

Pokud všechno funguje správně, všechny pody by měly být ve Running stavu. Spusťte a ověřte kubectl get pods -n azure-arc , jestli nějaký pod není Running.

Máte stále problémy?

Výše uvedený postup vyřeší řadu běžných problémů s připojením, ale pokud se stále nemůžete úspěšně připojit, vygenerujte soubor protokolu řešení potíží a otevřete žádost o podporu, abychom mohli problém dále prošetřit.

Pokud chcete vygenerovat soubor protokolu řešení potíží, spusťte následující příkaz:

az connectedk8s troubleshoot -g <myResourceGroup> -n <myK8sCluster>

Při vytváření žádosti o podporu použijte v části Další podrobnosti možnost Nahrání souboru k nahrání vygenerovaného souboru protokolu.

Připojení iony s proxy serverem

Pokud používáte proxy server alespoň na jednom počítači, proveďte prvních pět kroků vývojového diagramu, který není proxy serverem (prostřednictvím registrace poskytovatele prostředků), a proveďte základní kroky pro řešení potíží. Pokud stále dochází k problémům, projděte si další vývojový diagram a vyhledejte další kroky pro řešení potíží. Další podrobnosti o jednotlivých krocích najdete níže.

Flowchart showing a visual representation of checking for connection issues when using a proxy.

Spouští počítač příkazy za proxy serverem?

Pokud počítač spouští příkazy za proxy serverem, budete muset nastavit všechny potřebné proměnné prostředí. Další informace najdete v tématu Připojení použití odchozího proxy serveru.

Příklad:

export HTTP_PROXY="http://<proxyIP>:<proxyPort>"
export HTTPS_PROXY="https://<proxyIP>:<proxyPort>"
export NO_PROXY="<cluster-apiserver-ip-address>:<proxyPort>"

Přijímá proxy server jenom důvěryhodné certifikáty?

Nezapomeňte zahrnout cestu k souboru certifikátu zahrnutím --proxy-cert <path-to-cert-file> při spuštění az connectedk8s connect příkazu.

az connectedk8s connect --name <cluster-name> --resource-group <resource-group> --proxy-cert <path-to-cert-file>

Je proxy server schopný dosáhnout požadovaných koncových bodů sítě?

Zkontrolujte požadavky na síť a ujistěte se, že nejsou blokované žádné požadované koncové body.

Používá proxy server pouze protokol HTTP?

Pokud proxy server používá pouze protokol HTTP, můžete použít proxy-http oba parametry.

Pokud je proxy server nastavený pomocí protokolu HTTP i HTTPS, spusťte az connectedk8s connect příkaz se zadanými --proxy-https parametry a --proxy-http parametry. Ujistěte se, že používáte --proxy-http proxy server HTTP a --proxy-https proxy server HTTPS.

az connectedk8s connect --name <cluster-name> --resource-group <resource-group> --proxy-https https://<proxy-server-ip-address>:<port> --proxy-http http://<proxy-server-ip-address>:<port>  

Vyžaduje proxy server rozsahy přeskočení pro komunikaci mezi službami?

Pokud potřebujete přeskočit rozsahy, použijte --proxy-skip-range <excludedIP>,<excludedCIDR> ho ve svém az connectedk8s connect příkazu.

az connectedk8s connect --name <cluster-name> --resource-group <resource-group> --proxy-https https://<proxy-server-ip-address>:<port> --proxy-http http://<proxy-server-ip-address>:<port> --proxy-skip-range <excludedIP>,<excludedCIDR>

Jsou všechny pody v azure-arc oboru názvů spuštěné?

Pokud všechno funguje správně, všechny pody by měly být ve Running stavu. Spusťte a ověřte kubectl get pods -n azure-arc , jestli nějaký pod není Running.

Máte stále problémy?

Výše uvedený postup vyřeší řadu běžných problémů s připojením, ale pokud se stále nemůžete úspěšně připojit, vygenerujte soubor protokolu řešení potíží a otevřete žádost o podporu, abychom mohli problém dále prošetřit.

Pokud chcete vygenerovat soubor protokolu řešení potíží, spusťte následující příkaz:

az connectedk8s troubleshoot -g <myResourceGroup> -n <myK8sCluster>

Při vytváření žádosti o podporu použijte v části Další podrobnosti možnost Nahrání souboru k nahrání vygenerovaného souboru protokolu.

Další kroky