Rozwiązywanie problemów z niepowodzeniem braku gotowości węzła w przypadku wygaśnięcia certyfikatów
Ten artykuł ułatwia rozwiązywanie problemów ze scenariuszami braku gotowości węzła w klastrze usługi Microsoft Azure Kubernetes Service (AKS), jeśli istnieją wygasłe certyfikaty.
Wymagania wstępne
- Interfejs wiersza polecenia platformy Azure
- Narzędzie wiersza polecenia OpenSSL do wyświetlania i podpisywania certyfikatów
Symptomy
Odkryjesz, że węzeł klastra usługi AKS jest w stanie Nie gotowe węzła.
Przyczyna
Istnieje co najmniej jeden wygasły certyfikat.
Zapobieganie: uruchom polecenie OpenSSL, aby podpisać certyfikaty
Sprawdź daty wygaśnięcia certyfikatów, wywołując polecenie openssl-x509 w następujący sposób:
W przypadku węzłów zestawu skalowania maszyn wirtualnych użyj polecenia az vmss run-command invoke :
az vmss run-command invoke \ --resource-group <resource-group-name> \ --name <vm-scale-set-name> \ --command-id RunShellScript \ --instance-id 0 \ --output tsv \ --query "value[0].message" \ --scripts "openssl x509 -in /etc/kubernetes/certs/apiserver.crt -noout -enddate"
W przypadku węzłów zestawu dostępności maszyny wirtualnej użyj polecenia az vm run-command invoke :
az vm run-command invoke \ --resource-group <resource-group-name> \ --name <vm-availability-set-name> \ --command-id RunShellScript \ --output tsv \ --query "value[0].message" \ --scripts "openssl x509 -in /etc/kubernetes/certs/apiserver.crt -noout -enddate"
Po wywołaniu tych poleceń mogą zostać wyświetlone pewne kody błędów. Aby uzyskać informacje o kodach błędów 50, 51 i 52, w razie potrzeby zobacz następujące linki:
- Rozwiązywanie problemów z kodem błędu OutboundConnFailVMExtensionError (50)
- Rozwiązywanie problemów z kodem błędu K8SAPIServerConnFailVMExtensionError (51)
- Rozwiązywanie problemów z kodem błędu K8SAPIServerDNSLookupFailVMExtensionError (52)
Jeśli zostanie wyświetlony kod błędu 99, oznacza to, że polecenie apt-get update nie może uzyskać dostępu do co najmniej jednej z następujących domen:
- security.ubuntu.com
- azure.archive.ubuntu.com
- nvidia.github.io
Aby zezwolić na dostęp do tych domen, zaktualizuj konfigurację wszelkich zapór blokujących, sieciowych grup zabezpieczeń (NSG) lub wirtualnych urządzeń sieciowych (WUS).
Rozwiązanie: Obracanie certyfikatów
Automatyczne obracanie certyfikatów można zastosować w celu rotacji certyfikatów w węzłach przed ich wygaśnięciem. Ta opcja nie wymaga przestoju klastra usługi AKS.
Jeśli możesz obsłużyć przestój klastra, możesz ręcznie obrócić certyfikaty .
Uwaga
Począwszy od wersji usługi AKS z 15 lipca 2021 r., uaktualnienie klastra AKS automatycznie pomaga w rotacji certyfikatów klastra. Jednak ta zmiana zachowania nie ma zastosowania w przypadku wygasłego certyfikatu klastra. Jeśli uaktualnienie wykonuje tylko następujące akcje, wygasłe certyfikaty nie zostaną odnowione:
- Uaktualnij obraz węzła.
- Uaktualnij pulę węzłów do tej samej wersji.
- Uaktualnij pulę węzłów do nowszej wersji.
Tylko pełne uaktualnienie (czyli uaktualnienie zarówno płaszczyzny sterowania, jak i puli węzłów) pomaga odnowić wygasłe certyfikaty.
Więcej informacji
- Aby zapoznać się z ogólnymi krokami rozwiązywania problemów, zobacz Podstawowe rozwiązywanie problemów z niepowodzeniami braku gotowości węzła.