Nova versão da extensão de VM do Azure para soluções SAP

Pré-requisitos

Nota

Declaração de Suporte Geral: O suporte para a Extensão do Azure para SAP é fornecido através dos canais de suporte SAP. Se precisar de ajuda com a extensão de VM do Azure para soluções SAP, abra um caso de suporte com o Suporte SAP

Nota

Certifique-se de desinstalar a extensão de VM antes de alternar entre a versão padrão e a nova versão da Extensão do Azure para SAP.

Nota

Há duas versões da extensão VM. Este artigo aborda a nova versão da extensão de VM do Azure para SAP. Para obter orientação sobre como instalar a versão padrão, consulte Versão padrão da extensão de VM do Azure para soluções SAP.

  • Certifique-se de usar o SAP Host Agent 7.21 PL 47 ou superior.
  • Verifique se a máquina virtual na qual a extensão está habilitada tem acesso a management.azure.com.

Implantar cmdlets do Azure PowerShell

Siga as etapas descritas no artigo Instalar o módulo do Azure PowerShell

Verifique frequentemente se há atualizações para os cmdlets do PowerShell, que geralmente são atualizados mensalmente. Siga as etapas descritas neste artigo. Salvo indicação em contrário no SAP Note 1928533 ou no SAP Note 2015553, recomendamos que você trabalhe com a versão mais recente dos cmdlets do Azure PowerShell.

Para verificar a versão dos cmdlets do Azure PowerShell instalados no seu computador, execute este comando do PowerShell:

(Get-Module Az.Compute).Version

Implantar a CLI do Azure

Siga as etapas descritas no artigo Instalar a CLI do Azure

Verifique frequentemente se há atualizações para a CLI do Azure, que geralmente é atualizada mensalmente.

Para verificar a versão da CLI do Azure instalada no seu computador, execute este comando:

az --version

Configurar a extensão de VM do Azure para soluções SAP com o PowerShell

A nova VM Extension for SAP usa uma identidade gerenciada atribuída à VM para acessar dados de monitoramento e configuração da VM. Para instalar a nova Extensão do Azure para SAP usando o PowerShell, primeiro você precisa atribuir essa identidade à VM e conceder a essa identidade acesso a todos os recursos que estão em uso por essa VM, por exemplo, discos e interfaces de rede.

Nota

As etapas a seguir exigem privilégios de proprietário sobre o grupo de recursos ou recursos individuais (máquina virtual, discos de dados e interfaces de rede)

  1. Certifique-se de usar o SAP Host Agent 7.21 PL 47 ou superior.

  2. Certifique-se de desinstalar a versão padrão do VM Extension for SAP. Não há suporte para instalar ambas as versões do VM Extension for SAP na mesma máquina virtual.

  3. Verifique se você instalou a versão mais recente do cmdlet do Azure PowerShell (pelo menos 4.3.0). Para obter mais informações, consulte Implantando cmdlets do Azure PowerShell.

  4. Execute o seguinte cmdlet do PowerShell. Para obter uma lista de ambientes disponíveis, execute o cmdlet Get-AzEnvironment. Se você quiser usar o Azure global, seu ambiente é AzureCloud. Para o Microsoft Azure operado pela 21Vianet, selecione AzureChinaCloud.

    A Extensão de VM para SAP dá suporte à configuração de um proxy que a extensão deve usar para se conectar a recursos externos, por exemplo, a API do Azure Resource Manager. Use o parâmetro -ProxyURI para definir o 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. Reiniciar o SAP Host Agent

    Faça logon na máquina virtual na qual você habilitou a VM Extension for SAP e reinicie o SAP Host Agent se ele já estiver instalado. O SAP Host Agent não usa a extensão de VM até que ela seja reiniciada. Atualmente, não é possível detetar que uma extensão foi instalada depois de ter sido iniciada.

Configurar a extensão de VM do Azure para soluções SAP com a CLI do Azure

A nova extensão de VM para SAP usa uma identidade gerenciada atribuída à VM para acessar dados de monitoramento e configuração da VM.

Nota

As etapas a seguir exigem privilégios de proprietário sobre o grupo de recursos ou recursos individuais (máquina virtual, discos de dados e assim por diante)

  1. Certifique-se de usar o SAP Host Agent 7.21 PL 47 ou posterior.

  2. Certifique-se de desinstalar a versão atual do VM Extension for SAP. Não é possível instalar ambas as versões da extensão de VM para SAP na mesma VM.

  3. Instale a versão mais recente da CLI do Azure 2.0 (versão 2.19.1 ou posterior).

  4. Entre com sua conta do Azure:

    az login
    
  5. Instale a extensão do Azure CLI AEM. Certifique-se de usar a versão 0.2.2 ou posterior.

    az extension add --name aem
    
  6. Habilite a nova extensão:

    A Extensão de VM para SAP dá suporte à configuração de um proxy que a extensão deve usar para se conectar a recursos externos, por exemplo, a API do Azure Resource Manager. Use o parâmetro --proxy-uri para definir o proxy.

    az vm aem set -g <resource-group-name> -n <vm name> --install-new-extension
    
  7. Reiniciar o SAP Host Agent

    Faça logon na máquina virtual na qual você habilitou a VM Extension for SAP e reinicie o SAP Host Agent se ele já estiver instalado. O SAP Host Agent não usa a extensão de VM até que ela seja reiniciada. Atualmente, não é possível detetar que uma extensão foi instalada depois de ter sido iniciada.

Configurar manualmente a extensão de VM do Azure para soluções SAP

Se quiser usar o Azure Resource Manager, o Terraform ou outras ferramentas para implantar a Extensão de VM para SAP, você também pode implantar a Extensão de VM para SAP manualmente, ou seja, sem usar os comandos dedicados do PowerShell ou da CLI do Azure.

Antes de implantar a VM Extension for SAP, certifique-se de atribuir um usuário ou sistema atribuído identidade gerenciada à máquina virtual. Para obter mais informações, leia os seguintes guias:

Depois de atribuir uma identidade à máquina virtual, conceda à VM acesso de leitura ao grupo de recursos ou aos recursos individuais associados à máquina virtual (VM, Interfaces de Rede, Discos do SO e Discos de Dados). Recomenda-se usar a função Leitor interna para conceder acesso a esses recursos. Você também pode conceder esse acesso adicionando a identidade da VM a um grupo do Microsoft Entra que já tenha acesso de leitura aos recursos necessários. Em seguida, não é mais necessário ter privilégios de proprietário ao implantar a extensão de VM para SAP se você usar uma identidade atribuída ao usuário que já tenha as permissões necessárias.

Há diferentes maneiras de implantar a extensão de VM para SAP manualmente. Veja alguns exemplos nos próximos capítulos.

A extensão atualmente suporta as seguintes chaves de configuração. No exemplo abaixo, o msi_res_id é mostrado.

  • msi_res_id: ID da identidade atribuída ao usuário que a extensão deve usar para obter as informações necessárias sobre a VM e seus recursos
  • proxy: URL do proxy que a extensão deve usar para se conectar à Internet, por exemplo, para recuperar informações sobre a máquina virtual e seus recursos.

Implantar manualmente com o Azure PowerShell

O código a seguir contém quatro exemplos. Ele mostra como implantar a extensão no Windows e Linux, usando um sistema ou identidade atribuída pelo usuário. Certifique-se de substituir o nome do grupo de recursos, o local e o nome da VM no exemplo.

# 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":[]}'

Implantar manualmente com a CLI do Azure

O código a seguir contém quatro exemplos. Ele mostra como implantar a extensão no Windows e Linux, usando um sistema ou identidade atribuída pelo usuário. Certifique-se de substituir o nome do grupo de recursos, o local e o nome da VM no exemplo.

# 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":[]}'

Implante manualmente com o Terraform

O manifesto a seguir contém quatro exemplos. Ele mostra como implantar a extensão no Windows e Linux, usando um sistema ou identidade atribuída pelo usuário. Certifique-se de substituir a ID da VM e a ID da identidade atribuída ao usuário no exemplo.


# 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
}

Versões da extensão VM para SAP

Se quiser desabilitar as atualizações automáticas para a extensão VM ou implantar uma versão específica da extensão, você poderá recuperar as versões disponíveis com a CLI do Azure ou 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 do 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

Verificação da preparação

Essa verificação garante que todas as métricas de desempenho que aparecem dentro do seu aplicativo SAP sejam fornecidas pela Extensão do Azure para SAP subjacente.

Executar a verificação de preparação em uma VM do Windows

  1. Entre na máquina virtual do Azure (não é necessário usar uma conta de administrador).
  2. Abra um browser e navegue para http://127.0.0.1:11812/azure4sap/metrics.
  3. O navegador deve exibir ou baixar um arquivo XML que contém os dados de monitoramento de sua máquina virtual. Se esse não for o caso, verifique se a Extensão do Azure para SAP está instalada.
  4. Verifique o conteúdo do arquivo XML. O arquivo XML que você pode acessar contém http://127.0.0.1:11812/azure4sap/metrics todos os contadores de desempenho do Azure preenchidos para SAP. Ele também contém um resumo e um indicador de integridade do status do Azure Extension for SAP.
  5. Verifique o valor do elemento Descrição da Integridade do Provedor. Se o valor não estiver OK, siga as instruções no capítulo Verificações de integridade.

Execute a verificação de preparação em uma VM Linux

  1. Conecte-se à Máquina Virtual do Azure usando SSH.
  2. Verifique a saída do seguinte comando
    curl http://127.0.0.1:11812/azure4sap/metrics
    
    Resultado esperado: retorna um documento XML que contém as informações de monitoramento da máquina virtual, seus discos e interfaces de rede.

Se a verificação anterior não tiver sido bem-sucedida, execute estas verificações adicionais:

  1. Certifique-se de que o waagent está instalado e ativado.

    a. Executar sudo ls -al /var/lib/waagent/

    Resultado esperado: Lista o conteúdo do diretório waagent.

    b. Executar ps -ax | grep waagent

    Resultado esperado: Exibe uma entrada semelhante a: python /usr/sbin/waagent -daemon

  2. Certifique-se de que a Extensão do Azure para SAP está instalada e em execução.

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

    Resultado esperado: lista o conteúdo do diretório Azure Extension for SAP.

    b. Executar ps -ax | grep AzureEnhanced

    Resultado esperado: Exibe uma entrada semelhante a: /var/lib/waagent/Microsoft.AzureCAT.AzureEnhancedMonitoring.MonitorX64Linux-1.0.0.82/AzureEnhancedMonitoring -monitor

  3. Instale o SAP Host Agent conforme descrito na Nota 1031096 do SAP e verifique a saída do saposcol.

    a. Executar /usr/sap/hostctrl/exe/saposcol -d

    b. Executar dump ccm

    c. Verifique se a métrica Virtualization_Configuration\Enhanced Monitoring Access é verdadeira.

Se você já tiver um servidor de aplicativos SAP NetWeaver ABAP instalado, abra a transação ST06 e verifique se o monitoramento está habilitado.

Se alguma dessas verificações falhar e para obter informações detalhadas sobre como reimplantar a extensão, consulte Solução de problemas para Windows ou Solução de problemas para Linux

Controlos sanitários

Se alguns dos dados de infraestrutura não forem entregues corretamente, conforme indicado pelos testes descritos em Verificação de preparação, execute as verificações de integridade descritas neste capítulo para verificar se a infraestrutura do Azure e a Extensão do Azure para SAP estão configuradas corretamente.

Verificações de integridade usando o PowerShell

  1. Certifique-se de ter instalado a versão mais recente do cmdlet do Azure PowerShell, conforme descrito em Implantando cmdlets do Azure PowerShell.

  2. Execute o seguinte cmdlet do PowerShell. Para obter uma lista de ambientes disponíveis, execute o cmdlet Get-AzEnvironment. Para usar o Azure global, selecione o ambiente AzureCloud . Para o Microsoft Azure operado pela 21Vianet, selecione 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. O script testa a configuração da máquina virtual selecionada.

Certifique-se de que todos os resultados da verificação de saúde estão OK. Se algumas verificações não exibirem OK, execute o cmdlet de atualização conforme descrito em Configurar a extensão de VM do Azure para soluções SAP com a CLI do Azure ou Configurar a extensão da VM do Azure para soluções SAP com o PowerShell. Repita as verificações descritas em Verificação de prontidão e neste capítulo. Se as verificações ainda indicarem um problema com alguns ou todos os contadores, consulte Solução de problemas para Linux ou Solução de problemas para Windows.

Verificações de integridade usando a CLI do Azure

Para executar a verificação de integridade da Extensão de VM do Azure para SAP usando a CLI do Azure:

  1. Instale a CLI 2.0 do Azure. Certifique-se de usar pelo menos a versão 2.19.1 ou posterior (use a versão mais recente).

  2. Entre com sua conta do Azure:

    az login
    
  3. Instale a extensão do Azure CLI AEM. Certifique-se de usar a versão 0.2.2 ou posterior.

    az extension add --name aem
    
  4. Verifique a instalação da extensão:

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

O script testa a configuração da máquina virtual selecionada.

Certifique-se de que todos os resultados da verificação de saúde estão OK. Se algumas verificações não exibirem OK, execute o cmdlet de atualização conforme descrito em Configurar a extensão de VM do Azure para soluções SAP com a CLI do Azure ou Configurar a extensão da VM do Azure para soluções SAP com o PowerShell. Repita as verificações descritas em Verificação de prontidão e neste capítulo. Se as verificações ainda indicarem um problema com alguns ou todos os contadores, consulte Solução de problemas para Linux ou Solução de problemas para Windows.

Resolver problemas do Windows

Os contadores de desempenho do Azure não aparecem de todo

O processo AzureEnhancedMonitoring coleta métricas de desempenho no Azure. Se o processo não estiver em execução em sua VM, nenhuma métrica de desempenho poderá ser coletada.

O diretório de instalação da Extensão do Azure para SAP está vazio

Problema

O diretório de instalação C:\Packages\Plugins\Microsoft.AzureCAT.AzureEnhancedMonitoring.MonitorX64Windows\<version> está vazio.

Solução

A extensão não está instalada. Determine se este é um problema de proxy (conforme descrito anteriormente). Talvez seja necessário reiniciar a máquina ou instalar a extensão VM novamente.

Alguns contadores de desempenho do Azure estão ausentes

O processo AzureEnhancedMonitoring do Windows coleta métricas de desempenho no Azure. O processo obtém dados de várias fontes. Alguns dados de configuração são coletados localmente e algumas métricas de desempenho são lidas do Azure Monitor.

Se a solução de problemas usando o SAP Note 1999351 não resolver o problema, abra uma mensagem de suporte ao cliente SAP no componente BC-OP-NT-AZR para Windows ou BC-OP-LNX-AZR para uma máquina virtual Linux. Anexe o arquivo de log C:\Packages\Plugins\Microsoft.AzureCAT.AzureEnhancedMonitoring.MonitorX64Windows\version>\<logapp.txt ao incidente.

Resolver problemas do Linux

Os contadores de desempenho do Azure não aparecem de todo

As métricas de desempenho no Azure são coletadas por um daemon. Se o daemon não estiver em execução, nenhuma métrica de desempenho poderá ser coletada.

O diretório de instalação da Extensão do Azure para SAP está vazio

Problema

O diretório /var/lib/waagent/ não tem um subdiretório para a Extensão do Azure para SAP.

Solução

A extensão não está instalada. Determine se este é um problema de proxy (conforme descrito anteriormente). Talvez seja necessário reiniciar a máquina e/ou instalar a extensão VM novamente.

Alguns contadores de desempenho do Azure estão ausentes

As métricas de desempenho no Azure são coletadas por um daemon, que obtém dados de várias fontes. Alguns dados de configuração são coletados localmente e algumas métricas de desempenho são lidas do Azure Monitor. Para obter uma lista completa e atualizada de problemas conhecidos, consulte SAP Note 1999351, que contém informações adicionais de solução de problemas para o Azure Extension for SAP. Se a solução de problemas usando o SAP Note 1999351 não resolver o problema, instale a extensão novamente conforme descrito em Configurar a extensão do Azure para SAP. Se o problema persistir, abra uma mensagem de suporte ao cliente SAP no componente BC-OP-NT-AZR para Windows ou BC-OP-LNX-AZR para uma máquina virtual Linux. Anexe o arquivo de log /var/lib/waagent/Microsoft.AzureCAT.AzureEnhancedMonitoring.MonitorX64Linux-version<>/logapp.txt ao incidente.

Códigos de erro de extensão do Azure

Todos os IDs de erro têm uma tag exclusiva na forma de a-#, onde # é um número. Permite uma busca rápida por um erro específico e possíveis soluções.

ID do Erro Descrição do erro Soluções
a-0116 sem token de autenticação Mais informações:
A extensão não pode obter token de autenticação para acessar métricas de VM no monitor do Azure. Para fornecer métricas de VM, ele precisa acessar recursos de VM, como a própria VM, todos os discos e todas as NICs conectadas a uma VM
Solução:
Habilite a Identidade gerenciada por VM e atribua-lhe uma função de leitor para um grupo de recursos de VM. Quando você usa um script de instalação, o script faz isso por você. Normalmente, você não precisa habilitar e atribuir a identidade gerenciada da VM manualmente.

Próximos passos