Поделиться через


Обновление Azure Stack HCI версии 23H2 с помощью PowerShell

Область применения: Azure Stack HCI, версия 23H2

Важно!

Описанная здесь процедура применяется только при обновлении с одной версии Azure Stack HCI версии 23H2 до другой более поздней версии. Сведения об обновлениях для более старых версий см. в статье Обновление кластеров для Azure Stack HCI версии 22H2.

В этой статье описывается, как использовать Диспетчер обновлений Azure для поиска и установки доступных обновлений кластера в выбранных кластерах Azure Stack HCI. Кроме того, мы предоставляем рекомендации по проверке обновлений кластера, отслеживанию хода выполнения и просмотру журнала обновлений кластера.

В этой статье описывается, как применить обновление решения к кластеру Azure Stack HCI с помощью PowerShell.

Процедура, описанная в этой статье, относится как к одному серверу, так и к кластеру с несколькими серверами, на котором установлена последняя версия с установленным оркестратором (жизненным циклом). Если кластер был создан с помощью нового развертывания Azure Stack HCI версии 23H2, оркестратор был автоматически установлен в рамках развертывания.

Сведения о применении обновлений решений к кластерам, созданным с помощью более старых версий Azure Stack HCI, в которых не установлен оркестратор, см. в статье Обновление кластеров Azure Stack HCI версии 22H2.

Сведения об обновлениях решения

Обновления решения Azure Stack HCI могут включать обновления платформы, службы и расширения решения. Дополнительные сведения о каждом из этих типов обновлений см. в статье Об обновлениях для Azure Stack HCI версии 23H2.

При применении обновления решения ниже приведены общие шаги.

  1. Убедитесь, что выполнены все предварительные требования.
  2. Определите версию программного обеспечения, работающего в кластере.
  3. Подключитесь к кластеру Azure Stack HCI с помощью удаленной оболочки PowerShell.
  4. Используйте средство проверки среды , чтобы убедиться, что кластер находится в работоспособном состоянии.
  5. Найдите доступные обновления и отфильтруйте те, которые можно применить к кластеру.
  6. Скачивание обновлений, оценка готовности кластера к обновлению и установка обновлений в кластере после их готовности. Отслеживайте ход выполнения обновлений. При необходимости можно также отслеживать подробные сведения о ходе выполнения.
  7. Проверьте версию установленных обновлений.

Время, затраченное на установку обновлений, может отличаться в зависимости от следующих факторов.

  • Содержимое обновления.
  • Загрузка в кластер.
  • Количество серверов в кластере.
  • Тип используемого оборудования.
  • Используемое расширение построителя решений.

Приблизительные оценки времени для типичного отдельного сервера и 4-серверного кластера приведены в следующей таблице:

Кластер/время Время для проверка работоспособности
чч:мм:сс
Время установки обновления
чч:мм:сс
Отдельный сервер 0:01:44 1:25:42
4-серверный кластер 0:01:58 3:53:09

Предварительные требования

Перед тем как начать, убедитесь в следующем.

  • У вас есть доступ к кластеру Azure Stack HCI версии 23H2 под управлением версии 2310 или более поздней. Кластер должен быть зарегистрирован в Azure.
  • У вас есть доступ к клиенту, который может подключаться к кластеру Azure Stack HCI. Этот клиент должен работать под управлением PowerShell 5.0 или более поздней версии.
  • У вас есть доступ к пакету обновления решения по сети. Вы загружаете неопубликованные обновления или копируете их на серверы кластера.

Подключение к кластеру Azure Stack HCI

Выполните следующие действия на клиенте, чтобы подключиться к одному из серверов кластера Azure Stack HCI.

  1. Запустите PowerShell от имени администратора на клиенте, который используется для подключения к кластеру.

  2. Откройте удаленный сеанс PowerShell на сервере в кластере Azure Stack HCI. Выполните следующую команду и при появлении запроса укажите учетные данные сервера:

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

    Примечание

    Войдите, используя учетные данные учетной записи пользователя развертывания. Это учетная запись, созданная при подготовке Active Directory и используемая во время развертывания системы Azure Stack HCI.

    Ниже представлен пример результата.

    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 Stack HCI версии 23H2, версии 2310.

  1. Убедитесь, что вы подключены к серверу кластера с помощью учетной записи пользователя развертывания. Выполните следующую команду:

    whoami
    
  2. Чтобы убедиться, что кластер развернут под управлением Azure Stack HCI версии 23H2, выполните следующую команду на одном из серверов кластера:

    Get-StampInformation
    

    Ниже приведен пример выходных данных:

    PS C:\Users\lcmuser> Get-StampInformation
    Deployment ID             : b4457f25-6681-4e0e-b197-a7a433d621d6
    OemVersion                : 2.1.0.0
    PackageHash               :
    StampVersion              : 10.2303.0.31
    InitialDeployedVersion    : 10.2303.0.26
    PS C:\Users\lcmuser>
    
  3. Запишите в кластере StampVersion . Версия метки отражает версию решения, работающего в кластере.

Шаг 2. При необходимости проверьте работоспособность системы

Перед обнаружением обновлений можно вручную проверить работоспособность системы. Этот шаг необязателен, так как оркестратор всегда оценивает готовность к обновлению перед применением обновлений.

Примечание

Любые ошибки с критическим уровнем серьезности блокируют применение обновлений.

  1. Подключитесь к серверу в кластере Azure Stack HCI с помощью учетной записи пользователя развертывания.

  2. Выполните следующую команду, чтобы проверить работоспособность системы с помощью средства проверки среды.

    $result = Test-EnvironmentReadiness
    $result | ft Name,Status,Severity  
    

    Ниже приведен пример выходных данных:

    PS C:\Users\lcmuser> whoami
    rq2205\lcmuser                                                                                               
    PS C:\Users\lcmuser> $result=Test-EnvironmentReadiness                                                         
    VERBOSE: Looking up shared vhd product drive letter.                                                                    
    WARNING: Unable to find volume with label Deployment                                                                    
    VERBOSE: Get-Package returned with Success:True                                                                        
    VERBOSE: Found package Microsoft.AzureStack.Solution.Deploy.EnterpriseCloudEngine.Client.Deployment with version  10.2303.0.31 at                                                                                                         C:\NugetStore\Microsoft.AzureStack.Solution.Deploy.EnterpriseCloudEngine.Client.Deployment.10.2303.0.31\Microsoft.Azure Stack.Solution.Deploy.EnterpriseCloudEngine.Client.Deployment.nuspec.                                                   
    03/29/2023 15:45:58 : Launching StoragePools                                                                            
    03/29/2023 15:45:58 : Launching StoragePhysicalDisks                                                                    
    03/29/2023 15:45:58 : Launching StorageMapping                                                                          
    03/29/2023 15:45:58 : Launching StorageSubSystems                                                                       
    03/29/2023 15:45:58 : Launching TestCauSetup                                                                            
    03/29/2023 15:45:58 : Launching StorageVolumes                                                                          
    03/29/2023 15:45:58 : Launching StorageVirtualDisks                                                                     
    03/29/2023 15:46:05 : Launching OneNodeEnvironment                                                                      
    03/29/2023 15:46:05 : Launching NonMigratableWorkload                                                                   
    03/29/2023 15:46:05 : Launching FaultSummary                                                                            
    03/29/2023 15:46:06 : Launching SBEHealthStatusOnNode                                                                   
    03/29/2023 15:46:06 : Launching StorageJobStatus                                                                        
    03/29/2023 15:46:07 : Launching StorageCsv
    WARNING: There aren't any faults right now.
    03/29/2023 15:46:09 : Launching SBEPrecheckStatus
    WARNING: rq2205-cl: There aren't any faults right now.
    VERBOSE: Looking up shared vhd product drive letter.
    WARNING: Unable to find volume with label Deployment
    VERBOSE: Get-Package returned with Success:True
    VERBOSE: Found package Microsoft.AzureStack.Role.SBE with version 4.0.2303.66 at
    C:\NugetStore\Microsoft.AzureStack.Role.SBE.4.0.2303.66\Microsoft.AzureStack.Role.SBE.nuspec.
    VERBOSE: SolutionExtension module supports Tag 'HealthServiceIntegration'.
    VERBOSE: SolutionExtension module SolutionExtension at
    C:\ClusterStorage\Infrastructure_1\Shares\SU1_Infrastructure_1\CloudMedia\SBE\Installed\Content\Configuration\SolutionExtension is valid.
    VERBOSE: Looking up shared vhd product drive letter.
    WARNING: Unable to find volume with label Deployment
    VERBOSE: Get-Package returned with Success:True
    VERBOSE: Found package Microsoft.AzureStack.Role.SBE with version 4.0.2303.66 at
    C:\NugetStore\Microsoft.AzureStack.Role.SBE.4.0.2303.66\Microsoft.AzureStack.Role.SBE.nuspec.
    VERBOSE: SolutionExtension module supports Tag 'HealthServiceIntegration'.
    VERBOSE: SolutionExtension module SolutionExtension at
    C:\ClusterStorage\Infrastructure_1\Shares\SU1_Infrastructure_1\CloudMedia\SBE\Installed\Content\Configuration\SolutionExtension is valid.
    PS C:\Users\lcmuser> $result|ft Name,Status,Severity
    
    Name                                    Status  Severity
    ----                                    ------  --------
    Storage Pool Summary                    SUCCESS CRITICAL
    Storage Services Physical Disks Summary SUCCESS CRITICAL
    Storage Services Physical Disks Summary SUCCESS CRITICAL
    Storage Services Physical Disks Summary SUCCESS CRITICAL
    Storage Services Physical Disks Summary SUCCESS CRITICAL
    Storage Services Physical Disks Summary SUCCESS CRITICAL
    Storage Services Physical Disks Summary SUCCESS CRITICAL
    Storage Services Physical Disks Summary SUCCESS CRITICAL
    Storage Services Physical Disks Summary SUCCESS CRITICAL
    Storage Services Physical Disks Summary SUCCESS CRITICAL
    Storage Services Physical Disks Summary SUCCESS CRITICAL
    Storage Services Physical Disks Summary SUCCESS CRITICAL
    Storage Services Physical Disks Summary SUCCESS CRITICAL
    Storage Services Physical Disks Summary SUCCESS CRITICAL
    Storage Services Physical Disks Summary SUCCESS CRITICAL
    Storage Services Physical Disks Summary SUCCESS CRITICAL
    Storage Services Physical Disks Summary SUCCESS CRITICAL
    Storage Services Physical Disks Summary SUCCESS CRITICAL
    Storage Services Physical Disks Summary SUCCESS CRITICAL
    Storage Services Physical Disks Summary SUCCESS CRITICAL
    Storage Services Physical Disks Summary SUCCESS CRITICAL
    Storage Services Summary                SUCCESS CRITICAL
    Storage Services Summary                SUCCESS CRITICAL
    Storage Services Summary                SUCCESS CRITICAL
    Storage Subsystem Summary               SUCCESS CRITICAL
    Test-CauSetup                           SUCCESS INFORMATIONAL
    Test-CauSetup                           SUCCESS INFORMATIONAL
    Test-CauSetup                           SUCCESS INFORMATIONAL
    Test-CauSetup                           SUCCESS INFORMATIONAL
    Test-CauSetup                           SUCCESS CRITICAL
    Test-CauSetup                           SUCCESS INFORMATIONAL
    Test-CauSetup                           SUCCESS INFORMATIONAL
    Test-CauSetup                           SUCCESS INFORMATIONAL
    Test-CauSetup                           FAILURE INFORMATIONAL
    Test-CauSetup                           FAILURE INFORMATIONAL
    Test-CauSetup                           FAILURE INFORMATIONAL
    Storage Volume Summary                  SUCCESS CRITICAL
    Storage Volume Summary                  SUCCESS CRITICAL
    Storage Volume Summary                  SUCCESS CRITICAL
    Storage Volume Summary                  SUCCESS CRITICAL
    Storage Virtual Disk Summary            SUCCESS CRITICAL
    Storage Virtual Disk Summary            SUCCESS CRITICAL
    Storage Virtual Disk Summary            SUCCESS CRITICAL
    Storage Virtual Disk Summary            SUCCESS CRITICAL
    Get-OneNodeRebootRequired               SUCCESS WARNING
    Test-NonMigratableVMs                   SUCCESS WARNING
    Faults                                  SUCCESS INFORMATIONAL
    Test-SBEHealthStatusOnNode              Success Informational
    Test-SBEHealthStatusOnNode              Success Informational
    Storage Job Summary                     SUCCESS CRITICAL
    Storage Cluster Shared Volume Summary   SUCCESS CRITICAL
    Storage Cluster Shared Volume Summary   SUCCESS CRITICAL
    Storage Cluster Shared Volume Summary   SUCCESS CRITICAL
    Test-SBEPrecheckStatus                  Success Informational  
    
    PS C:\Users\lcmuser>
    

    Примечание

    В этом выпуске ожидаются информационные сбои для Test-CauSetup и не повлияют на обновления.

  3. Прежде чем переходить к шагу обнаружения, просмотрите все ошибки и устраните их.

Шаг 3. Обнаружение обновлений

Вы можете обнаружить обновления одним из следующих двух способов:

  • Обнаружение обновлений в Интернете — рекомендуемый вариант, если кластер имеет хорошее подключение к Интернету. Обновления решения обнаруживаются через каталог обновлений в сети.
  • Загрузка неопубликованных обновлений и их обнаружение — альтернатива обнаружению обновлений в Интернете. Ее следует использовать в сценариях с ненадежным или медленным подключением к Интернету, а также при использовании обновлений расширений решений, предоставляемых поставщиком оборудования. В таких случаях обновления решения скачиваются в централизованное расположение. Затем вы загружаете неопубликованные обновления в кластер Azure Stack HCI и обнаруживаете обновления локально.

Рекомендуется обнаруживать обновления решения с помощью сетевого каталога. Чтобы обнаруживать обновления решений в Интернете, выполните следующие действия.

  1. Подключитесь к серверу в кластере Azure Stack HCI с помощью учетной записи пользователя развертывания.

  2. Убедитесь, что служба обновления обнаруживает пакет обновления.

    Get-SolutionUpdate | ft DisplayName, State 
    
  3. При необходимости просмотрите версии компонентов пакета обновления.

    $Update = Get-SolutionUpdate 
    $Update.ComponentVersions
    

    Ниже представлен пример результата.

     PS C:\Users\lcmuser> $Update = Get-SolutionUpdate 
     PS C:\Users\lcmuser> $Update.ComponentVersions
    
    PackageType Version      LastUpdated
    ----------- -------      -----------
    Services    10.2303.0.31
    Platform    10.2303.0.31
    SBE         4.1.2.3
     PS C:\Users\lcmuser>
    

Теперь можно перейти к скачиванию и установке обновлений.

Загрузка и обнаружение обновлений неопубликованных решений

Если вы используете обновления расширения решения с оборудования, вам потребуется загрузить эти обновления неопубликованно. Выполните следующие действия, чтобы загрузить неопубликованное решение и обнаружить обновления.

  1. Подключитесь к серверу в кластере Azure Stack HCI с помощью учетной записи пользователя развертывания.

  2. Перейдите в сетевую папку и получите используемый пакет обновления. Убедитесь, что неопубликованный пакет обновления содержит следующие файлы:

    • SolutionUpdate.xml
    • SolutionUpdate.zip
    • AS_Update_10.2303.4.1.zip

    Если расширение построителя решений входит в пакет обновления, вы также должны увидеть следующие файлы:

    • SBE_Content_4.1.2.3.xml
    • SBE_Content_4.1.2.3.zip
    • SBE_Discovery_Contoso.xml
  3. Создайте папку для обнаружения службой обновления в следующем расположении в томе инфраструктуры кластера.

    New-Item C:\ClusterStorage\Infrastructure_1\Shares\SU1_Infrastructure_1\sideload -ItemType Directory 
    
  4. Скопируйте пакет обновления в папку, созданную на предыдущем шаге.

  5. Вручную найдите пакет обновления с помощью службы обновления. Выполните следующую команду:

    Add-SolutionUpdate -SourceFolder C:\ClusterStorage\Infrastructure_1\Shares\SU1_Infrastructure_1\sideload
    
  6. Убедитесь, что служба обновления обнаруживает пакет обновления и что он доступен для начала подготовки и установки.

    Get-SolutionUpdate | ft DisplayName, Version, State 
    

    Ниже представлен пример результата.

     PS C:\Users\lcmuser> Get-SolutionUpdate | ft DisplayName, Version, State
    
    DisplayName                 Version      State
    -----------                 -------      -----
    Azure Stack HCI 2303 bundle 10.2303.0.31 Ready
    
     PS C:\Users\lcmuser>
    
  7. При необходимости проверка версию компонентов пакета обновления. Выполните следующую команду:

    $Update = Get-SolutionUpdate 
    $Update.ComponentVersions 
    

    Ниже представлен пример результата.

     PS C:\Users\lcmuser> $Update = Get-SolutionUpdate 
     PS C:\Users\lcmuser> $Update.ComponentVersions
    
    PackageType Version      LastUpdated
    ----------- -------      -----------
    Services    10.2303.0.31
    Platform    10.2303.0.31
    SBE         4.1.2.3
     PS C:\Users\lcmuser>
    

Шаг 4. Скачивание, проверка готовности и установка обновлений

Вы можете скачать обновления, выполнить ряд проверок, чтобы проверить готовность кластера к обновлению, и начать установку обновлений.

  1. Вы можете скачать обновление только без запуска установки или скачать и установить обновление.

    • Чтобы скачать и установить обновление, выполните следующую команду:

      Get-SolutionUpdate | Start-SolutionUpdate
      
    • Чтобы скачать обновления только без запуска установки, используйте -PrepareOnly флаг с Start-SolutionUpdate.

  2. Чтобы отслеживать ход обновления, отслеживайте состояние обновления. Выполните следующую команду:

    Get-SolutionUpdate | ft Version,State,UpdateStateProperties,HealthState 
    

    При запуске обновления выполняются следующие действия:

    • Начнется скачивание обновлений. В зависимости от размера пакета загрузки и пропускной способности сети скачивание может занять несколько минут.

      Ниже приведен пример выходных данных при скачивании обновлений:

        PS C:\Users\lcmuser> Get-SolutionUpdate|ft Version,State,UpdateStateProperties,HealthState
      
      Version              State UpdateStateProperties HealthState
      -------              ----- --------------------- -----------
      10.2303.4.1 Downloading                        InProgress
      
    • После скачивания пакета выполняются проверки готовности для оценки готовности кластера к обновлению. Дополнительные сведения о проверках готовности см. в разделе Этапы обновления. На этом этапе состояние обновления отображается как HealthChecking.

      PS C:\Users\lcmuser> Get-SolutionUpdate|ft Version,State,UpdateStateProperties,HealthState
      
      Version              State UpdateStateProperties HealthState
      -------              ----- --------------------- -----------
      10.2303.4.1 HealthChecking                        InProgress
      
    • Когда система будет готова, устанавливаются обновления. На этом этапе в поле Состояние обновлений отображается Installing значение и UpdateStateProperties отображается процент завершения установки.

      Важно!

      Во время установки серверы кластера могут перезагрузиться, и вам может потребоваться снова установить удаленный сеанс PowerShell для отслеживания обновлений. При обновлении одного сервера в Azure Stack HCI будет происходить простой.

      Ниже приведен пример выходных данных во время установки обновлений.

      PS C:\Users\lcmuser> Get-SolutionUpdate|ft Version,State,UpdateStateProperties,HealthState
      
      Version          State UpdateStateProperties HealthState
      -------          ----- --------------------- -----------
      10.2303.4.1 Installing 6% complete.              Success
      
      
      PS C:\Users\lcmuser> Get-SolutionUpdate|ft Version,State,UpdateStateProperties,HealthState
      
      Version          State UpdateStateProperties HealthState
      -------          ----- --------------------- -----------
      10.2303.4.1 Installing 25% complete.             Success
      
      PS C:\Users\lcmuser> Get-SolutionUpdate|ft Version,State,UpdateStateProperties,HealthState
      
      Version          State UpdateStateProperties HealthState
      -------          ----- --------------------- -----------
      10.2303.4.1 Installing 40% complete.             Success
      
      PS C:\Users\lcmuser> Get-SolutionUpdate|ft Version,State,UpdateStateProperties,HealthState
      
      Version          State UpdateStateProperties HealthState
      -------          ----- --------------------- -----------
      10.2303.4.1 Installing 89% complete.             Success
      

После завершения установки состояние изменится на Installed. Дополнительные сведения о различных состояниях обновлений см. в разделе Ход установки и мониторинг.

Шаг 5. Проверка установки

После установки обновлений проверьте версию решения среды и версию операционной системы.

  1. После обновления Installed проверка версию решения среды. Выполните следующую команду:

    Get-SolutionUpdateEnvironment | ft State, CurrentVersion
    

    Ниже приведен пример выходных данных:

    PS C:\Users\lcmuser> Get-SolutionUpdateEnvironment | ft State, CurrentVersion
    
    State               CurrentVersion
    -----               --------------
    AppliedSuccessfully 10.2303.0.31
    
    
  2. Проверьте версию операционной системы, чтобы убедиться, что она соответствует установленному вами рецепту. Выполните следующую команду:

    cmd /c ver
    

    Ниже приведен пример выходных данных:

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

Устранение неполадок при обновлении

Чтобы возобновить выполнение ранее неудачного обновления с помощью PowerShell, используйте следующую команду:

get-solutionupdate | start-solutionupdate

Чтобы возобновить ранее неудачное обновление из-за проверок работоспособности обновления в состоянии Предупреждения , используйте следующую команду:

get-solutionUpdate | start-solutionUpdate -IgnoreWarnings

Сведения об устранении других проблем с запуском обновлений см. в статье Устранение неполадок с обновлениями.

Следующий шаг

Узнайте больше о том , как обновить кластеры Azure Stack HCI версии 22H2, если оркестратор не установлен.