Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Uaktualnij Azure Red Hat OpenShift za pomocą klastra hostowanych płaszczyzn sterowania, aby uzyskać dostęp do nowych funkcji openShift, aktualizacji zabezpieczeń i poprawek błędów. Azure Red Hat OpenShift z hostowanymi płaszczyznami sterowania korzysta z oddzielonego modelu uaktualniania, w którym płaszczyzna sterowania i pule węzłów są uaktualniane niezależnie. Użyj tego modelu aktualizacji do planowania aktualizacji płaszczyzny sterowania strumienia y oraz aktualizacji puli węzłów, tak aby były zgodne z oknami konserwacyjnymi.
Wymagania wstępne
- Istniejący klaster Azure Red Hat OpenShift z hostowanymi płaszczyznami sterowania.
- Azure CLI w wersji 2.67.0 lub nowszej. Aby zainstalować lub zaktualizować, zobacz Instalowanie interfejsu wiersza polecenia platformy Azure.
- Zainstalowano rozszerzenie CLI ARO HCP. Jeśli musisz go zainstalować, uruchom polecenie
az extension add --name aro.
- Rola „Współautor” oraz rola „Administrator dostępu użytkowników” (lub rola „Właściciel”) dla grupy zasobów lub subskrypcji zawierającej klaster.
Jak działają uaktualnienia
Azure Red Hat OpenShift z hostowanymi płaszczyznami sterowania używa oddzielonego modelu uaktualniania, w którym płaszczyzna sterowania i pule węzłów są uaktualniane niezależnie, z regułami zgodności wersji, które określają, które kombinacje są obsługiwane.
Uaktualnienia płaszczyzny sterowania
Istnieją dwa typy uaktualnień płaszczyzny sterowania:
Aktualizacje typu Z-stream (poprawki): inżynierowie SRE firmy Red Hat automatycznie stosują te aktualizacje. Aktualizacje Z-stream to aktualizacje konserwacyjne w ramach tej samej wersji podrzędnej, na przykład aktualizacja z wersji 4.22.1 do 4.22.2. Te uaktualnienia stosują poprawki zabezpieczeń i usterek bez blokowania operacji klastra. Możesz nadal tworzyć pule węzłów, skalować obciążenia i wdrażać aplikacje, podczas gdy inżynierowie SRE aktualizują warstwę sterowania do nowej wersji poprawkowej z-stream. Nie trzeba podejmować żadnych działań dotyczących uaktualnień płaszczyzny sterowania strumieniem z.
Uaktualnienia strumienia Y (wersja pomocnicza): te uaktualnienia są inicjowane przy użyciu Azure CLI. Aktualizacje Y-stream przenoszą płaszczyznę sterowania na nową wersję podrzędną, na przykład z wersji 4.21 do 4.22. Możesz kontrolować, kiedy są wykonywane uaktualnienia strumienia y, dzięki czemu można dostosować uaktualnienia do procesów zarządzania zmianami i okien obsługi.
Aktualizacje puli węzłów
Zawsze inicjujesz aktualizacje puli węzłów, zarówno dla wersji z-stream, jak i y-stream. Aktualizacje puli węzłów wykorzystują strategię stopniowej wymiany, która podczas aktualizacji zastępuje każdy węzeł w puli węzłów. Jednocześnie można zaktualizować wiele pul węzłów.
Obsługiwane kombinacje wersji
Przed aktualizacją klastra zapoznaj się z ograniczeniami dotyczącymi rozbieżności wersji między płaszczyzną sterowania a pulami węzłów. Naruszenie tych ograniczeń może pozostawić klaster w stanie nieobsługiwanym.
Obowiązują następujące reguły:
- Wersja podrzędna puli węzłów nie może przekraczać wersji podrzędnej płaszczyzny kontroli. Pula węzłów może działać w wyższej wersji poprawkowej niż płaszczyzna sterowania w ramach tej samej wersji podrzędnej. Zawsze zaktualizuj płaszczyznę sterowania do docelowej wersji podrzędnej przed zaktualizowaniem jakichkolwiek pul węzłów do tej wersji podrzędnej.
- Okno obsługi dwóch wersji pomocniczych. Płaszczyzna sterowania obsługuje pule węzłów w obrębie dwóch wersji pobocznych strumienia y. Na przykład płaszczyzna sterowania działająca w wersji 4.22 obsługuje pule węzłów działające w wersji 4.21 i 4.20, ale nie obsługuje pul węzłów działających w wersji 4.19.
- Maksymalnie przejście o dwie wersje podrzędne. Pulę węzłów można zaktualizować do nowszego wydania z-stream w obrębie tej samej wersji podrzędnej lub przejść maksymalnie o dwie wersje podrzędne wyżej. Na przykład można uaktualnić pulę węzłów z wersji 4.20.z do 4.22.z, ale nie z wersji 4.20.z do wersji 4.23.z. Wersja docelowa nie może przekraczać podrzędnej wersji płaszczyzny sterowania.
W poniższej tabeli przedstawiono przykłady dozwolonych i niedozwolonych kombinacji wersji:
| Wersja płaszczyzny sterowania | Wersja puli węzłów | Supported | Reason |
|---|---|---|---|
| 4.22 | 4.22 | Yes | Pula węzłów jest zgodna z płaszczyzną sterowania |
| 4.22 | 4.21 | Yes | W dwóch wersjach pomocniczych (N-1) |
| 4.22 | 4.20 | Yes | W dwóch wersjach pomocniczych (N-2) |
| 4.22 | 4.19 | No | Przekracza rozbieżność dwóch wersji podrzędnych (N-3) |
| 4.21 | 4.22 | No | Pula węzłów nowsza niż płaszczyzna sterowania |
Sprawdzanie bieżącej wersji klastra
Przed uaktualnieniem sprawdź bieżącą wersję klastra OpenShift.
oc get clusterversion version
Dane wyjściowe zawierają bieżącą wersję platformy OpenShift:
NAME VERSION AVAILABLE PROGRESSING SINCE STATUS
version 4.20.26 True False 70s Cluster version is 4.20.26
Aktualizować płaszczyznę sterowania
Aby uaktualnić płaszczyznę sterowania do nowej wersji podrzędnej (y-stream), wyświetl listę dostępnych wersji, a następnie zainicjuj uaktualnienie za pomocą interfejsu wiersza polecenia platformy Azure (Azure CLI).
Ważna
Rozwiązania SRE systemu Red Hat automatycznie stosują uaktualnienia płaszczyzny sterowania strumieniem z, dzięki czemu nie trzeba podejmować żadnych działań. Użyj poniższej procedury tylko w przypadku uaktualnień strumienia y (wersja pomocnicza).
Ustaw zmienne środowiskowe dla grupy zasobów, nazwy klastra i regionu Azure, jeśli jeszcze tego nie zrobiono:
CUSTOMER_RG_NAME="<resource-group-name>" CLUSTER_NAME="<cluster-name>" LOCATION="<azure-region>"Wyświetl listę dostępnych wersji platformy OpenShift w regionie Azure, uruchamiając następujące polecenie:
az aro hcp get-versions \ --location "${LOCATION}" \ --query "[].{name:Name, channelGroup:ChannelGroup}" \ --output tableDane wyjściowe zawierają listę dostępnych wersji:
Name ChannelGroup ------- -------------- 4.22.0 stable 4.22.1 stable 4.22.2 stable 4.22.3 stable ...Zidentyfikuj wersję docelową uaktualnienia. Można zaktualizować tylko do następnej wersji podrzędnej. Jeśli na przykład płaszczyzna sterowania jest uruchomiona w wersji 4.20, możesz przeprowadzić uaktualnienie do wersji 4.21, ale nie bezpośrednio do wersji 4.22.
Uaktualnij płaszczyznę sterowania, uruchamiając następujące polecenie. Zastąp
<target-version>żądaną wersją OpenShift, taką jak4.22:az aro hcp cluster update \ --name "${CLUSTER_NAME}" \ --resource-group "${CUSTOMER_RG_NAME}" \ --version "<target-version>"Sprawdź, czy żądanie uaktualnienia zostało zaakceptowane, sprawdzając stan aprowizacji:
az aro hcp cluster show \ --name "${CLUSTER_NAME}" \ --resource-group "${CUSTOMER_RG_NAME}" \ --query "{version:properties.version, provisioningState:properties.provisioningState}"Gdy element
provisioningStatezwraca wartośćSucceeded, usługa weryfikuje ścieżkę uaktualnienia z bieżącej wersji do wersji docelowej i uruchamia uaktualnienie. Uaktualnienie jest uruchamiane w tle bez blokowania innych operacji w klastrze. JeśliprovisioningStatezwraca wartośćFailed, usługa nie mogła zweryfikować ścieżki uaktualnienia.
Uaktualnij pulę węzłów
Po uaktualnieniu płaszczyzny sterowania można uaktualnić co najmniej jedną pulę węzłów do zgodnej wersji. Aktualizacje puli węzłów wykorzystują strategię stopniowej wymiany, która zastępuje każdy węzeł w trakcie aktualizacji.
Caution
Nie aktualizuj puli węzłów do wyższej wersji podrzędnej niż wersja podrzędna płaszczyzny sterowania. Jeśli chcesz uaktualnić pulę węzłów do określonej wersji, płaszczyzna kontroli musi już działać w tej wersji lub wersji nowszej.
Ustaw zmienne środowiskowe dla grupy zasobów, nazwy klastra, nazwy puli węzłów i regionu Azure, jeśli jeszcze tego nie zrobiono:
CUSTOMER_RG_NAME="<resource-group-name>" CLUSTER_NAME="<cluster-name>" NODE_POOL_NAME="<node-pool-name>" LOCATION="<azure-region>"Sprawdź bieżącą wersję puli węzłów, uruchamiając następujące polecenie:
az aro hcp cluster nodepool show \ --cluster-name "${CLUSTER_NAME}" \ --name "${NODE_POOL_NAME}" \ --resource-group "${CUSTOMER_RG_NAME}" \ --query "properties.version"Wyświetl listę dostępnych wersji biblioteki OpenShift w regionie Azure:
az aro hcp get-versions \ --location "${LOCATION}" \ --query "[].{name:Name, channelGroup:ChannelGroup}" \ --output tableWybierz wersję docelową dla puli węzłów, która spełnia następujące kryteria:
- Docelowa wersja podrzędna jest mniejsza lub równa wersji podrzędnej płaszczyzny sterowania. Pula węzłów może mieć wyższą wersję poprawek niż płaszczyzna sterowania w ramach tej samej wersji podrzędnej.
- Wersja docelowa to nowsze wydanie z-stream w obrębie tej samej wersji pobocznej lub maksymalnie o dwie wersje poboczne nowsze. Nie można przeskoczyć o więcej niż dwie wersje podrzędne. Jeśli na przykład pula węzłów jest uruchomiona w wersji 4.19.3, możesz przeprowadzić uaktualnienie do wersji 4.19.5 (ze-stream), 4.20.x (jedna wersja pomocnicza) lub 4.21.x (dwie wersje pomocnicze), ale nie bezpośrednio do wersji 4.22.0.
Uaktualnij pulę węzłów, uruchamiając następujące polecenie. Zastąp
<target-version>żądaną wersją OpenShift, taką jak4.22.3:az aro hcp cluster nodepool update \ --cluster-name "${CLUSTER_NAME}" \ --name "${NODE_POOL_NAME}" \ --resource-group "${CUSTOMER_RG_NAME}" \ --version "<target-version>"Uaktualnienie rozpocznie się natychmiast. Podczas stopniowej wymiany węzły w puli węzłów tymczasowo działają zarówno w starej, jak i nowej wersji.
Note
Właściwość
nodeDrainTimeoutMinuteswe puli węzłów określa, jak długo klaster honoruje obciążenia chronione przez mechanizm Pod Disruption Budget podczas aktualizacji. Po upływie tego okresu karencji klaster wymusza usunięcie pozostałych obciążeń roboczych. Wartość domyślna jest dziedziczona z ustawienia na poziomie klastra. Możesz ustawić tę wartość z0(opróżnianie bez ograniczeń czasu do ukończenia) na10080minuty (tydzień).Sprawdź, czy żądanie uaktualnienia zostało zaakceptowane, sprawdzając stan aprowizacji:
az aro hcp cluster nodepool show \ --cluster-name "${CLUSTER_NAME}" \ --name "${NODE_POOL_NAME}" \ --resource-group "${CUSTOMER_RG_NAME}" \ --query "{version:properties.version, provisioningState:properties.provisioningState}"Gdy
provisioningStatezwracaSucceeded, usługa zweryfikowała ścieżkę aktualizacji i zainicjowała aktualizację puli węzłów. Uaktualnienie jest uruchamiane w tle bez blokowania innych operacji w puli węzłów.Powtórz kroki od 2 do 6 dla każdej puli węzłów, którą chcesz uaktualnić. Jednocześnie można zaktualizować wiele pul węzłów.