Podstawowe rozwiązywanie problemów z błędami Brak gotowości węzła
Ten artykuł zawiera kroki rozwiązywania problemów w celu odzyskania węzłów klastra usługi Microsoft Azure Kubernetes Service (AKS) po awarii. W tym artykule opisano w szczególności najbardziej typowe komunikaty o błędach generowane w przypadku wystąpienia awarii Węzła Nie gotowe i wyjaśniono, jak można wykonać funkcję naprawy węzła dla węzłów systemu Windows i Linux.
Zanim rozpoczniesz
Przeczytaj oficjalny przewodnik rozwiązywania problemów z klastrami Kubernetes. Przeczytaj również przewodnik inżyniera firmy Microsoft dotyczący rozwiązywania problemów z platformą Kubernetes. Ten przewodnik zawiera polecenia dotyczące rozwiązywania problemów z zasobnikami, węzłami, klastrami i innymi funkcjami.
Wymagania wstępne
- Interfejs wiersza polecenia platformy Azure w wersji 2.31 lub nowszej. Jeśli interfejs wiersza polecenia platformy Azure jest już zainstalowany, możesz znaleźć numer wersji, uruchamiając polecenie
az --version
.
Podstawowe rozwiązywanie problemów
Usługa AKS stale monitoruje stan kondycji węzłów roboczych i automatycznie naprawia węzły, jeśli staną się w złej kondycji. Platforma Maszyny wirtualnej platformy Azure obsługuje maszyny wirtualne, które napotykają problemy. Usługi AKS i Azure VM współpracują ze sobą, aby zmniejszyć zakłócenia usługi dla klastrów.
Istnieją dwie postacie pulsów w przypadku węzłów:
Aktualizuje stan
Node
obiektu .Obiekty Lease w przestrzeni nazw kube-node-lease. Każdy
Node
obiekt ma skojarzonyLease
obiekt.
W porównaniu do aktualizacji stanu Node
elementu , element to Lease
lekki zasób. Używanie Lease
obiektów dla pulsów zmniejsza wpływ tych aktualizacji na wydajność dużych klastrów.
Narzędzie kubelet jest odpowiedzialne za tworzenie i aktualizowanie stanu Node
obiektów. Jest on również odpowiedzialny za aktualizowanie Lease
obiektów powiązanych z Node
obiektami.
- Narzędzie kubelet aktualizuje węzeł
.status
w przypadku zmiany stanu lub braku aktualizacji skonfigurowanego interwału. Domyślny interwał.status
aktualizacji węzłów wynosi pięć minut, co jest znacznie dłuższe niż domyślny limit czasu 40 sekund dla węzłów, które nie są osiągalne. - Narzędzie kubelet tworzy obiekt i aktualizuje go
Lease
co 10 sekund (domyślny interwał aktualizacji).Lease
aktualizacje są wykonywane niezależnie od aktualizacji do węzła.status
.Lease
Jeśli aktualizacja zakończy się niepowodzeniem, narzędzie kubelet ponawia próbę przy użyciu wycofywania wykładniczego, które rozpoczyna się od 200 milisekund i jest ograniczone do siedmiu sekund.
Nie można zaplanować zasobnika w węźle o stanie NotReady
lub Unknown
. Zasobnik można zaplanować tylko w węzłach, które są w Ready
stanie .
Jeśli węzeł znajduje się w MemoryPressure
stanie , DiskPressure
lub PIDPressure
, musisz zarządzać zasobami, aby zaplanować dodatkowe zasobniki w węźle. Jeśli węzeł jest w NetworkUnavailable
trybie, należy poprawnie skonfigurować sieć w węźle.
Usługa AKS zarządza cyklem życia i operacjami węzłów agenta. Modyfikowanie zasobów IaaS skojarzonych z węzłami agenta nie jest obsługiwane. Na przykład dostosowywanie węzła za pośrednictwem połączeń SSH, aktualizowanie pakietów lub zmienianie konfiguracji sieci w węźle nie jest obsługiwane. Aby uzyskać więcej informacji, zobacz Pokrycie obsługi usługi AKS dla węzłów agenta.
Upewnij się, że spełnione są następujące warunki:
Klaster jest w stanie Powodzenie (uruchomione). Aby sprawdzić stan klastra w witrynie Azure Portal, wyszukaj i wybierz pozycję Usługi Kubernetes, a następnie wybierz nazwę klastra usługi AKS. Następnie na stronie Przegląd klastra poszukaj w sekcji Podstawy, aby znaleźć stan. Możesz też wprowadzić polecenie az aks show w interfejsie wiersza polecenia platformy Azure.
Pula węzłów ma stan aprowizacji Powodzenie i Stan zasilania Uruchomione. Aby sprawdzić stan puli węzłów w witrynie Azure Portal, wróć do strony klastra usługi AKS, a następnie wybierz pozycję Pule węzłów. Alternatywnie wprowadź polecenie az aks nodepool show w interfejsie wiersza polecenia platformy Azure.
Wymagane porty ruchu wychodzącego są otwarte w sieciowych grupach zabezpieczeń i zaporze, aby można było uzyskać dostęp do adresu IP serwera interfejsu API. Aby uzyskać więcej informacji, zobacz Wymagane reguły sieci wychodzącej i nazwy FQDN dla klastrów usługi AKS.
Węzły są w
Running
stanie zamiastStopped
lubDeallocated
.Klaster korzysta z obsługiwanej przez usługę AKS wersji rozwiązania Kubernetes.
Więcej informacji
Aby rozwiązać problemy ze stanem węzła, zobacz Rozwiązywanie problemów Not Ready
ze zmianą w węźle w dobrej kondycji na stan Nie wszystko gotowe.
Wyłączenie odpowiedzialności za kontakty z osobami trzecimi
Firma Microsoft udostępnia informacje kontaktowe innych firm, aby uzyskać dodatkowe informacje na temat tego tematu. Informacje te mogą zostać zmienione bez powiadomienia. Firma Microsoft nie gwarantuje dokładności informacji kontaktowych innych firm.