Upgrade modulu runtime clusteru z Azure CLI
Tento průvodce postupy vysvětluje kroky pro instalaci požadovaného Azure CLI a rozšíření potřebných pro interakci s operátorem Nexus.
Požadavky
- Instalace Azure CLI musí být nainstalovaná.
- Vyžaduje se rozšíření rozhraní příkazového
networkcloud
řádku.networkcloud
Pokud rozšíření není nainstalované, můžete ho nainstalovat podle zde uvedených kroků. - Přístup k webu Azure Portal pro upgrade cílového clusteru
- Musíte být přihlášeni ke stejnému předplatnému jako cílový cluster prostřednictvím
az login
- Cílový cluster musí být ve spuštěném stavu, přičemž všechny uzly řídicí roviny jsou v pořádku a 80 + % výpočetních uzlů ve spuštěném a v pořádku.
Kontrola aktuální verze modulu runtime
Před upgradem ověřte aktuální verzi modulu runtime clusteru: Jak zkontrolovat aktuální verzi modulu runtime clusteru.
Vyhledání dostupných verzí modulu runtime
Prostřednictvím webu Azure Portal
Pokud chcete najít dostupné upgradovatelné verze modulu runtime, přejděte na cílový cluster na webu Azure Portal. V podokně přehledu clusteru přejděte na kartu Dostupné verze upgradu.
Na kartě dostupné verze upgradu uvidíme různé verze clusteru, které jsou aktuálně k dispozici pro upgrade. Operátor může vybrat z uvedených cílových verzí modulu runtime. Po výběru pokračujte upgradem clusteru.
Přes Azure CLI
Dostupné upgrady se dají načíst přes Azure CLI:
az networkcloud cluster show --name "<clusterName>" /
--resource-group "<resourceGroup>" /
--subscription <subscriptionID>
Ve výstupu availableUpgradeVersions
najdete vlastnost a podíváte se na targetClusterVersion
pole:
"availableUpgradeVersions": [
{
"controlImpact": "True",
"expectedDuration": "Upgrades may take up to 4 hours + 2 hours per rack",
"impactDescription": "Workloads will be disrupted during rack-by-rack upgrade",
"supportExpiryDate": "2023-07-31",
"targetClusterVersion": "3.3.0",
"workloadImpact": "True"
}
],
Pokud nejsou k dispozici žádné upgrady clusteru, seznam je prázdný.
Konfigurace parametrů prahové hodnoty výpočetních prostředků pro upgrade za běhu pomocí aktualizace clusteruStrategy
Následující příkaz Azure CLI slouží ke konfiguraci parametrů prahové hodnoty výpočetních prostředků pro upgrade modulu runtime:
az networkcloud cluster update /
--name "<clusterName>" /
--resource-group "<resourceGroup>" /
--update-strategy strategy-type="Rack" threshold-type="PercentSuccess" /
threshold-value="<thresholdValue>" max-unavailable=<maxNodesOffline> /
wait-time-minutes=<waitTimeBetweenRacks> /
--subscription <subscriptionID>
Požadované parametry:
- typ strategie: Definuje strategii aktualizace. To může být
"Rack"
(rack podle racku) NEBO"PauseAfterRack"
(upgradovat jeden rack najednou a pak počkat na potvrzení, než budete pokračovat na další rack. Výchozí hodnota jeRack
. Pokud chcete provést upgrade modulu runtime clusteru pomocí strategie PauseRack, postupujte podle kroků uvedených v tématu Upgrade modulu runtime clusteru se strategií pozastavení racku. - typ prahové hodnoty: Určuje, jak má být prahová hodnota vyhodnocena v jednotkách definovaných strategií. To může být
"PercentSuccess"
NEBO"CountSuccess"
. Výchozí hodnota jePercentSuccess
. - prahová hodnota: Číselná prahová hodnota použitá k vyhodnocení aktualizace. Výchozí hodnota je
80
.
Volitelné parametry:
- max-unavailable: Maximální počet pracovních uzlů, které mohou být offline, tj. upgradované racky najednou. Výchozí hodnota je
32767
. - wait-time-minutes: Prodleva nebo čekací doba před aktualizací racku. Výchozí hodnota je
15
.
Následující příklad je určený pro zákazníka, který používá strategii Rack by Rack s procentuální úspěšností 60 % a 1 minutovou pauzou.
az networkcloud cluster update --name "<clusterName>" /
--resource-group "<resourceGroup>" /
--update-strategy strategy-type="Rack" threshold-type="PercentSuccess" /
threshold-value=60 wait-time-minutes=1 /
--subscription <subscriptionID>
Ověření aktualizace:
az networkcloud cluster show --resource-group "<resourceGroup>" /
--name "<clusterName>" /
--subscription <subscriptionID>| grep -a5 updateStrategy
"strategyType": "Rack",
"thresholdType": "PercentSuccess",
"thresholdValue": 60,
"waitTimeMinutes": 1
V tomto příkladu se nepodaří zřídit méně než 60 % výpočetních uzlů v racku (v racku podle racku), nasazení clusteru selže. Pokud se úspěšně zřídí 60 % nebo více výpočetních uzlů, nasazení clusteru se přesune na další rack výpočetních uzlů.
Následující příklad je určený pro zákazníka, který používá strategii Rack by Rack s prahovým typem CountSuccess 10 uzlů na rack a 1 minutu pozastavení.
az networkcloud cluster update --name "<clusterName>" /
--resource-group "<resourceGroup>" /
--update-strategy strategy-type="Rack" threshold-type="CountSuccess" /
threshold-value=10 wait-time-minutes=1 /
--subscription <subscriptionID>
Ověření aktualizace:
az networkcloud cluster show --resource-group "<resourceGroup>" /
--name "<clusterName>" /
--subscription <subscriptionID>| grep -a5 updateStrategy
"strategyType": "Rack",
"thresholdType": "CountSuccess",
"thresholdValue": 10,
"waitTimeMinutes": 1
V tomto příkladu se nepodaří zřídit méně než 10 výpočetních uzlů v racku (v racku podle racku), nasazení clusteru selže. Pokud se úspěšně zřídí 10 nebo více výpočetních uzlů, přesune se nasazení clusteru na další rack výpočetních uzlů.
Poznámka:
update-strategy
po spuštění upgradu modulu runtime clusteru nelze změnit. Pokud je nastavená prahová hodnota nižší než 100 %, je možné, že se všechny uzly, které nejsou v pořádku, neupgradují, ale stav Clusteru může stále indikovat, že upgrade byl úspěšný. Informace o řešení potíží s holými počítači najdete v tématu Řešení potíží se serverem Azure Operator Nexus.
Upgrade modulu runtime clusteru pomocí rozhraní příkazového řádku
Pokud chcete provést upgrade modulu runtime, použijte následující příkaz Azure CLI:
az networkcloud cluster update-version --cluster-name "<clusterName>" /
--target-cluster-version "<versionNumber>" /
--resource-group "<resourceGroupName>" /
--subscription <subscriptionID>
Upgrade modulu runtime je dlouhý proces. Upgrade nejprve upgraduje uzly pro správu a následně postupně rack podle racku pro pracovní uzly. Upgrade se považuje za dokončený, když se úspěšně upgraduje 80 % pracovních uzlů na rack a 100 % uzlů správy. Úlohy můžou být ovlivněné, zatímco pracovní uzly v racku probíhají v procesu upgradu, ale úlohy ve všech ostatních rackech nejsou ovlivněné. Vzhledem k tomuto návrhu implementace se doporučuje zvážit umístění úloh.
Upgrade všech uzlů trvá několik hodin v závislosti na tom, kolik racků pro cluster existuje. Kvůli délce procesu upgradu by se měl pravidelně kontrolovat stav podrobností clusteru pro aktuální stav upgradu. Pokud chcete zkontrolovat stav upgradu, podívejte se na podrobný stav clusteru. Tuto kontrolu můžete provést prostřednictvím portálu nebo az CLI.
Pokud chcete zobrazit stav upgradu prostřednictvím webu Azure Portal, přejděte k cílovému prostředku clusteru. Na obrazovce Přehled clusteru je k dispozici podrobný stav spolu s podrobnou stavovou zprávou.
Upgrade clusteru probíhá, když je podrobný stav nastavený na Updating
a podrobný stav Zprávy ukazuje průběh upgradu. Některé příklady průběhu upgradu zobrazené v podrobnéStatusMessage jsou Waiting for control plane upgrade to complete...
, Waiting for nodepool "<rack-id>" to finish upgrading...
atd.
Upgrade clusteru je dokončen, když je podrobný stav nastaven na Running
a podrobnéStatusMessage zobrazí zprávu. Cluster is up and running
Pokud chcete zobrazit stav upgradu prostřednictvím Azure CLI, použijte az networkcloud cluster show
.
az networkcloud cluster show --cluster-name "<clusterName>" /
--resource-group "<resourceGroupName>" /
--subscription <subscriptionID>
Výstupem by měly být informace o cílovém clusteru a měl by se zobrazit podrobný stav clusteru a podrobná stavová zpráva. Pokud chcete získat podrobnější přehled o průběhu upgradu, můžete zkontrolovat stav jednotlivých uzlů v každém racku. Příklad kontroly stavu je uveden v referenční části v části BareMetal Machine role.
Nejčastější dotazy
Identifikace zablokovaného nebo zablokovaného upgradu clusteru
Během upgradu za běhu je možné, že se upgrade nepovede dopředu, ale podrobný stav odráží, že upgrade stále probíhá. Vzhledem k tomu, že dokončení upgradu za běhu může trvat velmi dlouho, není aktuálně zadaná délka časového limitu. Proto doporučujeme pravidelně kontrolovat stav a protokoly clusteru, abyste zjistili, jestli se upgrade nečasově pokouší upgradovat.
Situaci můžeme identifikovat indefinitely attempting to upgrade
tak, že se podíváme na protokoly clusteru, podrobnou zprávu a podrobnou stavovou zprávu. Pokud dojde k vypršení časového limitu, zjistíme, že cluster neustále konkonciuje stejnou neomezenou dobu a nepřechází vpřed. Odsud doporučujeme zkontrolovat protokoly clusteru nebo nakonfigurovat ZÁKON, abyste zjistili, jestli nedošlo k selhání, nebo konkrétní upgrade, který způsobuje nedostatek pokroku.
Selhání hardwaru nevyžaduje opětovné spuštění upgradu
Pokud během upgradu dojde k selhání hardwaru, upgrade modulu runtime bude pokračovat, pokud jsou splněny nastavené prahové hodnoty pro výpočetní a řídicí uzly a správu a řízení. Jakmile je počítač pevný nebo nahrazený, zřídí se s operačním systémem aktuální platformy runtime, který obsahuje cílovou verzi modulu runtime.
Pokud dojde k selhání hardwaru a upgrade modulu runtime selže, protože pro výpočetní a řídicí uzly nebyly splněny prahové hodnoty, může být potřeba provést opětovné spuštění upgradu modulu runtime. V závislosti na tom, kdy došlo k selhání a stavu jednotlivých serverů v racku. Pokud se rack aktualizoval před selháním, při opětovném zřízení uzlů by se použila upgradovaná verze modulu runtime. Pokud se specifikace racku neaktualizovala na upgradovanou verzi modulu runtime před selháním hardwaru, zřídí se počítač s předchozí verzí modulu runtime. Pokud chcete upgradovat na novou verzi modulu runtime, odešlete novou žádost o upgrade clusteru. Upgradují se pouze uzly s předchozí verzí modulu runtime. Hostitelé, kteří byli úspěšní v předchozí akci upgradu, nebudou.
Po upgradu za běhu se v clusteru zobrazí stav zřizování selhal.
Během upgradu za běhu cluster přejde do stavu Upgrading
. Pokud se upgrade modulu runtime nezdaří, cluster přejde do Failed
stavu zřizování. Součásti infrastruktury (např. zařízení úložiště) můžou během upgradu způsobit selhání. V některých scénářích může být nutné diagnostikovat selhání pomocí podpory Microsoftu.