Como resolvo o erro "endpoint does not support the Availability Zone" quando tento mapear um endpoint da Amazon VPC?

3 minuto de leitura
0

Usei uma Amazon Virtual Private Cloud (Amazon VPC) para criar um endpoint de interface da VPC. Porém, não consigo selecionar minha sub-rede de preferência para a zona de disponibilidade.

Breve descrição

Ao criar um endpoint de interface da VPC para se conectar aos serviços do AWS PrivateLink, você pode receber este erro:

"Error: The VPC endpoint service com.amazonaws.vpce.us-east-1.vpce-svc-xxxx does not support the Availability Zone of the subnet: subnet-xxxx."

Esse erro pode ocorrer quando uma zona de disponibilidade não está ativada para o Network Load Balancer da VPC do provedor de serviços.

Ao criar um endpoint de interface da VPC, siga estas práticas recomendadas:

  • Quando um consumidor de serviços cria e recupera informações de serviço de endpoint, ele pode ver somente as zonas de disponibilidade que são comuns ao provedor de serviços.
  • Um ID de zona de disponibilidade (AZ) é um identificador exclusivo e consistente de uma zona de disponibilidade em todas as contas da AWS.
  • O mapeamento de zonas de disponibilidade pode ser diferente entre contas da AWS. Por exemplo, a sub-rede mapeada como us-east-1a em uma conta pode ser mapeada como us-east-1c em outra conta.
  • A AWS permite que você identifique a localização real dos seus recursos em relação às suas contas com o ID da AZ.
  • Você só pode selecionar uma zona de disponibilidade quando ela corresponder às zonas de disponibilidade ativas no Network Load Balancer da VPC do provedor.
  • O console da Amazon VPC executa automaticamente o mapeamento das zonas de disponibilidade.

Resolução

Observação: se você receber erros ao executar comandos da AWS Command Line Interface (AWS CLI), consulte Solucionar erros da AWS CLI. Além disso, verifique se você está usando a versão mais recente da AWS CLI.

Verifique quais zonas de disponibilidade estão habilitadas no Network Load Balancer da VPC do provedor. Execute o comando describe-vpc-endpoint-services da AWS CLI:

$aws ec2 describe-vpc-endpoint-services —service-names com.amazonaws.vpce.us-east-1.vpce-svc-xxxx

Observação: substitua service-names pelos nomes dos seus serviços.

Esta saída de exemplo mostra que você pode selecionar a sub-rede us-east-1b:

{    
    "ServiceDetails": [
         .............................
            "ServiceName": " com.amazonaws.vpce.us-east-1.vpce-svc-xxxxxxxxxx ",
            "VpcEndpointPolicySupported": false,
            "Owner": "##########",
            "AvailabilityZones": [
                "us-east-1b"
            ],
        ..............................
}

A saída anterior é mapeada para os valores da conta que executa o comando. Portanto, tanto as contas do provedor de serviços quanto as contas do consumidor de serviços podem executar o comando describe-vpc-endpoint-services, mesmo quando estão em zonas de disponibilidade diferentes. Para contas de consumidores, certifique-se de que as contas sejam permitidas como entidades principais da AWS no serviço de endpoint.

Informações relacionadas

Compartilhar serviços pelo AWS PrivateLink

Availability Zone IDs for your AWS resources

AWS OFICIAL
AWS OFICIALAtualizada há 6 meses