As instâncias do Conjunto de Dimensionamento de Máquinas Virtuais do Azure não são reparadas mesmo quando a política de reparos automáticos está habilitada
As instâncias VMSS do Azure permanecem em um estado "Não íntegro" e não são reparadas mesmo quando a política de reparos automáticos está habilitada. Este artigo fornece possíveis causas e soluções correspondentes para esse problema:
- A política de reparos automáticos não está habilitada corretamente no conjunto de dimensionamento.
- O monitoramento de integridade não está configurado corretamente no conjunto de dimensionamento.
- A instância é marcada como não íntegra devido a uma falha de provisionamento.
- Os reparos automáticos foram suspensos no conjunto de escala devido a muitos reparos com falha.
- A instância está em seu período de carência.
A política de reparos automáticos não está habilitada corretamente no conjunto de dimensionamento
Confirme se o VMSS optou por reparos automáticos exibindo seu estado de serviço.
orchestrationServices
Na propriedade, se o serviceState
para reparos automáticos for Running
, o VMSS será optado por reparos automáticos.
Se a serviceState
política de reparos automáticos ou NotRunning
não aparecer na orchestrationServices
propriedade, você deverá habilitar a política de reparos automáticos no conjunto de dimensionamento. Para obter mais informações, consulte Habilitando a política de reparos automáticos ao atualizar um conjunto de dimensionamento existente.
Se for serviceState
Suspended
, vá para Reparos automáticos foram suspensos no conjunto de dimensionamento devido a muitos reparos com falha.
O monitoramento de integridade não está configurado corretamente no conjunto de dimensionamento
Se todas as instâncias no conjunto de dimensionamento aparecerem como "Não íntegras", isso pode ser um sinal de que a investigação de monitoramento de integridade não está configurada corretamente durante a instalação. Certifique-se de que seu aplicativo emita as respostas HTTP/HTTPS/TCP esperadas para os pontos de extremidade configurados.
Para obter um status "Íntegro", as investigações de extensão de integridade do aplicativo ou as investigações de integridade do balanceador de carga exigem, no mínimo, uma resposta HTTP(S) 2xx ou um handshake TCP bem-sucedido do aplicativo no ponto de extremidade configurado. Se a resposta esperada não for recebida, um status "Não íntegro" será relatado. Verifique se os sinais de integridade corretos são emitidos pelo aplicativo para o ponto de extremidade fornecido.
Para obter mais informações sobre as respostas TCP/HTTP(S) esperadas para investigações de integridade do balanceador de carga, consulte Investigações personalizadas do balanceador de carga.
Para obter mais informações sobre as respostas TCP/HTTP(S) esperadas para investigações de extensão de integridade do aplicativo, consulte a seção "Configurar o ponto de extremidade para fornecer status de integridade" em Requisitos para usar reparos automáticos de instância.
A instância está marcada como não íntegra devido a uma falha de provisionamento
Use Obter Exibição de Instância com a API versão 2019-12-01 ou superior para que o VMSS exiba o estado de provisionamento das instâncias na statusesSummary
virtualMachine
propriedade.
API REST
GET '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/instanceView?api-version=2019-12-01'
"virtualMachine": {
"statusesSummary": [
{
"code": "ProvisioningState/succeeded",
"count": 2
}
]
}
Se você tiver um ProvisioningState/failed
código em statusesSummary
, exclua a instância com falha e adicione uma nova instância ao conjunto de dimensionamento. Atualmente, os reparos de instância não dão suporte a cenários em que uma máquina virtual é marcada como "Não íntegra" devido a uma falha de provisionamento.
Para remover a instância com falha do conjunto de dimensionamento, consulte Remover VMs de um conjunto de dimensionamento.
Para adicionar uma nova instância ao conjunto de dimensionamento, consulte Alterar a capacidade de um conjunto de dimensionamento.
Os reparos automáticos foram suspensos no conjunto de dimensionamento devido a muitos reparos com falha
Se o aplicativo continuar a emitir um sinal "Não íntegro" após repetidas tentativas de reparo, a plataforma acabará suspendendo os reparos da instância como medida de segurança, alterando o serviceState
para reparos automáticos para Suspended
.
Confirme a serviceState
sua política de reparos automáticos. Para fazer isso, consulte Visualizar e atualizar o estado do serviço da política de reparos automáticos de instância.
Se for serviceState
Suspended
, retome os reparos automáticos atualizando o serviceState
back to Running
usando os exemplos de setOrchestrationServiceState
API e cmdlet em Exibindo e atualizando o estado do serviço da política de reparos automáticos de instância.
A instância está em seu período de carência
Se nenhuma das causas acima for aplicável ao problema, a instância poderá estar em seu período de carência.
O período de carência é a quantidade de tempo que os reparos automáticos aguardarão após qualquer alteração de estado na instância antes de executar reparos, o que ajuda a evitar reparos prematuros ou acidentais. A ação de reparo deve ocorrer depois que o período de carência for concluído para a instância. Para obter mais informações sobre a configuração do período de carência para reparos automáticos, consulte Período de carência.
Entre em contato conosco para obter ajuda
Se você tiver dúvidas ou precisar de ajuda, crie uma solicitação de suporte ou peça ajuda à comunidade de suporte do Azure. Você também pode enviar comentários sobre o produto para a comunidade de comentários do Azure.