Per configurare un bilanciatore del carico rivolto all'esterno con GKE su AWS, devi taggare il VPC e la subnet pubblica con l'ID cluster. Se hai già taggato il VPC e la subnet, vai a Abilitazione dell'ingresso.
Prima di iniziare
Prima di iniziare a utilizzare GKE su AWS, assicurati di aver eseguito le seguenti operazioni:
- Completa i prerequisiti.
- Installa un servizio di gestione.
- Crea un cluster utente.
GKE su AWS richiede tag sulle subnet che contengono endpoint del bilanciatore del carico. GKE su AWS tagga automaticamente tutte le subnet specificate nel campo
spec.Networking.ServiceLoadBalancerSubnetIDs
della risorsa AWSCluster.
Se vuoi aggiungere altre subnet al tuo cluster utente o se devi riapplicare i tag alle subnet esistenti, segui questi passaggi.
- Dalla directory - anthos-aws, utilizza- anthos-gkeper passare al servizio di gestione.- cd anthos-aws anthos-gke aws management get-credentials 
- Recupera l'ID del VPC AWS del tuo cluster con - kubectle memorizzalo come variabile.- export VPC_ID=$(\ env HTTPS_PROXY=http://localhost:8118 \ kubectl get awscluster cluster-0 -o jsonpath='{.spec.networking.vpcID}')
- Controlla i contenuti delle variabili con - echo. L'output è simile a- vpc-12345678abcdef0.- echo $VPC_ID
- Salva l'ID cluster in una variabile di ambiente. - export CLUSTER_ID=$(\ env HTTPS_PROXY=http://localhost:8118 \ kubectl get awscluster cluster-0 -o jsonpath='{.status.clusterID}')- Puoi controllare la variabile con - echo:- echo $CLUSTER_ID- La risposta include l'ID cluster. - gke-12345678
- Se hai installato GKE su AWS in un VPC dedicato, puoi utilizzare lo strumento a riga di comando - awsper recuperare l'ID subnet.- Seleziona una delle seguenti opzioni: - Pubblico, se vuoi esporre i servizi nella tua subnet pubblica.
- Privato, se vuoi esporre i servizi sulla tua subnet privata.
- Più subnet, se vuoi esporre i servizi su più subnet. 
 - Pubblico- export SUBNET_ID=$(aws ec2 describe-subnets \ --filters "Name=vpc-id,Values=$VPC_ID" "Name=tag:Name,Values=*public*" \ --query "Subnets[*].SubnetId" \ --output text)- L'output è un oggetto che contiene l'ID subnet. È simile a - subnet-1234abcdefg. Puoi controllare la variabile con- echo:- echo $SUBNET_ID- La risposta include l'ID subnet. - subnet-012345678abcdef- Privato- export SUBNET_ID=$(aws ec2 describe-subnets \ --filters "Name=vpc-id,Values=$VPC_ID" "Name=tag:Name,Values=*private*" \ --query "Subnets[*].SubnetId" \ --output text)- L'output è un oggetto che contiene l'ID subnet. È simile a - subnet-1234abcdefg. Puoi controllare la variabile con- echo:- echo $SUBNET_ID- La risposta include l'ID subnet. - subnet-012345678abcdef- Più subnet- Se utilizzi più subnet per i tuoi AWSNodePools (ad esempio, se utilizzi più zone di disponibilità), devi taggare i tuoi ID subnet singolarmente. - Recupera l'elenco degli ID subnet con - aws ec2 describe-subnets.- Per ottenere un elenco di tutte le subnet pubbliche, esegui questo comando: - aws ec2 describe-subnets \ --filters "Name=vpc-id,Values=$VPC_ID" "Name=tag:Name,Values=*public*" \ --query "Subnets[*].SubnetId" \ --output text- Per ottenere un elenco di tutte le subnet private, esegui questo comando: - aws ec2 describe-subnets \ --filters "Name=vpc-id,Values=$VPC_ID" "Name=tag:Name,Values=*private*" \ --query "Subnets[*].SubnetId" \ --output text- La risposta include gli ID subnet. - subnet-012345678abcdef subnet-abcdef123456789 subnet-123456789abcdef
- Tagga la subnet con l'ID cluster. Se hai più subnet, seleziona Più subnet. - Singola subnet- aws ec2 create-tags \ --resources $SUBNET_ID \ --tags Key=kubernetes.io/cluster/$CLUSTER_ID,Value=shared- Più subnet- Per ogni subnet, esegui questo comando: - aws ec2 create-tags \ --resources subnet-ids \ --tags Key=kubernetes.io/cluster/$CLUSTER_ID,Value=shared- Sostituisci subnet-ids con l'elenco degli ID subnet, separati da spazi. Ad esempio, - subnet-012345678abcdef subnet-abcdef123456789 subnet-123456789abcdef.