Partilhar via


Inspecione uma função VM para erros de provisionamento [SPFSDK][VMROLE]

 

Aplica-se a: Windows Azure Pack

Sempre que as operações forem realizadas na função VM, a propriedade VM ProvisioningState será definida para Provisioned, Provisioning ou Failed dependendo do resultado da operação. Alguns dos tipos de operações que afetariam a propriedade do ProvisioningState incluem a criação de uma função VM, a atualização da função VM a partir de uma versão diferente de item de galeria, e a escala/reparação da função VM.

Como detetar erros

Se a operação anterior resultou num valor Provisionado ou Provisionante para a propriedade ProvisioningState , não precisa de fazer nada. No entanto, se o resultado da operação resultar em Falha, terá de investigar mais aprofundadamente a causa do problema. A propriedade subestado também existe na instância de função VM. Esta propriedade descreve o erro que pode ter ocorrido ao trabalhar com uma função VM. Esta propriedade tem uma propriedade infantil chamada VMRoleMessages que é um conjunto de mensagens que descrevem o erro.

Abaixo está um exemplo que mostra um corpo de resposta HTTP que contém uma única instância de função VM. Este caso teve três questões durante o provisionamento da função VM. Note que a propriedade ProvisioningState está definida para Failed e a propriedade Substate contém a propriedade VMRoleMessages que é uma variedade de detalhes de erro.

{
    "InstanceView": {
        "InstanceCount": "1",
        "ResolvedResourceDefinition": { "... removed for brevity ... ": "" },
        "VIPs": []
    },
    "Label": "testquickvm",
    "Name": "testquickvm",
    "ProvisioningState": "Failed",
    "ResourceConfiguration": { "... removed for brevity ... ": "" },
    "ResourceDefinition": { "... removed for brevity ... ": "" },
    "Substate": {
        "VMRoleMessages": [{
            "Message": "Virtual Machine Manager cannot detect a heartbeat from the specified virtual machine. Either the virtual machine is not running or Virtual Machine Additions is not installed.",
            "MessageQualifier": "Error",
            "VMId": null
        },
        {
            "Message": "One or more virtual machines have failed during customization during the deployment of the service.",
            "MessageQualifier": "Warning",
            "VMId": null
        },
        {
            "Message": "Virtual Machine Manager cannot detect a heartbeat from the specified virtual machine. Either the virtual machine is not running or Virtual Machine Additions is not installed.",
            "MessageQualifier": "Error",
            "VMId": "9f7ac179-68f2-4703-9d58-d64b45fadc92"
        }]
    },
    "odata.metadata": "https://spf-server:8090/SC2012R2/VMM/Microsoft.Management.Odata.svc/$metadata#VMRole/@Element"
}

O que fazer sobre erros

Se ocorrer um erro ao providenciar uma função VM, pode estar relacionado com a sua configuração. Se isso for verdade, atualize a propriedade ResourceConfiguration e inicie uma operação de Reparação . Se o erro estiver relacionado com a implantação (encontrar recursos para colocar a máquina virtual ou algo assim), também pode tentar iniciar uma operação de Reparação para forçá-la a recolocar. Caso contrário, pode haver um problema com o Gestor de Máquinas Virtuais e um administrador teria de investigar mais. Para obter mais informações sobre a operação de reparação , consulte reparar uma função VM [SPFSDK][VMROLE].

Consulte também

Criar um serviço de nuvem para hospedar funções VM [SPFSDK][VMROLE]
Criar uma nova instância de papel VM da Galeria [SPFSDK][VMROLE]