共用方式為


透過PowerShell更新 Azure 本機版本 23H2

適用於:Azure 本機版本 23H2

本文說明如何透過PowerShell將解決方案更新套用至 Azure 本機。

本文中的程式同時適用於單一節點和多節點系統,這些系統執行已安裝協調器(生命週期管理員)的最新版 Azure Local。 如果您的系統是透過 Azure Local 版本 23H2 的新部署所建立,則協調器會自動安裝為部署的一部分。

重要

此處所述的程式僅適用於從某個版本的 Azure Local 版本 23H2 更新為另一個更高版本時。 如需舊版更新的相關信息,請參閱 更新 Azure 本機版本 22H2 的叢集。

關於解決方案更新

Azure 本機解決方案更新可以包含平臺、服務和解決方案擴充功能更新。 如需這些類型更新的詳細資訊,請參閱 關於 Azure 本機版本 23H2 的更新。

當您套用解決方案更新時,以下是您採取的高階步驟:

  1. 請確定所有必要條件都已完成。
  2. 透過遠端 PowerShell 連線到您的 Azure 本機實例。
  3. 確認目前的已安裝軟體版本,並確認您的叢集狀況良好。
  4. 探索可用的更新,並篩選您可以套用至系統的更新。
  5. (建議)預先下載更新並評估系統更新整備程度。
  6. 安裝更新並追蹤更新的進度。 視需要監視詳細進度。
  7. 確認已安裝的更新版本。

安裝更新所需的時間會根據下列因素而有所不同:

  • 更新的內容。
  • 在您的系統上載入 。
  • 系統中的電腦數目。
  • 使用的硬體類型。
  • 所使用的解決方案延伸模組。

下表摘要說明一般單一或多節點系統的近似時間估計值:

系統/時間 健康情況檢查的時間
hh:mm:ss
安裝更新的時間
hh:mm:ss
單一節點 ~03:00 ~ 01:30
4 個節點 ~ 05:00 ~ 04:00

重要

不支援使用第三方工具來安裝更新。

必要條件

在您開始前,請確定:

  • 您可以存取執行 2311 或更高版本的 Azure 本機版本 23H2 系統。 系統應該在 Azure 中註冊。
  • 您可以存取可連線到 Azure 本機的用戶端。
  • 您可以透過網路存取解決方案更新。

線上到您的 Azure 本機

請遵循用戶端上的下列步驟,連線到 Azure 本機中的其中一部機器。

  1. 以系統管理員身分執行 PowerShell,以您用來連線到系統的用戶端。

  2. 開啟遠端 PowerShell 工作階段至 Azure 本機電腦上的電腦。 執行下列命令,並在出現提示時提供計算機的認證:

    $cred = Get-Credential
    Enter-PSSession -ComputerName "<Computer IP>" -Credential $cred 
    

    注意

    使用您的部署用戶帳戶認證登入。 這是您在準備 Active Directory 並用來部署 Azure 本機時所建立的帳戶。

    展開本節以查看範例輸出。

    以下為範例輸出:

    PS C:\Users\Administrator> $cred = Get-Credential
     
    cmdlet Get-Credential at command pipeline position 1
    Supply values for the following parameters:
    Credential
    PS C:\Users\Administrator> Enter-PSSession -ComputerName "100.100.100.10" -Credential $cred 
    [100.100.100.10]: PS C:\Users\Administrator\Documents>
    

步驟 1:確認軟體和驗證系統健康情況

在您查找更新之前,請確保您的系統正在運行 Azure 本機版本 23H2,且軟體版本為 2311 或更高。

  1. 請確定您已使用部署使用者帳戶連線到電腦。 執行以下命令:

    whoami
    
  2. 若要確保系統正在執行 Azure Local 版本 23H2,請在系統的其中一部電腦上執行下列命令:

    Get-SolutionUpdateEnvironment
    
    展開本節以查看範例輸出。
    PS C:\Users\lcmuser> Get-SolutionUpdateEnvironment
    ResourceId : redmond 
    SbeFamily : GenA 
    HardwareModel : Contoso680 
    LastChecked : 10/2/2024 12:38:21 PM 
    PackageVersions : {Solution: 10.2408.0.29, Services: 10.2408.0.29, Platform: 1.0.0.0, SBE: 4.1.2409.1} 
    CurrentVersion : 10.2408.0.29 
    CurrentSbeVersion : 4.1.2409.1 
    LastUpdated : 
    State : UpdateAvailable 
    HealthState : Success 
    HealthCheckResult : {Storage Subsystem Summary, Storage Pool Summary, Storage Services Physical Disks Summary, Storage 
    Services Physical Disks Summary...} 
    HealthCheckDate : 10/2/2024 10:46:44 AM 
    AdditionalData : 
    
  3. 請注意您系統上的 CurrentVersion。 目前的版本反映您系統正在執行的解決方案版本。

  4. 查看系統上的 HealthState,並確認您的系統狀況良好。 如果 HealthState 是 FailureErrorWarning,請在繼續之前參閱 檢查問題排除

步驟 2:探索更新

請遵循下列步驟來探索您系統的可用更新:

  1. 使用部署用戶帳戶連線到 Azure 本機上的電腦。

  2. 檢閱準備使用 Get-SolutionUpdate安裝的 Ready 更新詳細資訊。

    Get-SolutionUpdate | Where-Object {$_.State -like "Ready*" -or $_.State -like "Additional*"} | FL DisplayName, Description, ResourceId, State, PackageType 
    
    展開本節以查看範例輸出。

    以下為範例輸出:

    PS C:\Users\lcmuser> Get-SolutionUpdate | Where-Object {$_.State -like "Ready*" -or $_.State -like "Additional*"} | FL DisplayName, Description, ResourceId, State, PackageType
    
    DisplayName           : 2024.10 Cumulative Update
    ResourceId            : redmond/Solution10.2408.2.7
    Version               : 10.2408.2.7
    State                 : Ready
    PackageType           : Solution
    
    DisplayName           : SBE_Contoso_GenA_4.1.2410.5
    ResourceId            : redmond/SBE4.1.2410.5
    Version               : 4.1.2410.5
    State                 : AdditionalContentRequired
    PackageType           : SBE
    

    這裡可能會列出一或多個選項,包括完整 Solution 更新的條目(也可能包含解決方案建置器擴充功能)以及獨立的 SBE 更新。

    如果您未見列出預期的更新,請將命令中的篩選器移除,查看它是否顯示在 non-ready 狀態中:

    Get-SolutionUpdate | FL DisplayName, Description, ResourceId, State, PackageType 
    

    如需詳細資訊,請參閱 關於更新階段,以取得更新狀態的詳細數據。

  3. 選取您想要安裝的更新,並記下其 ResourceId。 檢閱更新的詳細數據,以確認您已選取要安裝的所需更新。

    $Update = Get-SolutionUpdate –Id <ResourceId>
    $Update
    
    展開本節以查看範例輸出。

    以下為範例輸出:

    PS C:\Users\lcmuser> $Update = Get-SolutionUpdate –Id redmond/Solution10.2408.2.7
    PS C:\Users\lcmuser> $Update
    ResourceId            : redmond/Solution10.2408.2.7
    InstalledDate         : 
    Description           :
    State                 : Ready
    KbLink                : https://zcusa.951200.xyz/en-us/azure-stack/hci/
    MinVersionRequired    : 10.2408.0.0
    MinSbeVersionRequired : 2.0.0.0
    PackagePath           : C:\ClusterStorage\Infrastructure_1\Shares\SU1_Infrastructure_1\Updates\Packages\Solution10.2408
                            .2.2
    PackageSizeInMb       : 1278
    DisplayName           : 2024.10 Cumulative Update
    Version               : 10.2408.2.7
    SbeVersion            : 4.1.2410.5
    Publisher             : Microsoft
    ReleaseLink           : https://zcusa.951200.xyz/en-us/azure-stack/hci/
    AvailabilityType      : Online
    PackageType           : Solution
    Prerequisites         : {}
    UpdateStateProperties : The update requires additional content distributed by the OEM.
    AdditionalProperties  : {SBEReleaseLink, SBENotifyMessage, SBEFamily, SBEPublisher...}
    ComponentVersions     : {Services: 10.2408.2.7, Platform: 10.2408.2.7, SBE: 4.1.2410.5}
    RebootRequired        : Unknown
    HealthState           : Unknown
    HealthCheckResult     : 
    HealthCheckDate       : 1/1/0001 12:00:00 AM
    BillOfMaterials       : {PlatformUpdate, ServicesUpdate}
    

    注意

    HealthStateUnknown 是正常的,因為該更新尚未排程或準備。

  4. 選擇性地檢閱更新套件元件的版本。

    $Update = Get-SolutionUpdate -Id <ResourceID>
    $Update.ComponentVersions
    
    展開本節以查看範例輸出。

    以下為範例輸出:

    PS C:\Users\lcmuser> $Update = Get-SolutionUpdate -Id redmond/Solution10.2408.2.7
    
    PS C:\Users\lcmuser> $Update.ComponentVersions
    
    PackageType Version      LastUpdated
    ----------- -------      -----------
    Services    10.2408.2.7
    Platform    10.2408.2.7
    SBE         4.1.2410.5
    
    PS C:\Users\lcmuser>
    
    

您現在可以繼續下載 並安裝更新

步驟 3:匯入和重新發現更新

這是 選擇性 步驟。 在下列其中一個案例中,可能需要匯入更新:

  • 您要安裝的更新顯示 AdditionalContentRequired狀態。 在您進行 AdditionalContentRequired狀態的更新排程之前,可能需要一些額外的內容。 如需此狀態和解決方案擴充功能更新的詳細資訊,請參閱 Azure 本機版本 23H2上的 解決方案擴充功能更新。

  • 您想要安裝的更新並未列出,因為支援會提供您私人版本來解決您遇到的問題。

  • 更新會列為 Ready,但因為您的系統有有限的網路連線能力,因此您想要避免解決方案擴充功能更新的在線下載階段。

請遵循下列步驟來匯入和探索您的解決方案更新。

  1. 使用部署用戶帳戶連線到 Azure 本機上的電腦。

  2. 移至網路共享並取得您使用的更新套件。 確認您匯入的更新套件包含下列檔案:

    • SolutionUpdate.xml
    • SolutionUpdate.zip
    • AS_Update_10.2408.2.7.zip

    如果解決方案產生器擴充功能是更新套件的一部分,您也應該會看到下列檔案:

    • SBE_Contoso_GenA_4.1.2410.5.xml
    • SBE_Contoso_GenA_4.1.2410.5.zip
    • SBE_Discovery_Contoso.xml
  3. 下載您打算匯入的檔案到 Azure 本機實例可以存取的位置。 如果您要匯入解決方案延伸模組,您一律會下載三個符合下列命名模式的檔案:

    檔名模式 描述
    SBE_Discovery_<制造商>.xml SBE_Discovery_Contoso.xml 啟用更新發現的解決方案擴展發現清單。
    SBE_<Manufacturer>_<系列>_<版本>.xml SBE_Contoso_GenA_4.1.2410.5.xml 具有解決方案擴展名清單和已簽署軟體物料清單的檔案
    SBE_<制造商>_<系列>_<版本>.zip SBE_Contoso_GenA_4.1.2410.5.zip 具有解決方案擴充承載的檔案
  4. 在系統基礎結構磁碟區中的下列位置,建立更新服務探索的資料夾。

    New-Item C:\ClusterStorage\Infrastructure_1\Shares\SU1_Infrastructure_1\import -ItemType Directory 
    
  5. 將更新檔案複製到您在上一個步驟中建立的資料夾。

  6. 使用 Update 服務手動探索更新套件。 執行以下命令:

    Add-SolutionUpdate -SourceFolder C:\ClusterStorage\Infrastructure_1\Shares\SU1_Infrastructure_1\import
    
  7. 確認 Update 服務會探索更新套件,而且可供開始準備和安裝。 重複 Get-SolutionUpdate 命令以重新探索更新。

您可以下載更新並執行一組檢查,以確認叢集的更新整備程度,而不需要啟動安裝。

  1. 若要下載更新而不啟動安裝,請執行下列命令:

    Get-SolutionUpdate -Id <ResourceId> | Start-SolutionUpdate –PrepareOnly
    
    展開本節以查看範例輸出。

    以下是範例輸出:

    PS C:\Users\lcmuser> Get-SolutionUpdate -Id redmond/Solution10.2408.2.7 | Start-SolutionUpdate –PrepareOnly
    redmond/SBE4.1.2410.9/<GUID>
    
  2. 若要追蹤更新進度,請監視更新狀態。 執行以下命令:

    Get-SolutionUpdate -Id <ResourceId> | ft Version,State,UpdateStateProperties,HealthState
    

    更新啟動時,會發生下列動作:

    • 更新的下載隨即開始。 視下載套件的大小和網路頻寬而定,下載可能需要幾分鐘的時間。
    展開本節以查看範例輸出。

    以下是下載更新時的範例輸出:

    PS C:\Users\lcmuser> Get-SolutionUpdate -Id redmond/Solution10.2408.2.7 | ft Version,State,HealthState
    
    Version              State          HealthState
    -------              -----          ---------------------
    10.2408.2.7          Downloading    InProgress
    
  3. 下載套件之後,會執行整備檢查來評估系統的更新整備程度。 如需整備檢查的詳細資訊,請參閱 更新階段。 在這個階段中, 更新的狀態 會顯示為 HealthChecking

    展開本節以查看範例輸出。
    PS C:\Users\lcmuser> Get-SolutionUpdate|ft Version,State,UpdateStateProperties,HealthState
    
    Version         State             HealthState
    -------         -----             --------------------- 
    10.2408.2.7     HealthChecking    InProgress
    
  4. 完成整備檢查時,系統會準備好安裝更新。 更新的 State 會顯示為 ReadyToInstall。 如果更新的 State 顯示為 HealthCheckFailed,請參閱 在您繼續之前,先對整備檢查進行疑難解答

步驟 5:啟動更新

在安裝期間,系統機器可能會重新啟動,您可能需要再次建立遠端 PowerShell 工作階段來監視更新。 如果更新單一計算機,您的 Azure 本地服務會有停機時間。

要啟動更新,請先選取單一更新,然後將其傳遞至 Start-SolutionUpdate

$InstanceId = Get-SolutionUpdate -Id <ResourceId>  | Start-SolutionUpdate

注意

如果略過步驟 4 (且您未呼叫類似 Start-SolutionUpdate -PrepareOnly),呼叫 Start-SolutionUpdate 會先下載更新,並執行一系列檢查,以確認叢集的更新準備情況,然後再開始安裝更新。

展開本節以查看範例輸出。
PS C:\Users\lcmuser> $InstanceId = Get-SolutionUpdate -Id redmond/Solution10.2408.2.7 | Start-SolutionUpdate

這會啟動安裝更新的程式。

提示

請儲存 $InstanceId,因為您日後可以利用它來 針對 Azure 本機的方案更新進行疑難排解。

步驟 6:追蹤更新進度

Microsoft建議在 Azure 入口網站中啟動更新之後追蹤叢集更新進度。 即使透過PowerShell啟動更新,入口網站也是追蹤更新進度的絕佳選項,因為它不受狀態報告中斷的影響。

提示

  • 如果透過PowerShell進行監視,建議您將PowerShell會話連線到叢集中的最後一部伺服器,以避免會話提早中斷連線。 當系統重新啟動時,會話會中斷連線,因此通過已更新的伺服器進行監控,可以將會話中斷的頻率降到最低。
  • 建議您在 Azure 入口網站中追蹤叢集更新進度,以避免在機器重新啟動之後重新連線到 PowerShell 會話。

請遵循下列步驟來追蹤使用PowerShell的更新進度。

  1. 若要追蹤更新進度,請監視更新狀態。 執行以下命令:

    Get-SolutionUpdate -Id <ResourceId> | ft Version,State,UpdateStateProperties,HealthState
    

    更新會在數個階段中進行,如 檢閱更新階段中所述。

    使用上述命令,下列範例示範如何使用 StateUpdateStateProperties 屬性,在更新進行的各階段中進行監視。

    • 下載狀態

      呼叫 Start-SolutionUpdate 后不久,就會開始下載更新。 視下載套件的大小和網路頻寬而定,下載可能需要幾分鐘的時間。

      展開本節以查看範例輸出。

      以下是下載更新時的範例輸出:

      PS C:\Users\lcmuser> Get-SolutionUpdate -Id redmond/Solution10.2408.2.7 |ft Version,State,UpdateStateProperties,HealthState
      
      Version              State         HealthState
      -------              -----         ------------
      10.2408.2.7          Downloading   Unknown
      
    • 準備狀態

      下載更新之後,需要準備更新。 在準備狀態中,會確認更新檔案哈希,並擷取檔案來準備和暫存更新檔案。

      展開本節以查看範例輸出。

      以下是下載更新時的範例輸出:

      PS C:\Users\lcmuser> Get-SolutionUpdate -Id redmond/Solution10.2408.2.7 |ft Version,State,HealthState
      
      Version              State       HealthState
      -------              -----       -----------
      10.2408.2.7          Preparing   Unknown
      
    • 健康檢查中狀態

      一旦準備好更新,就會執行整備檢查來評估叢集的更新整備程度。 如需整備檢查的詳細資訊,請參閱 更新階段

      在這個階段中,更新中的 State 顯示為 HealthChecking。 如果更新的 State 顯示為 HealthCheckFailed,請參閱 在您繼續之前,先對整備檢查進行疑難解答

      展開本節以查看範例輸出。

      以下是更新進行 HealthChecking時的範例輸出:

      PS C:\Users\lcmuser> Get-SolutionUpdate -Id redmond/Solution10.2408.2.7 |ft Version,State,HealthState
      
      Version              State           HealthState
      -------              -----           -----------
      10.2408.2.7          HealthChecking  Unknown
      
    • 安裝狀態 當系統就緒時,更新會轉換為 Installing。 在這個階段中,更新的 State 會顯示為 InstallingUpdateStateProperties 顯示已完成安裝的百分比。

      展開本節以查看範例輸出。

      以下是更新進行 Installing時的範例輸出:

      PS C:\Users\lcmuser> Get-SolutionUpdate -Id redmond/Solution10.2408.2.7 |ft Version,State,HealthState
      
      Version              State       HealthState
      -------              -----       -----------
      10.2408.2.7          Installing   Unknown
      

安裝完成後,狀態變更為 Installed。 如需各種更新狀態的詳細資訊,請參閱 安裝進度和監視

步驟 7:繼續更新(如有需要)

若要繼續透過PowerShell執行先前失敗的更新,請使用下列命令:

Get-SolutionUpdate -Id <ResourceId>  | Start-SolutionUpdate

若要繼續先前因更新整備檢查處於 Warning 狀態而失敗的更新,請使用下列命令:

Get-SolutionUpdate -Id <ResourceId>  | Start-SolutionUpdate -IgnoreWarnings    

若要針對其他更新執行問題進行疑難解答,請參閱 針對更新進行疑難解答

步驟 8:確認安裝

安裝更新之後,請確認環境的解決方案版本和操作系統版本。

  1. 更新處於 Installed 狀態之後,請檢查環境解決方案版本。 執行以下命令:

    Get-SolutionUpdateEnvironment | ft State, CurrentVersion
    
    展開本節以查看範例輸出。
    PS C:\Users\lcmuser> Get-SolutionUpdateEnvironment | ft State, CurrentVersion
    
    State               CurrentVersion
    -----               --------------
    AppliedSuccessfully 10.2408.2.7
    
    
  2. 請檢查作業系統版本,確認它符合您安裝的配方。 執行以下命令:

    cmd /c ver
    
    展開本節以查看範例輸出。

    以下是範例輸出:

    PS C:\Users\lcmuser> cmd /c ver
    
    Microsoft Windows [Version 10.0.25398.1189]
    PS C:\Users\lcmuser>
    

後續步驟