Compartilhar via


Solução de problemas de falha de alocação ao implantar Serviços de Nuvem do Azure (clássico)

Importante

Os Serviços de Nuvem (clássicos) estão obsoletos para todos os clientes desde 1º de setembro de 2024. Todas as implantações em execução existentes serão interrompidas e desligadas pela Microsoft e os dados serão permanentemente perdidos a partir de outubro de 2024. As novas implantações devem usar o novo modelo de implantação baseado no Azure Resource Manager Serviços de Nuvem do Azure (suporte estendido) .

Resumo

Quando você implanta instâncias em um Serviço de Nuvem ou adiciona nova instâncias de função da Web ou de trabalho, o Microsoft Azure aloca recursos de computação. Eventualmente, você pode receber mensagens de erro durante a execução dessas operações antes de alcançar os limites da assinatura do Microsoft Azure. Este artigo explica as causas das falhas de alocação mais comuns e sugere possíveis correções. As informações também podem ser úteis caso você planeje fazer a implantação dos serviços.

Se o problema do Azure não for resolvido neste artigo, visite os fóruns do Azure no Microsoft Q & A e no Stack Overflow. Você pode postar seu problema nesses fóruns ou enviar para@AzureSupport no Twitter. Você também pode enviar uma solicitação de suporte do Azure. Para enviar uma solicitação de suporte na página Suporte do Azure, selecione Obter suporte.

Histórico – Como funciona a alocação

Os servidores são particionados em clusters nos datacenters do Microsoft Azure. Ocorre uma nova tentativa de solicitação de alocação de serviço de nuvem em vários clusters. Quando a primeira instância é implantada em um serviço de nuvem (em preparo ou produção), esse serviço de nuvem é fixado a um cluster. Quaisquer implantações adicionais do serviço de nuvem ocorrem no mesmo cluster. Neste artigo, chamaremos esse estado de “fixado a um cluster”. O diagrama a seguir ilustra o caso de uma alocação normal, cuja tentativa é feita em vários clusters. O segundo diagrama ilustra o caso de uma alocação fixada no Cluster 2, porque esse é o local em que o serviço de nuvem CS_1 existente está hospedado.

Diagrama de alocação

Motivos das falhas de alocação

Quando a solicitação de alocação é fixada a um cluster, é mais provável que haja falha na localização de recursos livres, pois o pool de recursos disponíveis está limitado a um cluster. Além disso, se a solicitação de alocação estiver fixada em um cluster, mas o cluster não der suporte ao tipo de recurso solicitado, ocorrerá uma falha na solicitação, mesmo se o cluster tiver recursos gratuitos. O próximo diagrama ilustra o caso de falha de uma alocação fixada, devido ao único cluster candidato não dispor de recursos gratuitos. O diagrama 4 ilustra o caso de falha de uma alocação fixada, devido ao único cluster candidato não dar suporte ao tamanho da VM (máquina virtual) solicitado, mesmo que o cluster disponha de recursos gratuitos.

Falha na alocação fixada

Solucionando problemas de falha de alocação para serviços de nuvem

Mensagem de erro

Navegue até o serviço de nuvem no portal do Azure e, na barra lateral, selecione Logs de operação (clássico) para exibir os logs.

Veja estas outras soluções para as exceções:

Tipo de exceção Mensagem de erro Solução
FabricInternalServerError A operação falhou com o código de erro “InternalError” e errorMessage “O servidor encontrou um erro interno”. Repita a solicitação. Solucionar problemas de FabricInternalServerError
ServiceAllocationFailure A operação falhou com o código de erro “InternalError” e errorMessage “O servidor encontrou um erro interno”. Repita a solicitação. Solucionar problemas de ServiceAllocationFailure
LocationNotFoundForRoleSize A operação '{Operation ID}' falhou: 'a camada de VM solicitada não está disponível atualmente na região ({Region ID}) para esta assinatura. Tente outra camada ou a implante em um local diferente. Solucionar problemas de LocationNotFoundForRoleSize
ConstrainedAllocationFailed Falha na operação do Azure '{Operation ID}' com o código Compute.ConstrainedAllocationFailed. Detalhes: falha na alocação; não é possível atender às restrições na solicitação. A implantação solicitada do novo serviço está associada a um Grupo de Afinidades ou é destinada a uma Rede Virtual, ou há uma implantação existente nesse serviço hospedado. Essas condições restringem a nova implantação para os recursos específicos do Microsoft Azure. Tente novamente mais tarde ou tente reduzir o tamanho da VM ou o número de instâncias de função. Como alternativa, se possível, remova as restrições ou tente fazer a implantação em uma região diferente. Solucionar problemas de ConstrainedAllocationFailed
OverconstrainedAllocationRequest O tamanho da VM (ou combinação de tamanhos de máquina virtual) necessário para essa implantação não pode ser provisionado devido a restrições de solicitação de implantação. Se possível, tente relaxar restrições como associações de rede virtual, implantando em um serviço hospedado sem nenhuma outra implantação e em um grupo de afinidades diferente ou sem nenhum grupo de afinidades, ou, ainda, implantar em uma região diferente. Solucionar problemas de OverconstrainedAllocationRequest

Mensagem de erro de exemplo:

"A operação do Azure '{ID da operação}' falhou com o código Compute.ConstrainedAllocationFailed. Detalhes: falha na alocação; não é possível atender às restrições na solicitação. A implantação solicitada do novo serviço está associada a um Grupo de Afinidades ou é destinada a uma Rede Virtual, ou há uma implantação existente para esse serviço hospedado. Essas condições restringem a nova implantação para os recursos específicos do Microsoft Azure. Tente novamente mais tarde ou tente reduzir o tamanho da VM ou o número de instâncias de função. De forma alternativa, remova as restrições mencionadas acima ou tente implantar em uma região diferente, se possível."

Problemas comuns

Estes são os cenários comuns de alocação que causam a fixação de uma solicitação de alocação em um único cluster.

  • Implantação em um Slot de Preparo: se um serviço de nuvem tiver uma implantação em cada slot, todo o serviço de nuvem será fixado em um cluster específico. Isso significa que se uma implantação já existir no slot de produção, uma nova implantação de preparo só poderá ser alocada no mesmo cluster, como o slot de produção. Se o cluster estiver se aproximando da capacidade, a solicitação poderá falhar.
  • Dimensionamento: a adição de novas instâncias a um serviço de nuvem existente deve alocar no mesmo cluster. Solicitações pequenas de dimensionamento normalmente podem ser alocadas, mas nem sempre. Se o cluster estiver se aproximando da capacidade, a solicitação poderá falhar.
  • Grupo de afinidade – A malha de qualquer cluster nessa região pode alocar uma nova implantação em um serviço de nuvem vazio, a menos que o serviço de nuvem esteja fixado em um grupo de afinidade. As implantações tentam usar o mesmo grupo de afinidade no mesmo cluster. Se o cluster estiver se aproximando da capacidade, a solicitação poderá falhar.
  • Rede virtual do grupo de afinidade – As Redes Virtuais mais antigas foram vinculadas a grupos de afinidade em vez de regiões, e os serviços de nuvem nessas Redes Virtuais serão fixados ao cluster do grupo de afinidade. As tentativas de implantações nesse tipo de rede virtual ocorrem no cluster fixado. Se o cluster estiver se aproximando da capacidade, a solicitação poderá falhar.

Soluções

  1. Reimplantar em um novo serviço de nuvem: essa solução provavelmente será a mais bem-sucedida, pois permite que a plataforma escolha entre todos os clusters nessa região.

    • Implantar a carga de trabalho em um novo serviço de nuvem
    • Atualizar o CNAME ou um registro A para apontar o tráfego para o novo serviço de nuvem
    • Quando nenhum tráfego estiver sendo encaminhado ao local antigo, você poderá excluir o serviço de nuvem antigo. Essa solução não causará qualquer tempo de inatividade.
  2. Exclusão dos slots de produção e de preparo – Essa solução preserva o nome do DNS (Sistema de Nomes de Domínio) existente, mas causa tempo de inatividade para seu aplicativo.

    • Exclua os slots de produção e de preparo de um serviço de nuvem existente para que o serviço de nuvem fique vazio e, em seguida,
    • Crie uma nova implantação no serviço de nuvem existente. Essa solução tenta fazer a alocação novamente em todos os clusters da região. Verifique se o serviço de nuvem não está vinculado a um grupo de afinidade.
  3. IP reservado – Essa solução preserva seu endereço IP existente, mas causa tempo de inatividade para seu aplicativo.

    • Criar um ReservedIP para sua implantação existente usando o PowerShell

      New-AzureReservedIP -ReservedIPName {new reserved IP name} -Location {location} -ServiceName {existing service name}
      
    • Siga o item nº 2, lembrando de especificar o novo IP reservado no CSCFG do serviço.

  4. Remover o grupo de afinidade para novas implantações: grupos de afinidade não são mais recomendados. Siga as etapas para o item nº 1 para fazer a implantação de um novo serviço de nuvem. Verifique se o serviço de nuvem não está em um grupo de afinidade.

  5. Conversão em uma rede virtual regional: confira Como migrar de grupos de afinidades para uma rede virtual regional (rede virtual).