Мониторинг обновлений в Azure Stack Hub с помощью привилегированной конечной точкиMonitor updates in Azure Stack Hub using the privileged endpoint

Привилегированную конечную точку можно использовать для отслеживания хода выполнения обновления Azure Stack Hub.You can use the privileged endpoint to monitor the progress of an Azure Stack Hub update run. Если портал Azure Stack Hub станет недоступным, привилегированная конечная точка позволит возобновить обновление, завершившееся сбоем, с последнего успешного шага.You can also use the privileged endpoint to resume a failed update run from the last successful step should the Azure Stack Hub portal become unavailable. Использование портала Azure Stack Hub — рекомендуемый метод для управления обновлениями в Azure Stack Hub.Using the Azure Stack Hub portal is the recommended method to manage updates in Azure Stack Hub.

В обновление 1710 интегрированных систем Azure Stack Hub включены следующие новые командлеты PowerShell для управления обновлениями.The following new PowerShell cmdlets for update management are included in the 1710 update for Azure Stack Hub integrated systems.

КомандлетCmdlet ОписаниеDescription
Get-AzureStackUpdateStatus Возвращает состояние выполняемого в настоящее время, завершенного или невыполненного обновления.Returns the status of the currently running, completed, or failed update. Предоставляет общее состояние операции обновления и XML-документ, описывающий текущий шаг и соответствующее состояние.Provides the high-level status of the update operation and an XML document that describes both the current step and the corresponding state.
Resume-AzureStackUpdate Возобновляет невыполненные обновления с точки, в которой произошел сбой.Resumes a failed update at the point where it failed. В некоторых сценариях может потребоваться выполнить шаги по устранению рисков, прежде чем продолжить обновление.In certain scenarios, you may have to complete mitigation steps before you resume the update.

Проверка доступности командлетовVerify the cmdlets are available

Так как командлеты появились в пакете обновления 1710 для Azure Stack Hub, процессу обновления 1710 необходимо достигнуть определенной точки прежде, чем возможность мониторинга станет доступна.Because the cmdlets are new in the 1710 update package for Azure Stack Hub, the 1710 update process needs to get to a certain point before the monitoring capability is available. Как правило, командлеты доступны, если состояние на портале администратора указывает, что обновление 1710 находится на шаге Restart Storage Hosts (Перезапуск узлов хранения).Typically, the cmdlets are available if the status in the administrator portal indicates that the 1710 update is at the Restart Storage Hosts step. В частности, обновление командлетов происходит во время шага 2.6 — обновления списка разрешений привилегированной конечной точки.Specifically, the cmdlet update occurs during Step: Running step 2.6 - Update PrivilegedEndpoint whitelist.

Вы также можете определить, доступны ли командлеты, программным способом, запросив список команд из привилегированной конечной точки.You can also determine whether the cmdlets are available programmatically by querying the command list from the privileged endpoint. Для выполнения этого запроса запустите следующие команды с узла жизненного цикла оборудования или с рабочей станции привилегированного доступа.To do this query, run the following commands from the hardware lifecycle host or from a Privileged Access Workstation. Кроме того, убедитесь, что привилегированной конечной точкой является доверенный узел.Also, make sure the privileged endpoint is a trusted host. Дополнительные сведения см. на шаге 1 раздела о процедуре доступа к привилегированной конечной точке.For more information, see step 1 of Access the privileged endpoint.

  1. Создайте сеанс PowerShell на любой из виртуальных машин (ВМ) ERCS в среде Azure Stack Hub (префикс-ERCS01, префикс-ERCS02 или префикс-ERCS03).Create a PowerShell session on any of the ERCS virtual machines (VMs) in your Azure Stack Hub environment (Prefix-ERCS01, Prefix-ERCS02, or Prefix-ERCS03). Замените префикс строкой префикса ВМ, которая соответствует используемой среде.Replace Prefix with the VM prefix string that's specific to your environment.

    $cred = Get-Credential
    
    $pepSession = New-PSSession -ComputerName <Prefix>-ercs01 -Credential $cred -ConfigurationName PrivilegedEndpoint 
    

    При запросе учетных данных используйте учетную запись "<домен Azure Stack Hub>\cloudadmin" или учетную запись участника группы администраторов облака.When prompted for credentials, use the <Azure Stack Hub domain>\cloudadmin account, or an account that's a member of the CloudAdmins group. Для учетной записи cloudadmin введите пароль, который использовался во время установки учетной записи администратора домена AzureStackAdmin.For the CloudAdmin account, enter the same password that was provided during installation for the AzureStackAdmin domain administrator account.

  2. Получите полный список команд, доступных в привилегированной конечной точке.Get the full list of commands that are available in the privileged endpoint.

    $commands = Invoke-Command -Session $pepSession -ScriptBlock { Get-Command } 
    
  3. Определите, была ли обновлена привилегированная конечная точка.Determine if the privileged endpoint was updated.

    $updateManagementModuleName = "Microsoft.Azurestack.UpdateManagement"
     if (($commands | ? Source -eq $updateManagementModuleName)) {
    Write-Host "Privileged endpoint was updated to support update monitoring tools."
     } else {
    Write-Host "Privileged endpoint has not been updated yet. Please try again later."
     } 
    
  4. Выведите список команд модуля Microsoft.AzureStack.UpdateManagement.List the commands specific to the Microsoft.AzureStack.UpdateManagement module.

    $commands | ? Source -eq $updateManagementModuleName 
    

    Пример:For example:

    $commands | ? Source -eq $updateManagementModuleName
    
    CommandType     Name                                               Version    Source                                                  PSComputerName
     -----------     ----                                               -------    ------                                                  --------------
    Function        Get-AzureStackUpdateStatus                         0.0        Microsoft.Azurestack.UpdateManagement                   Contoso-ercs01
    Function        Resume-AzureStackUpdate                            0.0        Microsoft.Azurestack.UpdateManagement                   Contoso-ercs01
    

Использование командлетов для управления обновлениямиUse the update management cmdlets

Примечание

Запустите следующие команды с узла жизненного цикла оборудования или с рабочей станции привилегированного доступа.Run the following commands from the hardware lifecycle host or from a Privileged Access Workstation. Кроме того, убедитесь, что привилегированной конечной точкой является доверенный узел.Also, make sure the privileged endpoint is a trusted host. Дополнительные сведения см. на шаге 1 раздела о процедуре доступа к привилегированной конечной точке.For more information, see step 1 of Access the privileged endpoint.

Подключение к привилегированной конечной точке и присвоение переменной сеансаConnect to the privileged endpoint and assign session variable

Выполните следующие команды, чтобы создать сеанс PowerShell на любой из виртуальных машин ERCS в среде Azure Stack Hub (префикс-ERCS01, префикс-ERCS02 или префикс-ERCS03) и присвоить переменную сеанса.Run the following commands to create a PowerShell session on any of the ERCS VMs in your Azure Stack Hub environment (Prefix-ERCS01, Prefix-ERCS02, or Prefix-ERCS03), and to assign a session variable.

$cred = Get-Credential

$pepSession = New-PSSession -ComputerName <Prefix>-ercs01 -Credential $cred -ConfigurationName PrivilegedEndpoint 

При запросе учетных данных используйте учетную запись "<домен Azure Stack Hub>\cloudadmin" или учетную запись участника группы администраторов облака.When prompted for credentials, use the <Azure Stack Hub domain>\cloudadmin account, or an account that's a member of the CloudAdmins group. Для учетной записи cloudadmin введите пароль, который использовался во время установки учетной записи администратора домена AzureStackAdmin.For the CloudAdmin account, enter the same password that was provided during installation for the AzureStackAdmin domain administrator account.

Получение общего состояния текущего выполнения обновленияGet high-level status of the current update run

Чтобы получить общее состояние текущего выполнения обновления, выполните следующие команды:To get a high-level status of the current update run, run the following commands:

$statusString = Invoke-Command -Session $pepSession -ScriptBlock { Get-AzureStackUpdateStatus -StatusOnly }

$statusString.Value 

Ниже перечислены возможные значения.Possible values include:

  • ЗапущенRunning
  • ЗавершеноCompleted
  • ОшибкаFailed
  • ОтмененоCanceled

Можно выполнить эти команды несколько раз, чтобы отслеживать последнее состояние.You can run these commands repeatedly to see the most up-to-date status. Для повторной проверки не нужно повторно устанавливать подключение.You don't have to re-establish a connection to check again.

Получение полного состояния выполнения обновления с подробными сведениямиGet the full update run status with details

Вы можете получить полную сводку по выполнению обновления в виде строки XML.You can get the full update run summary as an XML string. Можно записать строку в файл для проверки или преобразовать ее в XML-документ и проанализировать с помощью PowerShell.You can write the string to a file for examination, or convert it to an XML document and use PowerShell to parse it. Следующая команда выполняет синтаксический анализ XML-файла для получения иерархического списка выполняющихся действий.The following command parses the XML to get a hierarchical list of the currently running steps:

[xml]$updateStatus = Invoke-Command -Session $pepSession -ScriptBlock { Get-AzureStackUpdateStatus }

$updateStatus.SelectNodes("//Step[@Status='InProgress']")

В следующем примере шаг верхнего уровня (обновление облака) имеет дочерний план для обновления и перезапуска узлов хранения.In the following example, the top-level step (Cloud Update) has a child plan to update and restart the storage hosts. В нем видно, что план перезапуска узлов хранения обновляет службу хранилища BLOB-объектов на одном из узлов.It shows that the Restart Storage Hosts plan is updating the Blob Storage service on one of the hosts.

[xml]$updateStatus = Invoke-Command -Session $pepSession -ScriptBlock { Get-AzureStackUpdateStatus }

$updateStatus.SelectNodes("//Step[@Status='InProgress']") 

    FullStepIndex : 2
    Index         : 2
    Name          : Cloud Update
    Description   : Perform cloud update.
    StartTimeUtc  : 2017-10-13T12:50:39.9020351Z
    Status        : InProgress
    Task          : Task
    
    FullStepIndex  : 2.9
    Index          : 9
    Name           : Restart Storage Hosts
    Description    : Restart Storage Hosts.
    EceErrorAction : Stop
    StartTimeUtc   : 2017-10-13T15:44:06.7431447Z
    Status         : InProgress
    Task           : Task
    
    FullStepIndex : 2.9.2
    Index         : 2
    Name          : PreUpdate ACS Blob Service
    Description   : Check function level, update deployment artifacts, configure Blob service settings
    StartTimeUtc  : 2017-10-13T15:44:26.0708525Z
    Status        : InProgress
    Task          : Task

Возобновление операции в случае сбояResume a failed update operation

В случае сбоя обновления можно возобновить обновление с точки, где оно остановилось.If the update fails, you can resume the update run where it left off.

Invoke-Command -Session $pepSession -ScriptBlock { Resume-AzureStackUpdate } 

ДиагностикаTroubleshoot

Привилегированная конечная точка доступна на всех виртуальных машинах ERCS в среде Azure Stack Hub.The privileged endpoint is available on all ERCS VMs in the Azure Stack Hub environment. Так как подключение к конечной точке высокой доступности не установлено, возможны нерегулярные перерывы в работе, предупреждения или сообщения об ошибках.Because the connection isn't made to a highly available endpoint, you may experience occasional interruptions, warning, or error messages. Эти сообщения могут свидетельствовать о том, что сеанс был отключен или что произошла ошибка связи со службой ECE.These messages may indicate that the session was disconnected or that there was an error communicating with the ECE Service. Это ожидаемое поведение.This behavior is expected. Можно повторить операцию через несколько минут или создать сеанс привилегированной конечной точки на одной из других виртуальных машин ERCS.You can retry the operation in a few minutes or create a new privileged endpoint session on one of the other ERCS VMs.

Дополнительные сведения об устранении неполадок с обновлениями см. в этой статье.For more information on troubleshooting updates, see Azure Stack Troubleshooting

Дальнейшие действияNext steps