Come faccio a risolvere l'errore "endpoint does not support the Availability Zone" quando tento di mappare un endpoint di Amazon VPC?

3 minuti di lettura
0

Ho utilizzato Amazon Virtual Private Cloud (Amazon VPC) per creare un endpoint VPC di interfaccia. Tuttavia, non riesco a selezionare la mia sottorete preferita per la zona di disponibilità.

Descrizione breve

Quando crei un endpoint VPC di interfaccia per connetterti ai servizi AWS PrivateLink, potresti ricevere questo errore:

"Errore: Il servizio endpoint VPC com.amazonaws.vpce.us-east-1.vpce-svc-xxxx non supporta la zona di disponibilità della sottorete: subnet-xxxx."

Questo errore può verificarsi quando una zona di disponibilità non è attivata per il Network Load Balancer del provider di servizi VPC.

Quando crei un endpoint VPC di interfaccia, segui queste best practice:

  • Quando un consumatore di servizi crea e recupera informazioni sul servizio endpoint, può visualizzare solo le zone di disponibilità che sono in comune con il fornitore di servizi.
  • Un ID della zona di disponibilità (ID AZ) è un identificatore univoco e coerente per una zona di disponibilità in tutti gli account AWS.
  • La mappatura della zona di disponibilità può differire tra gli account AWS. Ad esempio, la sottorete mappata come us-east-1a in un account potrebbe essere mappata come us-east-1c in un altro account.
  • AWS consente di identificare la posizione effettiva delle risorse relative ai tuoi account nell'ID AZ.
  • È possibile selezionare una zona di disponibilità solo se corrisponde alle zone di disponibilità attive nel Network Load Balancer del provider VPC.
  • La console Amazon VPC esegue automaticamente la mappatura della zona di disponibilità.

Soluzione

Nota: se ricevi errori durante l'esecuzione dei comandi dell'interfaccia della linea di comando AWS (AWS CLI), consulta Risolvere gli errori AWS CLI. Inoltre, assicurati di utilizzare la versione più recente di AWS CLI.

Verifica quali zone di disponibilità sono abilitate nel Network Load Balancer del provider VPC. Esegui il comando dell'interfaccia della linea di comando AWS describe-vpc-endpoint-services:

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

Nota: sostituisci service-names con i nomi dei tuoi servizi.

Questo output di esempio mostra che è possibile selezionare la sottorete us-east-1b:

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

L'output precedente viene mappato sui valori dell'account che esegue il comando. Pertanto, sia gli account dei provider di servizi che gli account dei consumatori del servizio possono eseguire il comando describe-vpc-endpoint-services, anche quando si trovano in zone di disponibilità diverse. Per gli account degli utenti, assicurati che siano consentiti come principali AWS nell'endpoint del servizio.

Informazioni correlate

Condividi i tuoi servizi tramite AWS PrivateLink

ID delle zone di disponibilità per le tue risorse AWS

AWS UFFICIALE
AWS UFFICIALEAggiornata un anno fa