Resolver problemas de gestão de VMs do Azure Arc

Aplica-se a: Azure Stack HCI, versão 23H2

Este artigo fornece orientações sobre como recolher registos e resolver problemas com máquinas virtuais (VMs) do Azure Arc no cluster do Azure Stack HCI. Também lista as limitações e problemas conhecidos que existem atualmente com a gestão de VMs do Azure Arc.

Recolher registos

Pode recolher registos para identificar e resolver problemas com VMs do Arc no sistema Azure Stack HCI. Utilize estes registos para recolher informações importantes antes de contactar o suporte da Microsoft para obter ajuda adicional.

Certifique-se de que tem o módulo mais recente do PowerShell para a coleção de registos. Para atualizar o módulo do PowerShell, execute o seguinte comando:

#Update the PowerShell module
Install-Module -Name ArcHci -Force -Confirm:$false -SkipPublisherCheck -AcceptLicense

Para recolher registos de VMs do Arc no cluster do Azure Stack HCI, execute o seguinte comando:

$csv_path="<input-from-admin>"
$VMIP_1="<input-from-admin>"
az login --use-device-code
Get-ArcHCILogs -workDirectory $csv_path\ResourceBridge -kvaTokenPath $csv_path\ResourceBridge\kvatoken.tok -ip $VMIP_1

em que:

  • $csv_path é o caminho completo do volume partilhado do cluster fornecido para criar a Ponte de Recursos do Arc.

  • $VMIP_1 é o endereço IP da VM da Ponte de Recursos do Arc.

  • Opcionalmente, defina o -logDir parâmetro para especificar o caminho para o diretório onde os registos gerados são armazenados. Se não especificar o caminho ou o parâmetro, por predefinição, os registos são armazenados no seu diretório de trabalho atual.

Resolver problemas de VMs do Azure Arc

Esta secção descreve os erros relacionados com a gestão de VMs do Azure Arc e as respetivas resoluções recomendadas.

Falha ao tentar ativar a gestão de convidados

Ao tentar executar o comando para ativar a gestão de convidados, verá o seguinte erro:

Erro:Deployment failed. Correlation ID: 5d0c4921-78e0-4493-af16-dffee5cbf9d8. VM Spec validation failed for guest agent provisioning: Invalid managed identity. A system-assigned managed identity must be enabled in parent resource: Invalid Configuration

A falha acima deve-se ao facto de a identidade gerida não ter sido criada para esta VM. A Identidade Gerida atribuída pelo sistema é necessária para ativar a gestão de convidados.

Resolução:

Siga estes passos para verificar se a Identidade Gerida não foi criada para esta VM e, em seguida, ative a Identidade Gerida atribuída pelo sistema.

  1. No portal do Azure, aceda à VM. Navegue para a página Descrição geral . No separador Propriedades, em Configuração, a gestão de convidados deve ser apresentada como Desativada. Selecione a Vista JSON no canto superior direito.

    Captura de ecrã a mostrar como aceder à vista JSON.

  2. Em Identity parâmetro, o type deve ser apresentado como None.

    Captura de ecrã da vista JSON a indicar que a Identidade Gerida está ausente.

  3. Para criar uma identidade gerida, ligue-se ao servidor Azure Stack HCI através de RDP. Execute o seguinte comando:

    az extension add --name connectedmachine
    
  4. Verifique se a extensão da CLI do computador ligado está instalada no cluster. Eis um resultado de exemplo com a extensão instalada com êxito. Indica connectedmachine que a versão 0.7.0 está instalada.

    [v-hostl]: PS C:\Clusterstorage\lnfrastructure_l\ArcHci> az version
    {
    "azure-cli": "2.53.0",
    "azure-cli-core": "2.53.0",
    "azure-cli-telemetry": "1.1.0",
    "extensions": {
        "akshybrid": "0.1.1",
        "arcappliance"^ "1.0.2",
        "connectedk8s": "1.5.4",
        "connectedmachine": "0.7.0",
        "customlocation": "0.1.3",
        "hybridaks": "0.2.4",
        "k8s-extension": "1.4.5",
        "stack-hci-vm": "0.1.8"
        }
    }
    [v-hostl]: PS C:\ClusterStorage\Infrastructure_l\ArcHci>
        ```
    
  5. Execute o seguinte comando para atribuir uma identidade gerida pelo sistema à VM.

    az connectedmachine update --ids "<Resource Manager ID for the VM>" --set identity.type="SystemAssigned"
    
  6. Aceda à portal do Azure e navegue para a página Descrição geral. A Vista JSON deve indicar que a identidade gerida do sistema está agora atribuída à VM.

    Captura de ecrã da vista JSON quando a Identidade Gerida está ativada.

Falha ao implementar uma VM do Arc

Verá o seguinte erro ao tentar implementar uma VM do Arc no cluster do Azure Stack HCI:

Erro:{"code":"ConflictingOperation","message":"Unable to process request 'Microsoft.AzureStackHCI/virtualMachineInstances'. There is already a previous running operation for resource '/subscriptions/<subscription ID>/resourceGroups/<Resource group name>/providers/Microsoft.HybridCompute/machines/<VM name>/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default'. Please wait for the previous operation to complete."}

A falha acima deve-se ao facto de o SystemAssigned objeto de identidade gerida não estar no Microsoft.HybridCompute/machines tipo de recurso.

Resolução:

Verifique no modelo de implementação que:

O SystemAssigned objeto de identidade gerida está no Microsoft.HybridCompute/machines tipo de recurso e não está no Microsoft.AzureStackHCI/VirtualMachineInstances tipo de recurso.

O modelo de implementação deve corresponder ao modelo de exemplo fornecido. Para obter mais informações, veja o modelo de exemplo no Create máquinas virtuais arc no Azure Stack HCI.

A instalação da CLI do Azure não é reconhecida

Se o seu ambiente não reconhecer a CLI do Azure após a instalação, execute o seguinte bloco de código para adicionar o caminho de instalação da CLI do Azure ao caminho do ambiente.

        if ( -not( $env:PATH -like '*C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\wbin*') ) {
            $env:PATH += "C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\wbin;"
            Write-Host "Updated path $env:PATH"
        }

Passos seguintes