Sdílet prostřednictvím


Použijte aplikaci Orchestrace oprav

Důležité

Od 30. dubna 2019 se už nepodporuje aplikace orchestrace oprav verze 1.2.* . Nezapomeňte upgradovat na nejnovější verzi.

Aplikace orchestrace oprav oprav (POA) je obálka kolem služby Azure Service Fabric Repair Manager, která umožňuje plánování oprav operačního systému založeného na konfiguraci pro clustery hostované mimo Azure. Pro clustery, které nejsou hostovány na Azure, není vyžadováno POA, ale plánování instalace oprav pomocí aktualizační domény je nutné k opravě hostitelů clusteru Service Fabric bez výpadků.

POA je aplikace Service Fabric, která automatizuje opravy operačního systému v clusteru Service Fabric bez výpadků.

PoA poskytuje následující funkce:

  • Automatická instalace aktualizace operačního systému. Aktualizace operačního systému se automaticky stáhnou a nainstalují. Uzly clusteru se podle potřeby restartují bez výpadků clusteru.

  • Integrace oprav a stavu pracujících s clustery I když POA aplikuje aktualizace, monitoruje stav uzlů klastru. Uzly clusteru se aktualizují postupně po jednom uzlu nebo v jedné aktualizační doméně. Pokud kvůli procesu oprav dojde ke snížení stavu clusteru, oprava se zastaví, aby se zabránilo zhoršení problému.

Interní podrobnosti o POA

PoA se skládá z následujících dílčích součástí:

  • Služba koordinátoru: Za tuto stavovou službu zodpovídá:

    • Koordinace úlohy služby Windows Update v celém clusteru
    • Uložení výsledku dokončených operací služby Windows Update
  • Služba agenta uzlu: Tato bezstavová služba běží na všech uzlech clusteru Service Fabric. Služba zodpovídá za:

    • Spuštění agenta uzlu NTService.
    • Monitorování agenta uzlu NTService
  • Agent uzlu NTService: Tato služba systému Windows NT běží na vyšší úrovni oprávnění (SYSTEM). Naproti tomu služba agenta uzlu a koordinační služba běží na nižší úrovni oprávnění (NETWORK SERVICE). Služba zodpovídá za provádění následujících úloh služby Windows Update na všech uzlech clusteru:

    • Zakázání automatických aktualizací Windows na uzlu
    • Stahování a instalace aktualizací Windows podle zásad, které uživatel zadal.
    • Restartování počítače po instalaci aktualizací Windows
    • Nahrání výsledků aktualizací Systému Windows do koordinační služby
    • Hlášení zdravotních zpráv v případě, že operace selže po vyčerpání všech pokusů.

Poznámka:

PoA používá službu Service Fabric Repair Manager k zakázání nebo povolení uzlu a provádění kontrol stavu. Úloha opravy vytvořená nástrojem POA sleduje průběh služby Windows Update pro každý uzel.

Požadavky

Poznámka:

Požadovaná minimální verze rozhraní .NET Framework je 4.6.

Povolte službu Správce oprav (pokud ještě není spuštěná)

PoA vyžaduje, aby byla v clusteru povolená služba Správce oprav.

Clustery Azure

Clustery Azure na úrovni silver durability mají ve výchozím nastavení povolenou službu Repair Manager. Clustery Azure ve zlaté úrovni stálosti můžou nebo nemusí mít povolenou službu Správce oprav v závislosti na tom, kdy byly tyto clustery vytvořeny. Clustery Azure v bronzové úrovni stálosti ve výchozím nastavení nemají povolenou službu Správce oprav. Pokud je služba už povolená, můžete ji zobrazit v části systémových služeb v Service Fabric Exploreru.

Portál Azure

Správce oprav můžete povolit na webu Azure Portal při nastavování clusteru. Při konfiguraci clusteru vyberte možnost Zahrnout správce oprav v části Funkce doplňku.

Obrázek povolení Správce oprav na webu Azure Portal

Model nasazení Azure Resource Manageru

Případně můžete pomocí modelu nasazení Azure Resource Manager povolit službu Repair Manager v nových a existujících clusterech Service Fabric. Získejte šablonu pro cluster, který chcete nasadit. Můžete použít ukázkové šablony nebo vytvořit vlastní šablonu modelu nasazení Azure Resource Manager.

Pokud chcete povolit službu Repair Manager pomocí šablony modelu nasazení Azure Resource Manager, postupujte takto:

  1. Zkontrolujte, jestli apiVersion je pro prostředek Microsoft.ServiceFabric/clusters nastavená verze 2017-07-01-preview. Pokud se liší, musíte aktualizovat apiVersion na verzi 2017-07-01-preview nebo novější:

    {
        "apiVersion": "2017-07-01-preview",
        "type": "Microsoft.ServiceFabric/clusters",
        "name": "[parameters('clusterName')]",
        "location": "[parameters('clusterLocation')]",
        ...
    }
    
  2. Povolte službu Správce oprav tak, že za fabricSettings oddíl přidáte následující addonFeatures část:

    "fabricSettings": [
        ...      
    ],
    "addonFeatures": [
        "RepairManager"
    ],
    
  3. Po aktualizaci šablony clusteru s těmito změnami je použijte a nechte aktualizaci dokončit. Teď můžete vidět službu Správce oprav spuštěnou v clusteru. V části systémových služeb v Service Fabric Exploreru se nazývá fabric:/System/RepairManagerService .

Samostatné místní clustery

Pokud chcete povolit službu Správce oprav v novém nebo existujícím clusteru Service Fabric, můžete použít nastavení konfigurace pro samostatný cluster Windows.

Povolení služby Správce oprav:

  1. Zkontrolujte, jestli apiVersion je v obecných konfiguracích clusteru nastavená hodnota 04–2017 nebo novější, jak je znázorněno tady:

    {
        "name": "SampleCluster",
        "clusterConfigurationVersion": "1.0.0",
        "apiVersion": "04-2017",
        ...
    }
    
  2. Povolte službu Správce oprav tak, že za fabricSettings oddíl přidáte následující addonFeatures část, jak je znázorněno tady:

    "fabricSettings": [
        ...      
    ],
    "addonFeatures": [
        "RepairManager"
    ],
    
  3. Aktualizujte manifest clusteru pomocí těchto změn pomocí aktualizovaného manifestu clusteru, vytvořte nový cluster nebo upgradujte konfiguraci clusteru.

    Po spuštění clusteru s aktualizovaným manifestem clusteru se zobrazí služba Správce oprav spuštěná v clusteru. Označuje se jako fabric:/System/RepairManagerService a je v části systémových služeb v Service Fabric Exploreru.

Konfigurace aktualizací Windows pro všechny uzly

Automatické aktualizace Windows můžou vést ke ztrátě dostupnosti, protože několik uzlů clusteru se může restartovat současně. PoA se ve výchozím nastavení pokusí zakázat automatické aktualizace Windows na každém uzlu clusteru. Pokud jsou ale nastavení spravovaná správcem nebo zásadami skupiny, doporučujeme nastavit zásadu služby Windows Update na "Oznámit před stažením".

Stažení balíčku aplikace

Pokud chcete stáhnout balíček aplikace, přejděte na stránku vydání aplikace Patch Orchestration na GitHubu.

Nakonfigurujte chování POA

Chování poa můžete nakonfigurovat tak, aby vyhovovalo vašim potřebám. Přepište výchozí hodnoty vložením parametru aplikace během vytváření nebo aktualizace aplikace. Parametry aplikace můžete zadat pomocí ApplicationParameter pro rutiny Start-ServiceFabricApplicationUpgrade nebo New-ServiceFabricApplication.

Parametr Typ Podrobnosti
MaximálníVýsledkyKeUloženíMezipaměti Dlouhý Maximální počet výsledků služby Windows Update, které by se měly ukládat do mezipaměti.

Výchozí hodnota je 3000 za předpokladu, že:
  – Počet uzlů je 20.
  – Počet aktualizací uzlu za měsíc je 5.
  – Počet výsledků na operaci může být 10.
  - Výsledky za poslední tři měsíce by měly být uloženy.
PravidlaSchvalováníÚkolů Výčet
{ NodeWise, UpgradeDomainWise }
TaskApprovalPolicy označuje zásadu, kterou má koordinátorová služba používat k instalaci aktualizací Windows napříč uzly clusteru Service Fabric.

Povolené hodnoty jsou:
NodeWise: Aktualizace Windows se instalují po jednom uzlu.
UpgradeDomainWise: Aktualizace systému Windows se instalují po jedné aktualizační doméně. (Na maximum můžou všechny uzly patřící aktualizační doméně přejít na aktualizaci Windows.)

Pokud chcete pomoct s rozhodováním, které zásady jsou pro váš cluster nejvhodnější, přečtěte si část Nejčastější dotazy .
Množství úložiště pro logy v MB Dlouhý
(Výchozí: 1024)
Maximální velikost protokolů aplikace orchestrace oprav v MB, které je možné uchovávat místně na uzlech.
WUQuery řetězec
(Výchozí: IsInstalled=0)
Dotaz na získání aktualizací Windows Další informace najdete v tématu WuQuery.
Instalovat pouze aktualizace systému Windows OS Booleova logika
(výchozí hodnota: false)
Tento příznak použijte k řízení, které aktualizace se mají stáhnout a nainstalovat. Následující hodnoty jsou povolené.
true – Nainstaluje pouze aktualizace operačního systému Windows.
false – Nainstaluje všechny dostupné aktualizace na počítač.
WUOperationTimeOutInMinutes Int
(Výchozí: 90)
Určuje časový limit jakékoli operace služby Windows Update (vyhledávání nebo stažení nebo instalace). Pokud operace není dokončena v zadaném časovém limitu, je přerušena.
WURescheduleCount Int
(Výchozí: 5)
Maximální počet, kolikrát služba přeplánuje aktualizaci Systému Windows, pokud operace trvale selže.
WURescheduleTimeInMinutes Int
(Výchozí: 30)
Interval, ve kterém služba přeplánuje aktualizace Systému Windows, pokud selhání přetrvává.
WuFrequency Řetězec oddělený čárkami (výchozí hodnota: týdně, středa, 7:00:00) Frekvence instalace aktualizací Systému Windows. Formát a možné hodnoty:
– Měsíčně, DD, HH:MM:SS (například: Měsíční, 5, 12:22:32). Povolené hodnoty pro pole DD (den) jsou čísla od 1 do 28 a poslední.
- Týdně, Den, HH:MM:SS (příklad: Týdně, Úterý, 12:22:32)
- Denně, HH:MM:SS (například: Denně, 12:22:32)
- MonthlyByWeekAndDay, Week, Day, HH:MM:SS (příklad: MonthlyByWeekAndDay, 2, Friday, 21:00:00 označuje 9:00 UTC v pátek 2. týdne každého měsíce)
- Žádná indikuje, že by se neměly provádět aktualizace Windows.

Časy jsou ve standardu UTC.
AcceptWindowsUpdateEula Boolean
(Výchozí hodnota: true)
Nastavením tohoto příznaku aplikace přijme licenční smlouvu End-User pro službu Windows Update jménem vlastníka počítače.

Návod

Pokud chcete, aby aktualizace systému Windows proběhly okamžitě, nastavte WUFrequency s ohledem na čas nasazení aplikace. Předpokládejme například, že máte testovací cluster s pěti uzly a plánujete nasadit aplikaci v přibližně 5:00 UTC. Pokud předpokládáte, že upgrade nebo nasazení aplikace trvá maximálně 30 minut, nastavte wuFrequency na hodnotu Daily, 17:30:00.

Nasazení POA

  1. Dokončete všechny nezbytné kroky pro přípravu clusteru.

  2. Nasazujte POA stejně jako jakoukoli jinou aplikaci Service Fabric. Pokud ho chcete nasadit pomocí PowerShellu, přečtěte si téma Nasazení a odebrání aplikací pomocí PowerShellu.

  3. Pokud chcete aplikaci nakonfigurovat v době nasazení, předejte ApplicationParameter ji rutině New-ServiceFabricApplication . Pro usnadnění vašeho pohodlí jsme poskytli skript Deploy.ps1 spolu s aplikací. Použití skriptu:

    • Připojte se ke clusteru Service Fabric pomocí Connect-ServiceFabricCluster.
    • Spusťte skript PowerShellu Deploy.ps1 s odpovídající ApplicationParameter hodnotou.

Poznámka:

Ponechte skript a složku aplikace PatchOrchestrationApplication ve stejném adresáři.

Vylepšení POA

Pokud chcete upgradovat verzi POA pomocí PowerShellu, postupujte podle pokynů v upgradu aplikace Service Fabric pomocí PowerShellu.

Odstranit POA

Pokud chcete aplikaci odebrat, postupujte podle pokynů v tématu Nasazení a odebrání aplikací pomocí PowerShellu.

Pro vaše pohodlí jsme společně s aplikací poskytli skript Undeploy.ps1. Použití skriptu:

  • Připojte se ke clusteru Service Fabric pomocí Connect-ServiceFabricCluster.
  • Spusťte skript PowerShellu Undeploy.ps1.

Poznámka:

Ponechte skript a složku aplikace PatchOrchestrationApplication ve stejném adresáři.

Zobrazení výsledků služby Windows Update

PoA zveřejňuje rozhraní REST API pro zobrazení historických výsledků uživatelům. Tady je příklad výsledku JSON:

[
  {
    "NodeName": "_stg1vm_1",
    "WindowsUpdateOperationResults": [
      {
        "OperationResult": 0,
        "NodeName": "_stg1vm_1",
        "OperationTime": "2019-05-13T08:44:56.4836889Z",
        "OperationStartTime": "2019-05-13T08:44:33.5285601Z",
        "UpdateDetails": [
          {
            "UpdateId": "7392acaf-6a85-427c-8a8d-058c25beb0d6",
            "Title": "Cumulative Security Update for Internet Explorer 11 for Windows Server 2012 R2 (KB3185319)",
            "Description": "A security issue has been identified in a Microsoft software product that could affect your system. You can help protect your system by installing this update from Microsoft. For a complete listing of the issues that are included in this update, see the associated Microsoft Knowledge Base article. After you install this update, you may have to restart your system.",
            "ResultCode": 0,
            "HResult": 0
          }
        ],
        "OperationType": 1,
        "WindowsUpdateQuery": "IsInstalled=0",
        "WindowsUpdateFrequency": "Daily,10:00:00",
        "RebootRequired": false
      }
    ]
  },
  ...
]

Pole JSON jsou popsaná v následující tabulce:

(No improvements necessary, the translation is already optimal.) Hodnoty Podrobnosti
OperationResult 0 – Úspěch
1. Úspěch s chybami
2. Selhání
3 . Přerušeno
4 - Přerušeno kvůli překročení časového limitu
Označuje výsledek celkové operace, která obvykle zahrnuje instalaci jedné nebo více aktualizací.
Kód výsledku Stejné jako OperationResult Toto pole označuje výsledek operace instalace pro jednotlivé aktualizace.
Typ operace 1 . Instalace
0 – Vyhledávání a stahování
Ve výchozím nastavení je instalace jediným typem OperationType, který se zobrazuje ve výsledcích.
WindowsUpdateQuery Výchozí hodnota je IsInstalled=0. Dotaz služby Windows Update, který se použil k hledání aktualizací. Další informace najdete v tématu WuQuery.
Je vyžadován restart true – bylo vyžadováno restartování
false – restartování se nepožadovalo
Určuje, jestli se k dokončení instalace aktualizací vyžadovalo restartování.
ČasZačátkuOperace Datum a čas Označuje čas, kdy byla spuštěna operace (Stažení/instalace).
Čas operace Datum a čas Označuje čas dokončení operace (Stažení/instalace).
HResult 0 – úspěšné
jiné – selhání
Označuje důvod selhání aktualizace Systému Windows s id aktualizace "7392acaf-6a85-427c-8a8d-058c25beb0d6".

Pokud ještě není naplánovaná žádná aktualizace, je výsledek JSON prázdný.

Přihlaste se ke clusteru a odešlete dotaz na výsledky služby Windows Update. Zjistěte IP adresu repliky pro primární adresu koordinační služby a v prohlížeči otevřete následující adresu URL: http://<REPLICA-IP>:<ApplicationPort>/PatchOrchestrationApplication/v1/GetWindowsUpdateResults.

Koncový bod REST pro koordinační službu má dynamický port. Pokud chcete zkontrolovat přesnou adresu URL, podívejte se do Service Fabric Explorer. Například výsledky jsou k dispozici na adrese http://10.0.0.7:20000/PatchOrchestrationApplication/v1/GetWindowsUpdateResults.

Obrázek koncového bodu REST

Pokud je v clusteru povolený reverzní proxy server, můžete k adrese URL přistupovat i mimo cluster.

Koncový bod, který potřebujete použít, je http://<SERVERURL>:<REVERSEPROXYPORT>/PatchOrchestrationApplication/CoordinatorService/v1/GetWindowsUpdateResults.

Pokud chcete v clusteru povolit reverzní proxy server, postupujte podle pokynů v reverzním proxy serveru v Azure Service Fabric.

Výstraha

Po nakonfigurování reverzního proxy serveru jsou všechny mikroslužby v clusteru, které zpřístupňují koncový bod HTTP, adresovatelné mimo cluster.

Události diagnostiky a zdraví

Tato část popisuje, jak řešit nebo diagnostikovat problémy s aktualizacemi oprav prostřednictvím POA v clusterech Service Fabric.

Poznámka:

Pokud chcete získat řadu následujících vyvolaných vylepšení samoobslužné diagnostiky, měli byste mít nainstalovanou verzi POA 1.4.0 nebo novější.

Agent uzlu NTService vytvoří úlohy opravy pro instalaci aktualizací na uzly. Každý úkol pak připraví služba koordinátora podle zásad schvalování úkolů. Nakonec jsou připravené úkoly schváleny Správcem oprav, který neschvaluje žádný úkol, pokud je cluster ve špatném stavu.

Abychom vám pomohli pochopit, jak aktualizace poběží na uzlu, pojďme krok za krokem:

  1. NodeAgentNTService, spuštěný na každém uzlu, hledá dostupné aktualizace Windows v naplánovaném čase. Pokud jsou k dispozici aktualizace, stáhne je na uzlu.

  2. Po stažení aktualizací vytvoří služba NTService agenta uzlu odpovídající úlohu opravy uzlu s názvem POS___<unique_id>. Tyto úlohy opravy můžete zobrazit pomocí rutiny Get-ServiceFabricRepairTask nebo pomocí SFX v části podrobností uzlu. Po vytvoření úlohy opravy se rychle přesune do deklarovaného stavu.

  3. Služba koordinátora pravidelně hledá úlohy opravy v nárokovaném stavu a aktualizuje je na přípravný stav na základě TaskApprovalPolicy. Pokud je TaskApprovalPolicy nakonfigurovaný tak, aby byl NodeWise, je úloha opravy odpovídající uzlu připravena pouze v případě, že žádná jiná úloha opravy není aktuálně ve stavu Příprava, Schváleno, Provádění nebo Obnovení .

    Podobně v případě UpgradeWise TaskApprovalPolicy existují úlohy v předchozích stavech pouze pro uzly, které patří do stejné aktualizační domény. Po přesunutí úlohy opravy do stavu Příprava je odpovídající uzel Service Fabric zneaktivněn s nastaveným záměrem Restartovat.

    POA verze 1.4.0 a novější zaznamenávají události s vlastností ClusterPatchingStatus ve službě CoordinatorService, aby zobrazily uzly, které jsou aktualizovány. Aktualizace se instalují na _poanode_0, jak je znázorněno na následujícím obrázku:

    Obrázek stavu oprav clusteru

  4. Po zakázání uzlu se úloha opravy přesune do stavu provádění.

    Poznámka:

    Uzel, který je zablokovaný ve stavu Zakázáno, může blokovat novou úlohu opravy, která zastaví operaci oprav v clusteru.

  5. Když je úloha opravy ve stavu Provádění , zahájí se instalace opravy na daném uzlu. Po instalaci opravy se uzel může nebo nemusí restartovat v závislosti na opravě. Dále se úloha opravy přesune do stavu obnovení, který uzel znovu aktivuje. Úloha opravy se pak označí jako dokončená.

    Ve verzích POA 1.4.0 a novějších můžete najít stav aktualizace zobrazením zdravotních událostí ve službě NodeAgentService s vlastností WUOperationStatus-NodeName<>. Zvýrazněné části na následujících obrázcích zobrazují stav aktualizací Windows na uzlech poanode_0 a poanode_2:

    Snímek obrazovky zobrazuje okno konzoly se stavem operace služby Windows Update, kde je zvýrazněn poanode_0.

    Snímek obrazovky zobrazuje okno konzoly se stavem operace Windows Update, ve kterém je zvýrazněn poanode_1.

    Podrobnosti můžete získat také pomocí PowerShellu. Provedete to tak, že se připojíte ke clusteru a načtete stav úlohy opravy pomocí get-ServiceFabricRepairTask.

    V následujícím příkladu je úloha "POS__poanode_2_125f2969-933c-4774-85d1-ebdf85e79f15" ve stavu DownloadComplete . To znamená, že aktualizace byly staženy na poanode_2 uzlu a instalace se pokusí po přesunutí úlohy do stavu Provádění .

     D:\service-fabric-poa-bin\service-fabric-poa-bin\Release> $k = Get-ServiceFabricRepairTask -TaskId "POS__poanode_2_125f2969-933c-4774-85d1-ebdf85e79f15"
    
     D:\service-fabric-poa-bin\service-fabric-poa-bin\Release> $k.ExecutorData
     {"ExecutorSubState":2,"ExecutorTimeoutInMinutes":90,"RestartRequestedTime":"0001-01-01T00:00:00"}
    

    Pokud se najdou další problémy, přihlaste se k virtuálnímu počítači nebo virtuálním počítačům a seznamte se s nimi pomocí protokolů událostí Windows. Dříve uvedená úloha opravy může existovat pouze v následujících dílčích stavech exekutoru:

    ExecutorSubState Popis
    None=1 Znamená to, že na uzlu nedochází k probíhající operaci. Stav může být v přechodu.
    DownloadCompleted=2 Implikuje, že operace stahování byla dokončena s úspěchem, částečným selháním nebo selháním.
    InstallationApproved=3 Implikuje, že operace stahování byla dokončena dříve a Správce oprav schválil instalaci.
    InstallationInProgress=4 Odpovídá stavu provádění úlohy opravy.
    InstallationCompleted=5 Implikuje, že instalace byla dokončena s úspěchem, částečným úspěchem nebo selháním.
    RestartRequested=6 Naznačuje, že instalace opravy byla dokončena a na uzlu je potřeba provést restart.
    RestartNotNeeded=7 Implikuje, že restartování nebylo potřeba po dokončení instalace opravy.
    RestartDokončen=8 Znamená to, že restartování bylo úspěšně dokončeno.
    OperationCompleted=9 Operace služby Windows Update byla úspěšně dokončena.
    OperaceZrušena=10 Implikuje, že operace služby Windows Update byla přerušena.
  6. Po dokončení pokusu o aktualizaci uzlu ve verzích 1.4.0 a novějších se v NodeAgentService publikuje událost s vlastností WUOperationStatus-[NodeName] a upozorní vás, až se další pokus o stažení a instalaci aktualizací Windows spustí. Toto se zobrazí na následujícím obrázku:

    Snímek obrazovky znázorňující okno konzoly se stavem operace Služby NodeAgentService ve službě Windows Update

Protokoly diagnostiky

Protokoly aplikace orchestrace oprav se shromažďují jako součást protokolů modulu runtime Service Fabric.

Protokoly můžete zachytit pomocí diagnostického nástroje nebo procesu dle vašeho výběru. PoA používá k protokolování událostí prostřednictvím zdroje událostí následující pevné ID zprostředkovatele:

  • e39b723c-590c-4090-abb0-11e3e6616346
  • fc0028ff-bfdc-499f-80dc-ed922c52c5e9
  • 24afa313-0d3b-4c7c-b485-1047fd964b60
  • 05dc046c-60e9-4ef7-965e-91660adffa68

Sestavy stavu

PoA také publikuje zprávy o stavu služby uzlového agenta nebo služby koordinátora v následujících scénářích:

  • Agent uzlu NTService je v výpadku

    Pokud je služba Node Agent NTService na uzlu mimo provoz, vygeneruje se zdravotní zpráva na úrovni varování vůči službě agenta uzlu.

  • Služba Správce oprav není povolená.

    Pokud se v clusteru nenajde služba Správce oprav, vygeneruje se zpráva o stavu na úrovni upozornění pro službu koordinátora.

Nejčastější dotazy

Otázka: Proč se můj cluster zobrazuje ve stavu chyby, když je spuštěný POA?

A: Během procesu instalace funkce POA zakáže nebo restartuje uzly, což může dočasně vést ke clusteru, který není v pořádku.

V závislosti na zásadách aplikace může během operace opravy dojít k výpadku jednoho uzlu nebo celá aktualizační doména může jít dolů najednou.

Na konci instalace aktualizací Windows se uzly po restartování znovu spustí.

V následujícím příkladu cluster dočasně přešl do chybového stavu, protože došlo k výpadku dvou uzlů a došlo k porušení zásad MaxPercentageUnhealthyNodes. Chyba je dočasná, dokud nebude možné zahájit operaci oprav.

Obrázek clusteru, který není v pořádku

Pokud problém přetrvává, projděte si část Řešení potíží.

Otázka: Co můžu dělat, když je poA ve stavu upozornění?

A: Zkontrolujte, zda zpráva o stavu vztahující se k aplikaci indikovala hlavní příčinu. Upozornění obvykle obsahuje podrobnosti o problému. Pokud je problém přechodný, očekává se, že se aplikace automaticky obnoví.

Otázka: Co můžu dělat, když můj cluster není v pořádku a potřebuji provést urgentní aktualizaci operačního systému?

A: POA neinstaluje aktualizace, pokud cluster není v pořádku. Zkuste cluster převést do stavu v pořádku a odblokujte pracovní postup POA.

Otázka: Mám pro svůj cluster nastavit TaskApprovalPolicy jako NodeWise nebo UpgradeDomainWise?

A: Nastavení UpgradeDomainWise urychlí celkovou opravu clusteru tím, že paralelně opraví všechny uzly, které patří do aktualizační domény. Během procesu nejsou uzly, které patří do celé aktualizační domény, nedostupné (ve stavu Zakázáno).

Naproti tomu nastavení NodeWise opravuje současně pouze jeden uzel, což by znamenalo, že celkové opravy clusteru můžou trvat déle. Během procesu oprav by však nebyl k dispozici maximálně jeden uzel (v zakázaném stavu).

Pokud váš cluster dokáže tolerovat provoz na N-1 počtu aktualizačních domén během cyklu oprav (kde N je celkový počet aktualizačních domén v clusteru), můžete zásadu nastavit jako UpgradeDomainWise. V opačném případě ho nastavte na NodeWise.

Otázka: Kolik času trvá oprava uzlu?

A: Oprava uzlu může trvat několik minut (například aktualizace definic v programu Windows Defender) až hodiny (například kumulativní aktualizace Windows). Doba potřebná k opravě uzlu závisí hlavně na:

  • Velikost aktualizací
  • Počet aktualizací, které se musí použít v okně oprav.
  • Doba potřebná k instalaci aktualizací, restartování uzlu (v případě potřeby) a dokončení kroků instalace po restartování.
  • Výkon virtuálního počítače nebo počítače a síťové podmínky.

Otázka: Jak dlouho trvá oprava celého clusteru?

A: Doba potřebná k opravě celého clusteru závisí na:

  • Doba potřebná k opravě uzlu.

  • Zásady koordinační služby. Výchozí zásada NodeWise vede k opravě pouze jednoho uzlu najednou, který je pomalejší než použití příkazu UpgradeDomainWise.

    Příklad: Pokud oprava uzlu trvá přibližně 1 hodinu, oprava clusteru 20 uzlů (stejného typu uzlů) s 5 aktualizačními doménami, z nichž každá obsahuje 4 uzly, vyžaduje:

    • Pro NodeWise: ~20 hodin.
    • Pro UpgradeDomainWise: ~5 hodin.
  • Zatížení clusteru. Každá operace opravy vyžaduje opětovné přidělení úlohy zákazníka do jiných dostupných uzlů v clusteru. Uzel, který je opravován, by během této doby byl ve stavu Zakazování. Pokud se cluster blíží k maximálnímu zatížení, proces vypnutí bude trvat déle. Proto se může zdát, že celkový proces oprav je v takových stresovaných podmínkách pomalý.

  • Selhání stavu clusteru během oprav Jakékoli sníženístavu clusteru by přerušilo proces oprav. Tento problém by se přidal do celkového času potřebného k opravě celého clusteru.

Otázka: Proč se ve výsledcích služby Windows Update zobrazují některé aktualizace získané prostřednictvím rozhraní REST API, ale ne v historii služby Windows Update na počítači?

A: Některé aktualizace produktů se zobrazují jenom v jejich vlastní historii aktualizací nebo oprav. Aktualizace Windows Defenderu se například můžou nebo nemusí zobrazovat v historii služby Windows Update ve Windows Serveru 2016.

Otázka: Dá se poa použít k opravě vývojového clusteru (cluster s jedním uzlem)?

A: Ne, poa nejde použít k opravě clusteru s jedním uzlem. Toto omezení je záměrné, protože systémové služby Service Fabric nebo jiné zákaznické aplikace by utrpěly výpadek. Proto by opravy nikdy neschválil vedoucí oprav.

Otázka: Jak opravím uzly clusteru v Linuxu?

A: Informace o orchestraci aktualizací v Linuxu najdete v tématu Automatické upgrady imagí operačního systému ve škálovací sadě virtuálních počítačů Azure.

Otázka: Proč cyklus aktualizace trvá tak dlouho?

Odpověď: Dotaz na výsledek JSON, zadejte cyklus aktualizace pro všechny uzly a potom můžete zkusit zjistit čas potřebný instalací aktualizace na každém uzlu pomocí OperationStartTime a OperationTime (OperationCompletionTime).

Pokud existuje velké časové okno, ve kterém neprobíhá žádná aktualizace, může být cluster v chybovém stavu a v důsledku toho Repair Manager nemůže schválit žádné úlohy opravy POA. Pokud instalace aktualizace na jakémkoli uzlu trvá dlouhou dobu, nemusí být tento uzel chvíli aktualizován. Mnoho aktualizací může čekat na instalaci, což může vést ke zpožděním.

Je také možné, že opravy uzlů jsou zablokovány, protože uzel je zaseknutý ve stavu Zakázání. K tomu obvykle dochází, protože zakázání uzlu může vést k situacím se ztrátou kvoru nebo dat.

Otázka: Proč musí být uzel při aktualizaci POA zakázán?

A: POA zakáže uzel se záměrem Restartování, který zastaví nebo přesune všechny služby Service Fabric spuštěné na uzlu. Funkce POA zajišťuje, že aplikace nebudou používat kombinaci nových a starých knihoven DLL, proto doporučujeme neopravovat uzel bez jeho zakázání.

Otázka: Jaký je maximální počet uzlů, které je možné aktualizovat pomocí poa?

A: PoA používá Service Fabric Repair Manager k vytvoření úloh opravy uzlů pro aktualizace. Nelze však současně prezentovat více než 250 úloh opravy. V současné době poA vytváří úlohy opravy pro každý uzel najednou, takže POA nemůže aktualizovat více než 250 uzlů v clusteru.

Upozornění a omezení odpovědnosti

  • PoA přijímá licenční smlouvu End-User pro službu Windows Update jménem uživatele. Volitelně můžete nastavení vypnout v konfiguraci aplikace.

  • PoA shromažďuje telemetrii ke sledování využití a výkonu. Telemetrie aplikace se řídí nastavením nastavení telemetrie modulu runtime Service Fabric (které je ve výchozím nastavení zapnuté).

Řešení problémů

Tato část obsahuje možná řešení potíží s opravami uzlů.

Uzel se nevrací do provozního stavu.

  • Uzel může být zablokovaný ve stavu Deaktivace, protože:

    • Čeká se na bezpečnostní kontrolu. Pokud chcete tuto situaci napravit, ujistěte se, že je v pořádku dostatek uzlů.
  • Uzel může být zablokovaný ve stavu Zakázáno, protože:

    • Byla zakázána ručně.
    • Byla deaktivována kvůli probíhající úloze Azure infrastruktury.
    • Služba POA ho dočasně zakázala, aby mohl být opraven uzel.
  • Uzel může být zablokovaný ve stavu nefunkčnosti, protože:

    • Byl nastaven do neaktivního stavu ručně.
    • Probíhá restart (což může být vyvoláno POA).
    • Má vadný virtuální počítač nebo počítač nebo má problémy s připojením k síti.

Aktualizace byly na některých uzlech přeskočeny.

POA se pokusí nainstalovat aktualizaci Windows podle zásad pro přeplánování. Služba se pokusí obnovit uzel a přeskočit aktualizaci podle zásad aplikace.

V takovém případě se proti službě agenta uzlu vygeneruje sestava stavu s úrovní upozornění. Výsledek služby Windows Update obsahuje také možný důvod selhání.

Při instalaci aktualizace dojde k chybě stavu clusteru.

Chybná aktualizace Systému Windows může snížit stav aplikace nebo clusteru na konkrétním uzlu nebo v aktualizační doméně. PoA ukončí všechny následné operace služby Windows Update, dokud cluster znovu není v pořádku.

Správce musí intervenovat a určit, proč aplikace nebo cluster nejsou kvůli službě Windows Update v pořádku.

Poznámky k verzi POA

Poznámka:

V případě POA verze 1.4.0 a novější najdete poznámky k verzi a vydané verze na stránce vydání aplikace Orchestraation oprav na GitHubu.

Verze 1.1.0

  • Veřejná verze

Verze 1.1.1

  • Opravili jsme chybu v SetupEntryPoint nodeAgentService, která bránila instalaci NodeAgentNTService.

Verze 1.2.0

  • Opravy chyb souvisejících s pracovním postupem restartování systému
  • Oprava chyby při vytváření úloh RM, kvůli které nedocházelo ke kontrole stavu během přípravy opravním úloh tak, jak se očekávalo.
  • Změna režimu spouštění pro službu Windows POANodeSvc z automatické na zpožděné automatické.

Verze 1.2.1

  • Oprava chyby v pracovním postupu snižování kapacity clusteru. Zavedli jsme logiku uvolňování paměti pro úlohy opravy POA, které patří k neexistujícím uzlům.

Verze 1.2.2

  • Různé opravy chyb
  • Binární soubory jsou teď podepsané.
  • Přidání odkazu sfpkg pro aplikaci.

Verze 1.3.0

  • Nastavení InstallWindowsOSOnlyUpdates na false teď nainstaluje všechny dostupné aktualizace.
  • Změnili jsme logiku zakázání automatických aktualizací. Opravili jsme chybu, kdy se automatické aktualizace neaktivovaly na Serveru 2016 a novějším.
  • Parametrizované omezení umístění pro obě mikroslužby POA pro pokročilé případy použití.

Verze 1.3.1

  • Oprava regrese, kdy POA 1.3.0 nebude fungovat na Windows Serveru 2012 R2 nebo starším kvůli selhání zakázání automatických aktualizací.
  • Oprava chyby, kdy je konfigurace InstallWindowsOSOnlyUpdates vždy vybrána jako True.
  • Změna výchozí hodnoty InstallWindowsOSOnlyUpdates na False

Verze 1.3.2

  • Oprava problému, který má vliv na životní cyklus oprav na uzlu, pokud existují uzly s názvem, který je podmnožinou názvu aktuálního uzlu. U takových uzlů je možné, že se zmeškaly opravy nebo čeká na restartování.