Nueva versión de la extensión de máquina virtual de Azure para soluciones de SAP

Requisitos previos

Nota:

Instrucción de soporte técnico general: la asistencia correspondiente a la extensión de Azure para SAP se proporciona a través de los canales de soporte técnico de SAP. Si necesita ayuda con la extensión de máquina virtual de Azure para soluciones de SAP, abra un caso de soporte técnico con Soporte técnico de SAP.

Nota

Asegúrese de desinstalar la extensión de máquina virtual antes de cambiar entre la versión estándar y la nueva de la extensión de Azure para SAP.

Nota

Hay dos versiones de la extensión de VM. En este artículo se trata la nueva versión de la extensión de máquina virtual de Azure para SAP. Para obtener instrucciones sobre cómo instalar la versión estándar, consulte Standard Version of Azure VM extension for SAP solutions.

  • Asegúrese de usar el agente del host 7.21 PL 47 o posterior.
  • Asegúrese de que la máquina virtual en la que está habilitada la extensión tiene acceso a management.azure.com.

Implementación de cmdlets de Azure PowerShell

Siga los pasos descritos en el artículo Instalar el módulo de Azure PowerShell

Compruebe periódicamente si existen actualizaciones para los cmdlets de PowerShell, que normalmente se actualizan mensualmente. Siga los pasos descritos en este artículo. Salvo que se indique lo contrario en las notas de SAP 1928533 o 2015553, le recomendamos que trabaje con la versión más reciente de los cmdlets de Azure PowerShell.

Para comprobar la versión de los cmdlets de Azure PowerShell que están instalados en su equipo, ejecute este comando de PowerShell:

(Get-Module Az.Compute).Version

Implementación de la CLI de Azure

Siga los pasos descritos en el artículo Instalación de la CLI de Azure

Compruebe regularmente si hay actualizaciones de la CLI de Azure, que normalmente se actualiza mensualmente.

Para comprobar la versión de la CLI de Azure que está instalada en el equipo, ejecute este comando:

az --version

Configuración de la extensión de máquina virtual de Azure para soluciones de SAP con PowerShell

La nueva extensión de VM para SAP usa una identidad administrada asignada a la máquina virtual para acceder a los datos de supervisión y configuración de la máquina virtual. Para instalar la nueva extensión de Azure para SAP mediante PowerShell, primero debe asignar esa identidad a la máquina virtual y concederle acceso a todos los recursos que usa esa máquina virtual, por ejemplo, discos e interfaces de red.

Nota

En los pasos siguientes se necesitan privilegios de propietario para el grupo de recursos o en recursos individuales (máquinas virtuales, discos de datos e interfaces de red).

  1. Asegúrese de usar el agente del host 7.21 PL 47 o posterior.

  2. Asegúrese de desinstalar la versión estándar de la extensión de VM para SAP. No se admite la instalación de ambas versiones de la extensión de VM para SAP en la misma máquina virtual.

  3. Asegúrese de tener instalada la versión más reciente del cmdlet de Azure PowerShell (al menos 4.3.0). Para más información, consulte Deploying Azure PowerShell cmdlets.

  4. Ejecute el siguiente cmdlet de PowerShell. Para ver la lista de entornos disponibles, ejecute el cmdlet Get-AzEnvironment. Si desea usar una instancia global de Azure, el entorno es AzureCloud. Para Microsoft Azure operado por 21Vianet, seleccione AzureChinaCloud.

    La extensión de VM para SAP admite la configuración de un proxy que esa extensión debe usar para conectarse a recursos externos; por ejemplo, la API de Azure Resource Manager. Use el parámetro -ProxyURI para establecer el proxy.

    $env = Get-AzEnvironment -Name <name of the environment>
    Connect-AzAccount -Environment $env
    Set-AzContext -SubscriptionName <subscription name>
    
    Set-AzVMAEMExtension -ResourceGroupName <resource group name> -VMName <virtual machine name> -InstallNewExtension
    
  5. Reinicio del agente de host de SAP

    Inicie sesión en la máquina virtual en la que habilitó la extensión de máquina virtual para SAP y reinicie el agente de host de SAP, en caso de que ya estuviera instalado. El agente de host de SAP no usa la extensión de máquina virtual hasta que se reinicia. Actualmente no puede detectar que se instaló una extensión después de iniciarse.

Configuración de la extensión de máquina virtual de Azure para soluciones de SAP con la CLI de Azure

La nueva extensión de VM para SAP usa una identidad administrada asignada a la máquina virtual para acceder a los datos de supervisión y configuración de la máquina virtual.

Nota

En los pasos siguientes se necesitan privilegios de propietario para el grupo de recursos o en recursos individuales (máquinas virtuales, discos de datos, etc.)

  1. Asegúrese de usar SAP Host Agent 7.21 PL 47 o posterior.

  2. Asegúrese de desinstalar la versión actual de la extensión de VM para SAP. No puede instalar las dos versiones de la extensión de VM para SAP en la misma máquina virtual.

  3. Instale la versión más reciente de la CLI de Azure 2.0 (versión 2.19.1 o posterior).

  4. Inicie sesión con su cuenta de Azure:

    az login
    
  5. Instale la extensión AEM de la CLI de Azure. Asegúrese de que usa la versión 0.2.2 o posterior.

    az extension add --name aem
    
  6. Habilite la nueva extensión:

    La extensión de VM para SAP admite la configuración de un proxy que esa extensión debe usar para conectarse a recursos externos; por ejemplo, la API de Azure Resource Manager. Use el parámetro --proxy-uri para establecer el proxy.

    az vm aem set -g <resource-group-name> -n <vm name> --install-new-extension
    
  7. Reinicio del agente de host de SAP

    Inicie sesión en la máquina virtual en la que habilitó la extensión de máquina virtual para SAP y reinicie el agente de host de SAP, en caso de que ya estuviera instalado. El agente de host de SAP no usa la extensión de máquina virtual hasta que se reinicia. Actualmente no puede detectar que se instaló una extensión después de iniciarse.

Configuración manual de la extensión de máquina virtual de Azure para soluciones de SAP

Aunque puede usar Azure Resource Manager, Terraform u otras herramientas para implementar la extensión de máquina virtual para SAP, también puede hacerlo manualmente, es decir, sin usar los comandos dedicados de PowerShell o la CLI de Azure.

Antes de implementar la extensión de máquina virtual para SAP, asegúrese de asignar a la máquina virtual una identidad administrada asignada por el usuario o por el sistema. Para más información, lea las guías siguientes:

Después de asignar una identidad a la máquina virtual, proporciónele acceso de lectura al grupo de recursos o a los recursos individuales asociados (máquina virtual, interfaces de red, discos del sistema operativo y discos de datos). Se recomienda usar el rol lector integrado para conceder el acceso a estos recursos. También puede conceder este acceso agregando la identidad de máquina virtual a un grupo de Microsoft Entra que ya tiene acceso de lectura a los recursos necesarios. De esta forma, ya no es necesario tener privilegios de propietario al implementar la extensión de máquina virtual para SAP si usa una identidad asignada por el usuario que ya tiene los permisos necesarios.

Hay diferentes maneras de implementar la extensión de máquina virtual para SAP de forma manual. Puede encontrar algunos ejemplos en los próximos capítulos.

Actualmente, la extensión admite los siguientes tipos de claves de configuración. En el ejemplo siguiente, se muestra msi_res_id.

  • msi_res_id: identificador de la identidad asignada por el usuario que debe usar la extensión para obtener la información necesaria sobre la máquina virtual y sus recursos.
  • proxy: dirección URL del proxy que la extensión debe usar para conectarse a Internet, por ejemplo, para recuperar información sobre la máquina virtual y sus recursos.

Implementación manual con Azure PowerShell

El código siguiente contiene cuatro ejemplos. Muestra cómo implementar la extensión en Windows y Linux mediante una identidad asignada por el usuario o por el sistema. Asegúrese de reemplazar el nombre del grupo de recursos, la ubicación y el nombre de la máquina virtual en el ejemplo.

# Windows VM - user assigned identity
Set-AzVMExtension -Publisher "Microsoft.AzureCAT.AzureEnhancedMonitoring" -ExtensionType "MonitorX64Windows" -ResourceGroupName "<rg name>" -VMName "<vm name>" `
   -Name "MonitorX64Windows" -TypeHandlerVersion "1.0" -Location "<location>" -SettingString '{"cfg":[{"key":"msi_res_id","value":"<user assigned resource id>"}]}'

# Windows VM - system assigned identity
Set-AzVMExtension -Publisher "Microsoft.AzureCAT.AzureEnhancedMonitoring" -ExtensionType "MonitorX64Windows" -ResourceGroupName "<rg name>" -VMName "<vm name>" `
   -Name "MonitorX64Windows" -TypeHandlerVersion "1.0" -Location "<location>" -SettingString '{"cfg":[]}'

# Linux VM - user assigned identity
Set-AzVMExtension -Publisher "Microsoft.AzureCAT.AzureEnhancedMonitoring" -ExtensionType "MonitorX64Linux" -ResourceGroupName "<rg name>" -VMName "<vm name>" `
   -Name "MonitorX64Linux" -TypeHandlerVersion "1.0" -Location "<location>" -SettingString '{"cfg":[{"key":"msi_res_id","value":"<user assigned resource id>"}]}'

# Linux VM - system assigned identity
Set-AzVMExtension -Publisher "Microsoft.AzureCAT.AzureEnhancedMonitoring" -ExtensionType "MonitorX64Linux" -ResourceGroupName "<rg name>" -VMName "<vm name>" `
   -Name "MonitorX64Linux" -TypeHandlerVersion "1.0" -Location "<location>" -SettingString '{"cfg":[]}'

Implementación manual con la CLI de Azure

El código siguiente contiene cuatro ejemplos. Muestra cómo implementar la extensión en Windows y Linux mediante una identidad asignada por el usuario o por el sistema. Asegúrese de reemplazar el nombre del grupo de recursos, la ubicación y el nombre de la máquina virtual en el ejemplo.

# Windows VM - user assigned identity
az vm extension set --publisher "Microsoft.AzureCAT.AzureEnhancedMonitoring" --name "MonitorX64Windows" --resource-group "<rg name>" --vm-name "<vm name>" \
   --extension-instance-name "MonitorX64Windows" --settings '{"cfg":[{"key":"msi_res_id","value":"<user assigned resource id>"}]}'

# Windows VM - system assigned identity
az vm extension set --publisher "Microsoft.AzureCAT.AzureEnhancedMonitoring" --name "MonitorX64Windows" --resource-group "<rg name>" --vm-name "<vm name>" \
   --extension-instance-name "MonitorX64Windows" --settings '{"cfg":[]}'
   
# Linux VM - user assigned identity
az vm extension set --publisher "Microsoft.AzureCAT.AzureEnhancedMonitoring" --name "MonitorX64Linux" --resource-group "<rg name>" --vm-name "<vm name>" \
   --extension-instance-name "MonitorX64Linux" --settings '{"cfg":[{"key":"msi_res_id","value":"<user assigned resource id>"}]}'

# Linux VM - system assigned identity
az vm extension set --publisher "Microsoft.AzureCAT.AzureEnhancedMonitoring" --name "MonitorX64Linux" --resource-group "<rg name>" --vm-name "<vm name>" \
   --extension-instance-name "MonitorX64Linux" --settings '{"cfg":[]}'

Implementación manual con Terraform

El manifiesto siguiente contiene cuatro ejemplos. Muestra cómo implementar la extensión en Windows y Linux mediante una identidad asignada por el usuario o por el sistema. Asegúrese de reemplazar el identificador de la máquina virtual y el identificador de la identidad asignada por el usuario en el ejemplo.


# Windows VM - user assigned identity

resource "azurerm_virtual_machine_extension" "example" {
  name                 = "MonitorX64Windows"
  virtual_machine_id   = "<vm id>"
  publisher            = "Microsoft.AzureCAT.AzureEnhancedMonitoring"
  type                 = "MonitorX64Windows"
  type_handler_version = "1.0"
  auto_upgrade_minor_version = true

  settings = <<SETTINGS
{
    "cfg":[
        {
            "key":"msi_res_id",
            "value":"<user assigned resource id>"
        }
    ]
}
SETTINGS
}

# Windows VM - system assigned identity

resource "azurerm_virtual_machine_extension" "example" {
  name                 = "MonitorX64Windows"
  virtual_machine_id   = "<vm id>"
  publisher            = "Microsoft.AzureCAT.AzureEnhancedMonitoring"
  type                 = "MonitorX64Windows"
  type_handler_version = "1.0"
  auto_upgrade_minor_version = true

  settings = <<SETTINGS
{
    "cfg":[
    ]
}
SETTINGS
}

# Linux VM - user assigned identity

resource "azurerm_virtual_machine_extension" "example" {
  name                 = "MonitorX64Linux"
  virtual_machine_id   = "<vm id>"
  publisher            = "Microsoft.AzureCAT.AzureEnhancedMonitoring"
  type                 = "MonitorX64Linux"
  type_handler_version = "1.0"
  auto_upgrade_minor_version = true

  settings = <<SETTINGS
{
    "cfg":[
        {
            "key":"msi_res_id",
            "value":"<user assigned resource id>"
        }
    ]
}
SETTINGS
}

# Linux VM - system assigned identity

resource "azurerm_virtual_machine_extension" "example" {
  name                 = "MonitorX64Linux"
  virtual_machine_id   = "<vm id>"
  publisher            = "Microsoft.AzureCAT.AzureEnhancedMonitoring"
  type                 = "MonitorX64Linux"
  type_handler_version = "1.0"
  auto_upgrade_minor_version = true

  settings = <<SETTINGS
{
    "cfg":[
    ]
}
SETTINGS
}

Versiones de la extensión de máquina virtual para SAP

Si quiere deshabilitar las actualizaciones automáticas de la extensión de máquina virtual o quiere implementar una versión específica de la extensión, puede recuperar las versiones disponibles con la CLI de Azure o Azure PowerShell.

Azure PowerShell

# Windows
Get-AzVMExtensionImage -Location westeurope -PublisherName Microsoft.AzureCAT.AzureEnhancedMonitoring -Type MonitorX64Windows
# Linux
Get-AzVMExtensionImage -Location westeurope -PublisherName Microsoft.AzureCAT.AzureEnhancedMonitoring -Type MonitorX64Linux

CLI de Azure

# Windows
az vm extension image list --location westeurope --publisher Microsoft.AzureCAT.AzureEnhancedMonitoring --name MonitorX64Windows
# Linux
az vm extension image list --location westeurope --publisher Microsoft.AzureCAT.AzureEnhancedMonitoring --name MonitorX64Linux

Comprobación de preparación

Con esta comprobación, se asegura de que la extensión de Azure para SAP subyacente proporcione todas las métricas que aparecen dentro de la aplicación SAP.

Ejecución de la comprobación de la preparación en una máquina virtual Windows

  1. Inicie sesión en la máquina virtual de Azure (no se necesita una cuenta de administrador).
  2. Abra un explorador web y vaya a http://127.0.0.1:11812/azure4sap/metrics.
  3. El explorador debe mostrar o descargar un archivo XML con los datos de supervisión de la máquina virtual. Si no lo hace, asegúrese de que la extensión de Azure para SAP esté instalada.
  4. Compruebe el contenido del archivo XML. El archivo XML al que se puede acceder desde http://127.0.0.1:11812/azure4sap/metrics contiene todos los contadores de rendimiento de Azure completados para SAP. También contiene un resumen y un indicador de mantenimiento del estado de la extensión de Azure para SAP.
  5. Compruebe el valor del elemento Provider Health Description (Descripción de mantenimiento del proveedor). Si el valor no es OK (Correcto), siga las instrucciones del capítulo Health checks.

Ejecución de la comprobación de la preparación en una máquina virtual Linux

  1. Conéctese a la máquina virtual de Azure mediante SSH.
  2. Comprobación de la salida del comando siguiente
    curl http://127.0.0.1:11812/azure4sap/metrics
    
    Resultado esperado: Devuelve un documento XML que contiene la información de supervisión de la máquina virtual, sus discos e interfaces de red.

Si la comprobación anterior no fue correcta, ejecute estas comprobaciones adicionales:

  1. Asegúrese de que waagent esté instalado y habilitado.

    a. Ejecute sudo ls -al /var/lib/waagent/:

    Resultado esperado: muestra el contenido del directorio de waagent.

    b. Ejecute ps -ax | grep waagent:

    Resultado esperado: muestra una entrada similar a: python /usr/sbin/waagent -daemon.

  2. Asegúrese de que la extensión de Azure para SAP esté instalada y en ejecución.

    a. Ejecute sudo sh -c 'ls -al /var/lib/waagent/Microsoft.AzureCAT.AzureEnhancedMonitoring.MonitorX64Linux-*/':

    Resultado esperado: muestra el contenido del directorio de la extensión de Azure para SAP.

    b. Ejecute ps -ax | grep AzureEnhanced:

    Resultado esperado: muestra una entrada similar a: /var/lib/waagent/Microsoft.AzureCAT.AzureEnhancedMonitoring.MonitorX64Linux-1.0.0.82/AzureEnhancedMonitoring -monitor.

  3. Instale SAP Host Agent tal y como se describe en la nota de SAP 1031096, y compruebe la salida de saposcol.

    a. Ejecute /usr/sap/hostctrl/exe/saposcol -d:

    b. Ejecute dump ccm:

    c. Compruebe si la métrica Virtualization_Configuration\Enhanced Monitoring Access es true.

Si ya tiene instalado un servidor de aplicaciones de SAP NetWeaver ABAP, abra la transacción ST06 y compruebe si la supervisión está habilitada.

Si se produce un error en alguna de estas comprobaciones o necesita información detallada acerca de cómo volver a implementar la extensión, consulte Troubleshooting for Windows o Troubleshooting for Linux.

Comprobaciones de estado

Si parte de los datos de infraestructura no se entregan correctamente según lo indicado en las pruebas que se describen en Comprobación de preparación, ejecute las comprobaciones de estado que se describen en este capítulo para comprobar si la configuración de la infraestructura de Azure y la extensión de Azure para SAP se han configurado correctamente.

Comprobaciones de estado mediante PowerShell

  1. Asegúrese de tener instalada la versión más reciente del cmdlet de Azure PowerShell, tal y como se describe en Implementación de cmdlets de Azure PowerShell.

  2. Ejecute el siguiente cmdlet de PowerShell. Para ver la lista de entornos disponibles, ejecute el cmdlet Get-AzEnvironment. Para usar Azure global, seleccione el entorno AzureCloud. Para Microsoft Azure operado por 21Vianet, seleccione AzureChinaCloud.

    $env = Get-AzEnvironment -Name <name of the environment>
    Connect-AzAccount -Environment $env
    Set-AzContext -SubscriptionName <subscription name>
    Test-AzVMAEMExtension -ResourceGroupName <resource group name> -VMName <virtual machine name>
    
  3. El script comprueba la configuración de la máquina virtual que ha seleccionado.

Asegúrese de que todos los resultados de la comprobación del estado de mantenimiento sean OK. Si algunas comprobaciones no muestran un estado OK (Correcto), ejecute el cmdlet de actualización como se describe en las seccionesConfiguración de la extensión de máquina virtual de Azure para soluciones de SAP con la CLI de Azure o Configuración de la nueva extensión de máquina virtual de Azure para soluciones de SAP con PowerShell. Repita las comprobaciones describen en Comprobación de preparación y en este capítulo. Si las comprobaciones siguen indicando problemas en algunos contadores o en todos ellos, consulte Solución de problemas de Linux o Solución de problemas de Windows.

Comprobaciones de estado mediante la CLI de Azure

Para ejecutar la comprobación de estado de la extensión de máquina virtual de Azure para SAP mediante la CLI de Azure:

  1. Instale la CLI de Azure 2.0. Asegúrese de usar al menos la versión 2.19.1 o posterior (utilice la más reciente).

  2. Inicie sesión con su cuenta de Azure:

    az login
    
  3. Instale la extensión AEM de la CLI de Azure. Asegúrese de que usa la versión 0.2.2 o posterior.

    az extension add --name aem
    
  4. Compruebe la instalación de la extensión:

    az vm aem verify -g <resource-group-name> -n <vm name> 
    

El script comprueba la configuración de la máquina virtual que seleccione.

Asegúrese de que todos los resultados de la comprobación del estado de mantenimiento sean OK. Si algunas comprobaciones no muestran un estado OK (Correcto), ejecute el cmdlet de actualización como se describe en las seccionesConfiguración de la extensión de máquina virtual de Azure para soluciones de SAP con la CLI de Azure o Configuración de la nueva extensión de máquina virtual de Azure para soluciones de SAP con PowerShell. Repita las comprobaciones describen en Comprobación de preparación y en este capítulo. Si las comprobaciones siguen indicando problemas en algunos contadores o en todos ellos, consulte Solución de problemas de Linux o Solución de problemas de Windows.

Solución de problemas de Windows

No aparecen contadores de rendimiento de Azure

El proceso AzureEnhancedMonitoring recopila métricas de rendimiento en Azure. Si el proceso no se está ejecutando en la VM, no se recopilará ninguna métrica de rendimiento.

El directorio de instalación de la extensión de Azure para SAP está vacío

Incidencia

El directorio de instalación C:\Packages\Plugins\Microsoft.AzureCAT.AzureEnhancedMonitoring.MonitorX64Windows\<version> está vacío.

Solución

La extensión no está instalada. Determine si se trata de un problema de proxy (como se describió anteriormente). Es posible que tenga que reiniciar la máquina o volver a instalar la extensión de VM.

Faltan algunos contadores de rendimiento de Azure

El proceso AzureEnhancedMonitoring de Windows recopila métricas de rendimiento en Azure. El proceso obtiene datos de varios orígenes. Algunos datos de configuración se recopilan localmente, y algunas métricas de rendimiento se leen de Azure Monitor.

Si la solución de problemas de la nota de SAP 1999351 no resuelve el problema, abra un mensaje de servicio al cliente de SAP acerca del componente BC-OP-NT-AZR para Windows o BC-OP-LNX-AZR para una máquina virtual Linux. Adjunte el archivo de registro C:\Packages\Plugins\Microsoft.AzureCAT.AzureEnhancedMonitoring.MonitorX64Windows\<version>\logapp.txt al incidente.

Solución de problemas de Linux

No aparecen contadores de rendimiento de Azure

Un demonio recopila las métricas de rendimiento en Azure. Si el demonio no se está ejecutando, no se recopilará ninguna métrica de rendimiento.

El directorio de instalación de la extensión de Azure para SAP está vacío

Incidencia

El directorio /var/lib/waagent/ no contiene un subdirectorio para la extensión de Azure para SAP.

Solución

La extensión no está instalada. Determine si se trata de un problema de proxy (como se describió anteriormente). Es posible que tenga que reiniciar la máquina o volver a instalar la extensión de VM.

Faltan algunos contadores de rendimiento de Azure

Un demonio recopila las métricas de rendimiento en Azure, y obtiene datos de varios orígenes. Algunos datos de configuración se recopilan localmente y algunas métricas de rendimiento se leen de Azure Monitor. Para ver una lista completa y actualizada de los problemas conocidos, consulte la nota de SAP 1999351, que contiene información adicional sobre la solución de problemas de la extensión de Azure para SAP. Si la solución de problemas descrita en la nota 1999351 de SAP no resuelve el problema, vuelva a instalar la extensión tal y como se describe en Configuración de la extensión de Azure para SAP. Si el problema continúa, abra un mensaje de servicio al cliente de SAP acerca del componente BC-OP-NT-AZR para una máquina virtual Windows o BC-OP-LNX-AZR para una máquina virtual Linux. Adjunte el archivo de registro /var/lib/waagent/Microsoft.AzureCAT.AzureEnhancedMonitoring.MonitorX64Linux-<version>/logapp.txt al incidente.

Códigos de error de extensión de Azure

Todos los identificadores de error tienen una etiqueta única en forma de a-#, donde # es un número. Permite una búsqueda rápida de un error específico y posibles soluciones.

Id. de error Descripción del error Soluciones
a-0116 sin token de autenticación Más información:
La extensión no puede obtener el token de autenticación para acceder a las métricas de máquina virtual en Azure Monitor. Para proporcionar métricas de la máquina virtual, necesita acceso a recursos de la máquina virtual, como la propia máquina virtual, todos los discos y todas las tarjeta de interfaz de red conectadas a una máquina virtual.
Solución:
Habilite la identidad administrada de la máquina virtual y asígnele un rol de lector para un grupo de recursos de máquina virtual. Cuando se usa un script de instalación, el script lo hace por usted. Normalmente no es necesario habilitar y asignar manualmente la identidad administrada de la máquina virtual.

Pasos siguientes