Questo argomento spiega 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 gruppi di sicurezza per te. Puoi configurare i CRD
AWSCluster e
AWSNodePool con un elenco di ID gruppo di sicurezza aggiuntivi.
Il seguente diagramma mostra come GKE su AWS utilizza i gruppi di sicurezza per connettersi a Google Cloud e ai servizi 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 bastion host, è consentito il traffico in entrata dal gruppo di sicurezza bastion.
Se crei un ambiente GKE su AWS in un 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 dal VPC AWS. |
In entrata | TCP | 22 | Gruppo di sicurezza Bastion host | Consenti il tunneling SSH dal bastion host (incluso solo nel 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 al dominio in uscita
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
connetterti al servizio di gestione GKE su AWS e ai cluster
utente. 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 al 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 control plane consente le connessioni tra i nodi del control plane e il servizio di gestione, nonché tra i nodi del control plane e i pool di nodi.
Il control plane è 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 NLB. Per aggiornare i componenti di GKE su AWS, tutto il traffico HTTP/HTTPS in uscita è consentito.
Specifichi gli ID dei gruppi di sicurezza nella definizione di AWSCluster.
Tipo | Protocollo | Port (Porta) | Indirizzo | Descrizione |
---|---|---|---|---|
In entrata | TCP | 2380 | Questo SG | Consenti la replica di etcd del control plane. |
In entrata | TCP | 2381 | Questo SG | Consenti la replica degli eventi etcd del control plane. |
In entrata | TCP | 443 | Node pool SG | Consenti HTTPS dai nodi pool di nodi. |
In entrata | TCP | 443 | Intervallo CIDR VPC AWS | Consenti HTTPS dal bilanciatore del carico e dal servizio di gestione. |
In entrata | TCP | 11872 | Intervallo CIDR VPC AWS | Controllo di integrità HTTP per il bilanciatore del carico. |
In uscita | TCP | 22 | Node pool SG | Consenti il tunneling SSH ai pool di nodi (per i cluster v1.20 e precedenti). |
In entrata | TCP | 8132 | Node pool SG | Consenti la connessione Konnectivity dai pool di nodi (per i cluster v1.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 | Questo SG | Consenti la replica di etcd del control plane. |
In uscita | TCP | 2381 | Questo SG | Consenti la replica degli eventi etcd del control plane. |
In uscita | TCP | 10250 | Node pool SG | Consenti le connessioni dal control plane a Kubelet. |
Gruppo di sicurezza del node pool
Il gruppo di sicurezza del pool di nodi consente le connessioni dal control plane e da altri nodi. Specifica gli ID gruppo di sicurezza nelle definizioni di AWSNodePool.
Tipo | Protocollo | Port (Porta) | Indirizzo | Descrizione |
---|---|---|---|---|
In entrata | TCP | Tutti | Questo SG | Consenti la comunicazione tra pod. |
In entrata | TCP | 22 | SG del control plane | Consenti il tunneling SSH dal control plane (per i cluster v1.20 e versioni precedenti). |
In uscita | TCP | 8132 | SG del control plane | Consenti le connessioni Konnectivity al control plane (per i cluster v1.21 e successive). |
In entrata | TCP | 443 | SG del control plane | Consenti le connessioni dal control plane a Kubelet. |
In entrata | TCP | 10250 | SG del control plane | Consenti le connessioni dal control plane a Kubelet. |
In uscita | TCP | Tutti | Questo 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. |