Questo argomento illustra i gruppi di sicurezza AWS (SG) necessari per GKE su AWS.
Se installi un servizio di gestione o utilizzi un VPC AWS esistente, anthos-gke
crea i gruppi di sicurezza per te. Puoi configurare i CRD AWSCluster e AWSNodePool con un elenco di ID gruppo di sicurezza aggiuntivi.
Il seguente diagramma illustra in che modo GKE su AWS utilizza i gruppi di sicurezza per connettersi ai servizi Google Cloud e AWS.
Gruppo di sicurezza del servizio di gestione
Il gruppo di sicurezza del servizio di gestione consente l'accesso all'API del servizio di gestione con HTTPS. Se hai configurato un host bastione, gli ingressi dal gruppo di sicurezza bastione sono consentiti.
Se crei un ambiente GKE su AWS in una VPC AWS esistente, devi disporre di un gruppo di sicurezza che consenta le seguenti connessioni.
Tipo | Protocollo | Port (Porta) | Indirizzo | Descrizione |
---|---|---|---|---|
In entrata | TCP | 443 | CIDR VPC | Consenti HTTPS dalla VPC AWS. |
In entrata | TCP | 22 | Bastion host SG | Consenti il tunneling SSH dal bastion host (incluso solo in VPC dedicato). |
In uscita | TCP | 80 | 0.0.0.0/0 | Consenti HTTP in uscita. |
In uscita | TCP | 443 | 0.0.0.0/0 | Consenti HTTPS in uscita. |
Accesso in uscita al dominio
Il servizio di gestione richiede l'accesso in uscita ai seguenti domini.
gkeconnect.googleapis.com
gkehub.googleapis.com
oauth2.googleapis.com
storage.googleapis.com
www.googleapis.com
gcr.io
k8s.gcr.io
EC2-REGION.ec2.archive.ubuntu.com
Sostituisci EC2-REGION con la regione AWS EC2 in cui viene eseguita l'installazione di GKE su AWS. Ad esempio,
us-west-1.ec2.archive.ubuntu.com/
.
Se utilizzi Cloud Service Mesh con Prometheus e Kiali, consenti l'accesso in uscita dai seguenti domini:
docker.io
quay.io
(Facoltativo) Gruppo di sicurezza del bastion host
Utilizzi le connessioni del gruppo di sicurezza dell'bastion host consentite dal suo gruppo per collegarti al servizio di gestione GKE su AWS e ai cluster degli utenti. Questo gruppo è facoltativo e viene incluso solo se utilizzi anthos-gke
per creare un'installazione di GKE su AWS in un VPC dedicato.
Tipo | Protocollo | Port (Porta) | Indirizzo | Descrizione |
---|---|---|---|---|
In entrata | TCP | 22 | Blocco CIDR da bastionAllowedSSHCIDRBlocks nella configurazione di AWSManagementService. |
Consenti SSH all'bastion host. |
In uscita | TCP | 22 | 0.0.0.0/0 | Consenti SSH in uscita. |
In uscita | TCP | 80 | 0.0.0.0/0 | Consenti HTTP in uscita. |
In uscita | TCP | 443 | 0.0.0.0/0 | Consenti HTTPS in uscita. |
Gruppo di sicurezza del control plane
Il gruppo di sicurezza del piano di controllo consente le connessioni tra i nodi del piano di controllo e il servizio di gestione, nonché tra i nodi del piano di controllo e i pool di nodi.
Il piano di controllo è costituito da tre istanze EC2 dietro un bilanciatore del carico di rete AWS (NLB). Queste istanze accettano connessioni da istanze etcd su altri nodi, nodi del pool di nodi e dall'NLB. Per aggiornare i componenti di GKE su AWS, è consentito tutto il traffico HTTP/HTTPS in uscita.
Specifica gli ID gruppo di sicurezza nella definizione di AWSCluster.
Tipo | Protocollo | Port (Porta) | Indirizzo | Descrizione |
---|---|---|---|---|
In entrata | TCP | 2380 | Questa SG | Consenti la replica etcd del control plane. |
In entrata | TCP | 2381 | Questa SG | Consenti la replica degli eventi etcd del control plane. |
In entrata | TCP | 443 | SG del pool di nodi | Consenti HTTPS dai nodi del pool di nodi. |
In entrata | TCP | 443 | Intervallo CIDR della VPC AWS | Consenti HTTPS dal bilanciatore del carico e dal servizio di gestione. |
In entrata | TCP | 11872 | Intervallo CIDR della VPC AWS | Controllo di integrità HTTP per il bilanciatore del carico. |
In uscita | TCP | 22 | SG del pool di nodi | Consenti il tunneling SSH ai pool di nodi (per i cluster versione 1.20 e precedenti). |
In entrata | TCP | 8132 | SG del pool di nodi | Consenti la connessione di Konnectivity dai pool di nodi (per i cluster versione 1.21 e successive). |
In uscita | TCP | 80 | 0.0.0.0/0 | Consenti HTTP in uscita. |
In uscita | TCP | 443 | 0.0.0.0/0 | Consenti HTTPS in uscita. |
In uscita | TCP | 2380 | Questa SG | Consenti la replica etcd del control plane. |
In uscita | TCP | 2381 | Questa SG | Consenti la replica degli eventi etcd del control plane. |
In uscita | TCP | 10250 | SG del pool di nodi | Consenti le connessioni dal piano di controllo a Kubelet. |
Gruppo di sicurezza del node pool
Il gruppo di sicurezza del pool di nodi consente le connessioni dal piano di controllo e da un altro nodo. Specifica gli ID gruppo di sicurezza nelle definizioni di AWSNodePool.
Tipo | Protocollo | Port (Porta) | Indirizzo | Descrizione |
---|---|---|---|---|
In entrata | TCP | Tutti | Questa SG | Consenti la comunicazione tra pod. |
In entrata | TCP | 22 | Gruppo di sicurezza del control plane | Consenti il tunnelling SSH dal control plane (per i cluster v1.20 e versioni precedenti). |
In uscita | TCP | 8132 | Gruppo di sicurezza del control plane | Consenti le connessioni di Konnectivity al control plane (per i cluster versione 1.21 e successive). |
In entrata | TCP | 443 | Gruppo di sicurezza del control plane | Consenti le connessioni dal piano di controllo a Kubelet. |
In entrata | TCP | 10250 | Gruppo di sicurezza del control plane | Consenti le connessioni dal piano di controllo a Kubelet. |
In uscita | TCP | Tutti | Questa SG | Consenti la comunicazione tra pod. |
In uscita | TCP | 80 | 0.0.0.0/0 | Consenti HTTP in uscita. |
In uscita | TCP | 443 | 0.0.0.0/0 | Consenti HTTPS in uscita. |