Automatyczne uaktualnianie klastra usługi Azure Kubernetes Service (AKS)

Część cyklu życia klastra usługi AKS obejmuje okresowe uaktualnianie do najnowszej wersji rozwiązania Kubernetes. Ważne jest, aby zastosować najnowsze wersje zabezpieczeń lub uaktualnić, aby uzyskać najnowsze funkcje. Przed zapoznaniem się z automatycznymi uaktualnieniami upewnij się, że znasz podstawy uaktualniania klastra usługi AKS.

Tip

Jeśli używasz AKS Automatic, aktualizacje klastra są domyślnie skonfigurowane do korzystania z kanału stable, co oznacza automatyczną aktualizację do najnowszej poprawki dla wersji podrzędnej N-1 (gdzie N to najnowsza obsługiwana wersja). Nie jest wymagana żadna konfiguracja. W przypadku automatycznych klastrów AKS z określonymi wymaganiami dotyczącymi konserwacji można ustawić okna planowanej konserwacji. Aby dowiedzieć się więcej, zobacz artykuł Czym jest usługa Azure Kubernetes Service (AKS) Automatic? W przypadku standardowych klastrów AKS czytaj dalej, aby wybrać kanał, który najlepiej odpowiada Twoim wymaganiom.

Uwaga

Każda operacja uaktualniania, wykonywana ręcznie lub automatycznie, uaktualnia wersję obrazu węzła, jeśli nie jest jeszcze w najnowszej wersji. Najnowsza wersja jest zależna od kompletnej wersji AKS i można ją sprawdzić, odwiedzając narzędzie śledzenia wydań AKS.

Automatyczne uaktualnianie najpierw uaktualnia płaszczyznę sterującą, a następnie po kolei uaktualnia pule agentów.

Dlaczego warto używać automatycznej aktualizacji klastra

Automatyczne uaktualnianie klastra zapewnia mechanizm ustaw raz i nie przejmuj się, który przynosi namacalne korzyści w zakresie czasu i kosztów operacyjnych. Nie musisz zatrzymywać obciążeń, ponownie wdrażać obciążeń ani tworzyć nowego klastra usługi AKS. Włączając automatyczną aktualizację, możesz upewnić się, że klastry są aktualne i nie przegapisz najnowszych funkcji ani poprawek z usługi AKS i nadrzędnego projektu Kubernetes.

W przypadku klastrów AKS Automatic ta korzyść jest wbudowana — automatyczne uaktualnienia klastra są wstępnie skonfigurowane i domyślnie włączone z użyciem kanału stabilnego, co eliminuje konieczność ręcznej konfiguracji lub podejmowania decyzji.

Usługa AKS przestrzega ścisłego okna obsługi wersji. Przy prawidłowym wybraniu kanałów automatycznego zwiększania poziomu można uniknąć wpadania klastrów w nieobsługiwaną wersję. Aby uzyskać więcej informacji na temat okna obsługi usługi AKS, zapoznaj się z wersjami pomocniczymi Alias.

Automatyczne uaktualnienia klastra inicjowane przez klienta a usługę AKS

Możesz określić szczegóły automatycznej aktualizacji klastra, korzystając z poniższych wskazówek. Uaktualnienia są wykonywane na podstawie określonej kadencji i zalecane jest zachowanie obsługiwanych wersji platformy Kubernetes.

  • Usługa AKS automatycznie aktualizuje klastry w wersji N-3 (gdzie N oznacza najnowszą obsługiwaną pomocniczą wersję GA usługi AKS), które wkrótce spadłyby do N-4, zamiast tego aktualizując je do N-2. Ta akcja gwarantuje, że klastry pozostaną w oknie pomocy technicznej usługi AKS. Aby uzyskać więcej informacji, zobacz okno pomocy technicznej usługi AKS.
  • Zatrzymane pule węzłów są aktualizowane podczas automatycznej operacji aktualizacji. Uaktualnienie ma zastosowanie do węzłów po uruchomieniu puli węzłów. Aby zminimalizować zakłócenia, skonfiguruj okna obsługi.

Ograniczenia automatycznej aktualizacji klastra

Ograniczenia uaktualniania płaszczyzny sterowania

Jeśli używasz automatycznego uaktualniania klastra, nie możesz już najpierw uaktualnić płaszczyzny sterowania, a następnie uaktualnić poszczególne pule węzłów. Automatyczne uaktualnianie klastra zawsze uaktualnia płaszczyznę sterowania i pule węzłów. Nie można uaktualnić tylko płaszczyzny sterowania. az aks upgrade --control-plane-only Uruchomienie polecenia powoduje wyświetlenie następującego błędu:

NotAllAgentPoolOrchestratorVersionSpecifiedAndUnchanged: Using managed cluster api, all Agent pools' OrchestratorVersion must be all specified or all unspecified. If all specified, they must be stay unchanged or the same with control plane.

Automatyczne uaktualnianie obrazu węzła i nienadzorowane aktualizacje

Jeśli używasz kanału node-image automatycznego uaktualniania klastra, który jest teraz przestarzały i nie powinien już być używany, lub kanału NodeImage automatycznego uaktualniania obrazu węzła, uaktualnienia nienadzorowane systemu Linux są domyślnie wyłączone.

Automatyczna aktualizacja kanałów klastra

Automatycznie ukończone uaktualnienia są funkcjonalnie takie same jak uaktualnienia ręczne. Wybrany kanał automatycznego uaktualniania określa czas uaktualnień. Podczas wprowadzania zmian w automatycznej aktualizacji poczekaj 24 godziny, żeby zmiany zaczęły obowiązywać. Automatyczne uaktualnianie klastra jest zgodne z tym samym procesem co ręczne uaktualnianie klastra. Aby uzyskać więcej informacji, zobacz Aktualizowanie klastra AKS.

W przypadku klastrów AKS Automatic

Klastry automatyczne AKS domyślnie używają kanału stable. Ten kanał zapewnia zalecaną równowagę między byciem na bieżąco z najnowszymi funkcjami i aktualizacjami zabezpieczeń a zachowaniem stabilności. Klastry są automatycznie uaktualniane do najnowszej wersji poprawkowej w ramach wersji podrzędnej N-1 (gdzie N to najnowsza obsługiwana wersja podrzędna).

Nie jest wymagana żadna konfiguracja — uaktualnienia są wykonywane automatycznie w oknie obsługi. W razie potrzeby można ustawić okna planowanej konserwacji, aby kontrolować, kiedy wystąpią uaktualnienia, ale wybór kanału jest stały na stabilny.

Dlaczego stabilność w usłudze AKS Automatic?

  • Utrzymuje klastry w oknie obsługi N-2 (bezpieczne i zgodne)
  • Równoważy innowacje ze stabilnością
  • W pełni zarządzane przez AKS z zastosowaniem bezpiecznych praktyk wdrażania
  • Zgodne z najlepszymi praktykami dobrze zaprojektowanej architektury AKS
  • Zoptymalizowane pod kątem obciążeń produkcyjnych

W przypadku klastrów AKS w warstwie Standard

Jeśli używasz usługi AKS Standard, wybierz kanał, który najlepiej odpowiada wymaganiom operacyjnym.

Dostępne są następujące kanały uaktualniania:

Kanał Akcja Przykład
none Wyłącza automatyczne skalowanie i utrzymuje klaster w bieżącej wersji rozwiązania Kubernetes. Ustawienie domyślne, jeśli pozostanie niezmienione.
patch Automatycznie uaktualni klaster do najnowszej obsługiwanej wersji poprawki, gdy stanie się ona dostępna, zachowując tę samą wersję pomocniczą. Jeśli na przykład klaster działa w wersji 1.17.7 i dostępne są wersje 1.17.9, 1.18.4, 1.18.6 i 1.19.1, klaster uaktualnia się do wersji 1.17.9.
stable Automatycznie zaktualizuje klaster do najnowszego obsługiwanego wydania poprawkowego dla wersji podrzędnej N-1, gdzie N jest najnowszą obsługiwaną wersją podrzędną. Jeśli na przykład klaster działa w wersji 1.17.7 i dostępne są wersje 1.17.9, 1.18.4, 1.18.6 i 1.19.1, klaster jest uaktualniany do wersji 1.18.6.
rapid Automatycznie zaktualizuje klaster do najnowszej obsługiwanej wersji poprawkowej w ramach najnowszej obsługiwanej wersji podrzędnej. W przypadkach, gdy wersja Kubernetes klastra jest wersją pomocniczą N-2, gdzie N jest najnowszą obsługiwaną wersją pomocniczą, klaster najpierw aktualizuje do najnowszej obsługiwanej wersji poprawki na wersji pomocniczej N-1. Jeśli na przykład klaster działa w wersji 1.17.7, a dostępne są wersje 1.17.9, 1.18.4, 1.18.6 i 1.19.1, klaster najpierw uaktualnia do wersji 1.18.6, a następnie do wersji 1.19.1.
node-image(dziedzictwo) Automatycznie uaktualnia obraz węzła do najnowszej dostępnej wersji. Firma Microsoft często (co tydzień) udostępnia aktualizacje i nowe obrazy dla węzłów z obrazami, ale działające węzły nie pobierają nowych obrazów, chyba że przeprowadzisz uaktualnienie obrazu węzła. Włączenie kanału node-image automatycznie aktualizuje obrazy węzłów za każdym razem, gdy jest dostępna nowa wersja. Jeśli używasz tego kanału, system Linux [nienadzorowane uaktualnienia] jest domyślnie wyłączony. Uaktualnienia obrazu węzła działają w przypadku wycofanych wersji poprawek, tak długo, jak wersja podrzędna Kubernetes jest nadal obsługiwana. Ten kanał nie jest już zalecany i jest planowany do wycofania w przyszłości. Aby uzyskać opcję, która może automatycznie aktualizować obrazy węzłów, zobacz NodeImage kanał w automatycznej aktualizacji obrazu węzła.

Uwaga

Podczas korzystania z automatycznego aktualizowania klastra należy pamiętać o następujących informacjach:

  • Automatyczna aktualizacja klastra aktualizuje wyłącznie do wersji ogólnodostępnych platformy Kubernetes i nie aktualizuje do wersji zapoznawczych.

  • Za pomocą usługi AKS można utworzyć klaster bez określania dokładnej wersji poprawki. Podczas tworzenia klastra bez wyznaczania poprawki klaster uruchamia najnowszą poprawkę ogólnie dostępnej wersji pomocniczej. Aby dowiedzieć się więcej, zobacz okno wsparcia AKS.

  • Automatyczna aktualizacja wymaga, aby wersja Kubernetes klastra mieściła się w oknie obsługi usługi AKS, nawet jeśli korzystasz z kanału node-image.

  • Jeśli używasz interfejsu API w wersji zapoznawczej 11-02-preview lub nowszej, a następnie wybierzesz kanał automatycznego uaktualniania klastra node-image, ustawienie aktualizacji obrazu węzła zostanie automatycznie przełączone na kanał NodeImage.

  • Każdy klaster można skojarzyć tylko z jednym kanałem automatycznej aktualizacji. Przyczyną jest to, że określony kanał określa wersję platformy Kubernetes uruchomioną w klastrze.

Porównanie trybu klastra

Poniższa tabela podsumowuje konfigurację automatycznej aktualizacji klastra według trybu klastra:

Aspect Automatyczne usługi AKS AKS Standard
Kanał domyślny stabilne (wstępnie skonfigurowane) Wymagane ręczne zaznaczenie
Cykl aktualizacji Tygodniowo (ustalone na N-1) Na podstawie wybranego kanału
Wymagana konfiguracja Brak — automatyczne uaktualnianie Tak — wybierz kanał i harmonogram
Zalecane dla Większość obciążeń produkcyjnych Wymagania niestandardowe lub określone ograniczenia
Kontrolka okna obsługi Optional Zdecydowanie zalecane
Dostępne opcje kanału tylko stabilna (ustalona) poprawka, stabilna, szybka, brak

Użyj automatycznej aktualizacji klastra z nowym klastrem AKS

Uwaga

Jeśli tworzysz klaster automatyczny usługi AKS, pomiń te kroki. Stabilny kanał jest już wstępnie skonfigurowany na potrzeby automatycznych uaktualnień. Te kroki dotyczą wyłącznie klastrów AKS w warstwie Standard.

Ustaw kanał automatycznej aktualizacji podczas tworzenia nowego klastra przy użyciu polecenia az aks create i parametru auto-upgrade-channel.

az aks create \
  --resource-group <resource-group-name> \
  --name <cluster-name> \
  --auto-upgrade-channel stable \
  --generate-ssh-keys

Używanie automatycznej aktualizacji z istniejącym klastrem AKS

Uwaga

Jeśli używasz klastra AKS Automatic, nie możesz zmienić kanału automatycznej aktualizacji klastra — jest on wstępnie skonfigurowany do korzystania z kanału stable. Te kroki dotyczą tylko klastrów AKS w warstwie Standard. W razie potrzeby można ustawić zaplanowane okna konserwacji dla klastra automatycznego usługi AKS.

Ustaw kanał automatycznych aktualizacji w istniejącym klastrze przy użyciu polecenia az aks update z parametrem auto-upgrade-channel.

az aks update \
  --resource-group <resource-group-name> \
  --name <cluster-name> \
  --auto-upgrade-channel stable

Wyniki:

{
  "id": "/subscriptions/aaaa6a6a-bb7b-cc8c-dd9d-eeeeee0e0e0e/resourceGroups/myResourceGroupabc123/providers/Microsoft.ContainerService/managedClusters/myAKSCluster",
  "properties": {
    "autoUpgradeChannel": "stable",
    "provisioningState": "Succeeded"
  }
}

Korzystanie z automatycznej aktualizacji klastra z planowaną konserwacją

Jeśli korzystasz z planowanej konserwacji i automatycznego uaktualniania klastra, uaktualnienie zostanie uruchomione w określonym oknie obsługi.

Uwaga

Aby zapewnić właściwą funkcjonalność, użyj okna obsługi trwającego co najmniej cztery godziny.

Aby uzyskać więcej informacji na temat ustawiania okna konserwacji przy użyciu funkcji Planowanej Konserwacji, zobacz Użyj Planowanej Konserwacji do planowania okien konserwacji dla swojego klastra Azure Kubernetes Service (AKS).

Najlepsze praktyki dotyczące automatycznej aktualizacji klastra

Skorzystaj z poniższych najlepszych rozwiązań, aby zmaksymalizować sukces podczas korzystania z autougradowania:

Czy automatyczna aktualizacja klastra jest konfigurowana inaczej dla AKS Automatic?

Yes. Klastry automatyczne usługi AKS są wstępnie skonfigurowane do używania stabilnego kanału domyślnie — nie trzeba konfigurować niczego. Ta konfiguracja zapewnia:

  • Automatyczne aktualizacje do najnowszej wersji poprawkowej w wersji podrzędnej N-1
  • Cotygodniowy rytm uaktualnień zgodny z najlepszymi praktykami AKS
  • W pełni zarządzane przez AKS z zastosowaniem bezpiecznych praktyk wdrażania
  • Kontrolka okna obsługi (opcjonalnie)
  • Ustawienia domyślne gotowe do produkcji zoptymalizowane pod kątem większości obciążeń

Klastry AKS w warstwie Standard wymagają wybrania kanału odpowiednio do swoich potrzeb. Aby przeprowadzić migrację z usługi AKS Standard do usługi AKS Automatic i skorzystać z tych wstępnie skonfigurowanych ustawień domyślnych, zobacz Czym jest usługa Azure Kubernetes Service (AKS) Automatic?

Szczegółowe omówienie najlepszych praktyk dotyczących aktualizacji i innych zagadnień można znaleźć w przewodniku AKS patch and upgrade guidance — Wskazówki dotyczące poprawek i aktualizacji usługi AKS.

Aby dowiedzieć się więcej o wstępnie skonfigurowanych ustawieniach i domyślnych ustawieniach gotowych do użycia w środowisku produkcyjnym w usłudze AKS Automatic, zobacz Czym jest Azure Kubernetes Service (AKS) Automatic?