Actualización de Azure Local mediante PowerShell

Se aplica a: implementaciones hiperconvergidas de Azure Local

En este artículo se describe cómo aplicar una actualización de solución a la Azure Local mediante PowerShell.

El procedimiento de este artículo se aplica tanto a sistemas de nodo único como de varios nodos que ejecutan la versión más reciente de Azure Local con el orquestador (Administrador de ciclo de vida) instalado. Si creó el sistema mediante la implementación de Azure Local, el orquestador se instaló automáticamente como parte de la implementación.

Important

El procedimiento que se describe aquí se aplica al actualizar la versión de Azure Local existente a una versión más reciente.

Acerca de las actualizaciones de soluciones

Las actualizaciones de la solución Azure Local pueden incluir actualizaciones de la plataforma, el servicio y la extensión de solución. Para obtener más información sobre cada uno de estos tipos de actualizaciones, consulte Acerca de las actualizaciones de Azure Local.

Important

En función de la solución que usa para ejecutar Azure Local, las actualizaciones de características más recientes pueden tardar una semana desde la fecha de disponibilidad antes de que estén visibles, debido a la validación y el cierre de sesión del asociado de hardware.

Al aplicar una actualización de solución, siga estos pasos generales:

  1. Asegúrese de completar todos los requisitos previos.
  2. Conéctese a la instancia de Azure Local a través de PowerShell remoto.
  3. Confirme las versiones de software instaladas actualmente y compruebe que el clúster está en buen estado.
  4. Descubra las actualizaciones disponibles y filtre las que puede aplicar al sistema.
  5. (Recomendado) Descargue previamente las actualizaciones y evalúe la preparación de la actualización del sistema.
  6. Instale las actualizaciones y realice un seguimiento del progreso de las actualizaciones. Supervise el progreso detallado según sea necesario.
  7. Compruebe la versión de las actualizaciones instaladas.
  8. Instale las actualizaciones de hardware.

El tiempo necesario para instalar las actualizaciones varía en función de los siguientes factores:

  • Contenido de la actualización
  • Carga en el sistema
  • Número de máquinas del sistema
  • Tipo de hardware usado
  • Extensión de solución usada

En la tabla siguiente se resumen las estimaciones de tiempo aproximadas para un sistema típico de nodo único o multinodo:

System/Time Hora de comprobación de estado
hh:mm
Hora de instalación de la actualización
hh:mm
Nodo único ~ 00:17 aproximadamente a las 4:00
4-nodes ~ 00:22 Aproximadamente 06:00

Important

No se admite el uso de herramientas de terceros para instalar actualizaciones.

Prerequisites

Antes de empezar, asegúrese de cumplir los siguientes requisitos previos:

  • Tiene acceso a un sistema Azure Local que ejecuta la versión 2311 o posterior. El sistema está registrado en Azure.
  • Tiene acceso a un cliente que puede conectarse a su Azure Local.
  • Tiene acceso a la actualización de la solución a través de la red.

Conexión a la Azure Local

Note

Siga estos pasos en el cliente para conectarse a una de las máquinas de la Azure Local.

  1. Ejecute PowerShell como administrador en el cliente que usa para conectarse al sistema.

  2. Abra una sesión remota de PowerShell en un equipo de la Azure Local. Ejecute el siguiente comando y proporcione las credenciales de la máquina cuando se le solicite:

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

    Note

    Inicie sesión con las credenciales de la cuenta de usuario de implementación. Esta cuenta se crea al preparar Active Directory y se usa para implementar Azure Local.

    Expanda esta sección para ver una salida de ejemplo.

    Este es un ejemplo de salida:

    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>
    

Paso 1: Confirmar software y comprobar el estado del sistema

Antes de detectar las actualizaciones, asegúrese de que el sistema ejecuta Azure Local 2311 o posterior.

  1. Asegúrese de que está conectado a la máquina mediante la cuenta de usuario de implementación. Ejecute el siguiente comando:

    whoami
    
  2. Para asegurarse de que el sistema ejecuta Azure Local 2311 o posterior, ejecute el siguiente comando en una de las máquinas del sistema:

    Get-SolutionUpdateEnvironment
    
    Expanda esta sección para ver una salida de ejemplo.
    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. Anote CurrentVersion en su sistema. La versión actual refleja la versión de la solución que el sistema está ejecutando.

  4. Revise el HealthState en el sistema y compruebe que el sistema está en buen estado. Si HealthState es Failure, Erroro Warning, consulte Solución de problemas de comprobaciones de preparación antes de continuar.

Paso 2: Detectar las actualizaciones

Siga estos pasos para detectar las actualizaciones disponibles para el sistema:

  1. Conéctese a un equipo de la Azure Local mediante la cuenta de usuario de implementación.

  2. Revise los detalles de las actualizaciones que Ready se van a instalar mediante Get-SolutionUpdate.

    Get-SolutionUpdate | Where-Object {$_.State -like "Ready*" -or $_.State -like "Additional*"} | FL DisplayName, Description, ResourceId, State, PackageType 
    
    Expanda esta sección para ver una salida de ejemplo.

    Este es un ejemplo de salida:

    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
    

    Este comando puede enumerar una o varias opciones, incluidas las entradas para las actualizaciones completas Solution (que también pueden incluir una extensión del Generador de soluciones) y las actualizaciones independientes SBE .

    Si no ve una actualización esperada, elimine el filtro del comando para ver si aparece en un estado non-ready.

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

    Para obtener más información, consulte Acerca de las fases de actualización para obtener más información sobre los estados de actualización.

  3. Seleccione la actualización que desea instalar y anote su ResourceId. Revise los detalles de la actualización para confirmar que seleccionó la actualización deseada para instalar.

    $Update = Get-SolutionUpdate –Id <ResourceId>
    $Update
    
    Expanda esta sección para ver una salida de ejemplo.

    Este es un ejemplo de salida:

    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://mms.heiai.top/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://mms.heiai.top/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}
    

    Note

    Es normal HealthState que sea Unknown para una actualización que aún no está programada o preparada.

  4. Opcionalmente, revise las versiones de los componentes del paquete de actualización.

    $Update = Get-SolutionUpdate -Id <ResourceID>
    $Update.ComponentVersions
    
    Expanda esta sección para ver una salida de ejemplo.

    Este es un ejemplo de salida:

    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>
    
    

Paso 3: Importación y redescubrimiento de actualizaciones

Este paso es opcional. Es posible que tenga que importar actualizaciones en uno de los escenarios siguientes:

  • La actualización que desea instalar informa del estado AdditionalContentRequired. Es posible que se requiera contenido adicional para poder programar la actualización. Para obtener más información sobre este estado y sobre las actualizaciones de extensiones de solución, consulte Actualizaciones de extensión del Generador de soluciones en Azure Local.

  • La actualización que desea instalar no aparece porque el soporte técnico le proporciona una versión privada para solucionar un problema que está experimentando.

  • La actualización se presenta como Ready, pero dado que su sistema tiene conectividad de red limitada, desea evitar la fase de descarga en línea de la actualización de la extensión de solución.

Siga estos pasos para importar y detectar las actualizaciones de la solución.

  1. Conéctese a un equipo de la Azure Local mediante la cuenta de usuario de implementación.

  2. Vaya al recurso compartido de red y obtenga el paquete de actualización que desea usar. Compruebe que el paquete de actualización que importa contiene los siguientes archivos:

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

    Si una extensión del generador de soluciones forma parte del paquete de actualización, también debería ver los siguientes archivos:

    • SBE_Contoso_GenA_4.1.2410.5.xml
    • SBE_Contoso_GenA_4.1.2410.5.zip
    • SBE_Discovery_Contoso.xml
  3. Descargue los archivos a los que desea importar en una ubicación a la que pueda acceder la instancia de Azure Local. Si va a importar una extensión de solución, siempre descargará tres archivos que coincidan con el siguiente patrón de nomenclatura:

    Patrón de nombre de archivo Example Description
    <SBE_Discovery_Manufacturer>.xml SBE_Discovery_Contoso.xml Manifiesto de detección de extensiones de solución que habilita la detección de actualizaciones.
    SBE_<Fabricante>_<Familia>_<Versión>.xml SBE_Contoso_GenA_4.1.2410.5.xml Archivo con inventario de extensiones de la solución y lista de materiales de software firmada
    SBE_<Fabricante>_<Familia>_<Versión>.zip SBE_Contoso_GenA_4.1.2410.5.zip Un archivo con una extensión de carga asociada a una solución.
  4. Cree una carpeta para la detección por parte del servicio de actualización en la siguiente ubicación en el volumen de infraestructura del sistema.

    New-Item C:\ClusterStorage\Infrastructure_1\Shares\SU1_Infrastructure_1\import -ItemType Directory 
    
  5. Copie los archivos de actualización en la carpeta que creó en el paso anterior.

  6. Detecte manualmente el paquete de actualización mediante el servicio Update. Ejecute el siguiente comando:

    Add-SolutionUpdate -SourceFolder C:\ClusterStorage\Infrastructure_1\Shares\SU1_Infrastructure_1\import
    
  7. Compruebe que el servicio Update detecta el paquete de actualización y que está disponible para iniciar la preparación y la instalación. Repita el comando Get-SolutionUpdate para volver a detectar las actualizaciones.

Puede descargar la actualización y ejecutar comprobaciones para comprobar la preparación de la actualización del clúster sin iniciar la instalación.

  1. Para descargar las actualizaciones sin iniciar la instalación, ejecute el siguiente comando:

    Get-SolutionUpdate -Id <ResourceId> | Start-SolutionUpdate –PrepareOnly
    
    Expanda esta sección para ver una salida de ejemplo.

    Este es un ejemplo de salida:

    PS C:\Users\lcmuser> Get-SolutionUpdate -Id redmond/Solution10.2408.2.7 | Start-SolutionUpdate –PrepareOnly
    redmond/SBE4.1.2410.9/<GUID>
    
  2. Para realizar un seguimiento del progreso de la actualización, supervise el estado de la actualización. Ejecute el siguiente comando:

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

    Cuando se inicia la actualización, se producen las siguientes acciones:

    • El proceso comienza a descargar las actualizaciones. Según el tamaño del paquete de descarga y el ancho de banda de red, la descarga puede tardar varios minutos.
    Expanda esta sección para ver una salida de ejemplo.

    Este es un ejemplo de salida cuando se descargan las actualizaciones:

    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. Una vez descargado el paquete, el sistema realiza comprobaciones de preparación para evaluar la preparación de las actualizaciones del sistema. Para obtener más información sobre las comprobaciones de preparación, consulte Fases de actualización. Durante esta fase, el estado de la actualización se muestra como HealthChecking.

    Expanda esta sección para ver una salida de ejemplo.
    PS C:\Users\lcmuser> Get-SolutionUpdate|ft Version,State,UpdateStateProperties,HealthState
    
    Version         State             HealthState
    -------         -----             --------------------- 
    10.2408.2.7     HealthChecking    InProgress
    
  4. Cuando finalicen las comprobaciones de preparación, el sistema estará listo para instalar las actualizaciones. El State de la actualización se muestra como ReadyToInstall. Si el State de la actualización se muestra como HealthCheckFailed, consulte Solucionar problemas en las comprobaciones de preparación antes de continuar.

Note

Si ha realizado la preparación de la actualización mediante el -PrepareOnly parámetro , debe actualizar mediante PowerShell. No se admite el traslado a Azure portal para iniciar la actualización y podría provocar problemas inesperados.

Paso 5: Iniciar la actualización

Durante la instalación, es posible que las máquinas del sistema se reinicien. Es posible que tenga que volver a establecer la sesión remota de PowerShell para supervisar las actualizaciones. Si va a actualizar una sola máquina, el Azure Local experimenta tiempo de inactividad.

Inicie una actualización seleccionando una sola actualización y pasándola a Start-SolutionUpdate.

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

Note

Si omite el paso 4 (y no realiza una llamada similar a Start-SolutionUpdate -PrepareOnly), al llamar Start-SolutionUpdate primero se descargan las actualizaciones y se realiza un conjunto de comprobaciones para comprobar la preparación de la actualización del clúster antes de iniciar la instalación de la actualización.

Expanda esta sección para ver una salida de ejemplo.
PS C:\Users\lcmuser> $InstanceId = Get-SolutionUpdate -Id redmond/Solution10.2408.2.7 | Start-SolutionUpdate

Este comando inicia el proceso para instalar la actualización.

Tip

Guarde el valor de $InstanceId. Puede usarlo más adelante para resolver problemas con las actualizaciones de soluciones de Azure Local.

Paso 6: Seguimiento del progreso de la actualización

Realice un seguimiento del progreso de la actualización del clúster en el portal de Azure después de que se inicie la actualización. El portal es una excelente opción para realizar un seguimiento del progreso de la actualización incluso cuando la actualización se inicia a través de PowerShell, ya que no está sujeta a interrupciones en los informes de estado.

Tip

  • Para supervisar mediante PowerShell, conecte la sesión de PowerShell al último servidor del clúster para evitar que la sesión se desconecte antes. Las sesiones se desconectan cuando se reinician los sistemas, por lo que cambiar a supervisar desde un servidor ya actualizado minimiza la frecuencia de desconexión.
  • Realice un seguimiento del progreso de la actualización del clúster en el portal de Azure para evitar tener que volver a conectarse a sesiones de PowerShell después de un reinicio de la máquina.

Siga estos pasos para realizar un seguimiento del progreso de la actualización mediante PowerShell.

  1. Para realizar un seguimiento del progreso de la actualización, supervise el estado de la actualización. Ejecute el siguiente comando:

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

    La actualización avanza a través de varios estados, tal y como se describe en Descripción de las fases de actualización.

    En los ejemplos siguientes se muestra cómo supervisar la actualización a medida que avanza a través de esas fases mediante las State propiedades y UpdateStateProperties .

    • Estado de descarga

      Poco después de llamar a Start-SolutionUpdate, comienza la descarga de las actualizaciones. Según el tamaño del paquete de descarga y el ancho de banda de red, la descarga puede tardar varios minutos.

      Expanda esta sección para ver una salida de ejemplo.

      Este es un ejemplo de salida cuando se descargan las actualizaciones:

      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
      
    • Preparando estado

      Una vez descargadas las actualizaciones, el proceso prepara las actualizaciones. En el estado de preparación, el proceso de actualización confirma los hashes de los archivos de actualización y extrae los archivos para preparar y almacenar provisionalmente los archivos de actualización.

      Expanda esta sección para ver una salida de ejemplo.

      Este es un ejemplo de salida cuando se descargan las actualizaciones:

      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
      
    • Estado HealthChecking

      Una vez preparadas las actualizaciones, las comprobaciones de preparación se ejecutan para evaluar la preparación de actualizaciones del clúster. Para obtener más información sobre las comprobaciones de preparación, consulte Fases de actualización.

      Durante esta fase, el State de la actualización se muestra como HealthChecking. Si el State de la actualización se muestra como HealthCheckFailed, consulte Solucionar problemas en las comprobaciones de preparación antes de continuar.

      Expanda esta sección para ver una salida de ejemplo.

      Este es un ejemplo de salida cuando se están realizando las actualizaciones 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
      
    • estado de instalación Cuando el sistema esté listo, la actualización pasa a Installing. Durante esta fase, el State de las actualizaciones se muestra como Installing y UpdateStateProperties muestra el porcentaje de la instalación que se completó.

      Expanda esta sección para ver una salida de ejemplo.

      Este es un ejemplo de salida cuando se están realizando las actualizaciones 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
      

Cuando finalice la instalación, el estado cambia a Installed. Para obtener más información sobre los distintos estados de las actualizaciones, consulte Progreso y supervisión de la instalación.

Paso 7: Reanudar la actualización (si es necesario)

Para reanudar una actualización que produjo un error anteriormente, ejecute el siguiente comando en PowerShell:

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

Para reanudar una actualización que produjo un error anteriormente porque las comprobaciones de preparación de actualizaciones están en un Warning estado, ejecute el siguiente comando:

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

Para obtener ayuda para solucionar otros problemas de ejecución de actualizaciones, consulte Solución de problemas de actualizaciones.

Paso 8: Comprobar la instalación

Una vez instaladas las actualizaciones, compruebe la versión de la solución del entorno y la versión del sistema operativo.

  1. Una vez que la actualización muestre el Installed estado, compruebe la versión de la solución de entorno. Ejecute el siguiente comando:

    Get-SolutionUpdateEnvironment | ft State, CurrentVersion
    
    Expanda esta sección para ver una salida de ejemplo.
    PS C:\Users\lcmuser> Get-SolutionUpdateEnvironment | ft State, CurrentVersion
    
    State               CurrentVersion
    -----               --------------
    AppliedSuccessfully 10.2408.2.7
    
    
  2. Compruebe la versión del sistema operativo para confirmar que coincide con la receta que instaló. Ejecute el siguiente comando:

    cmd /c ver
    
    Expanda esta sección para ver una salida de ejemplo.

    Este es una salida de ejemplo:

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

Paso 9: Instalar actualizaciones de hardware

Hay varios métodos para instalar actualizaciones de hardware para Azure Local en función de lo que admita la instancia de Azure Local.

  • Extensión del Generador de soluciones
  • Centro de Administración de Windows
  • Recomendación del proveedor de hardware

Extensión del Generador de soluciones

Para sistemas que admiten extensiones del Generador de soluciones:

  • Las actualizaciones adecuadas de las extensiones del Generador de Soluciones se incluyen automáticamente al instalar actualizaciones de características locales de Azure.
  • Las actualizaciones de la extensión del Generador de soluciones se pueden instalar por separado (las actualizaciones de hardware se pueden instalar sin una actualización de Azure Local combinada).

Windows Admin Center (Centro de administración de Windows)

Si el hardware no admite la experiencia de actualización de la extensión del Generador de soluciones, el proceso para actualizar el hardware sigue siendo similar al proceso usado con Azure Local, versión 22H2. Esto significa que las actualizaciones de hardware pueden estar disponibles mediante Windows Admin Center. Para obtener más información, vea Update Azure Local, versión 22H2.

Recomendación del proveedor de hardware

Es posible que las actualizaciones de firmware y controladores deban realizarse por separado, si el hardware no admite actualizaciones de hardware mediante paquetes de extensión del Generador de soluciones o Windows Admin Center. Siga las recomendaciones del proveedor de hardware.

Para determinar si el sistema admite la extensión del generador de soluciones y para obtener más información sobre la instalación de actualizaciones de hardware, consulte Acerca de las actualizaciones de software de la extensión del Generador de soluciones.

Paso siguiente