Este tópico explica os grupos de segurança (SG) da AWS necessários para o GKE na AWS.
Se você instalar um serviço de gerenciamento ou usar uma VPC AWS existente , anthos-gke
criará grupos de segurança para você. Você pode configurar seus CRDs do AWSCluster e do AWSNodePool com uma lista de IDs de grupos de segurança adicionais.
O diagrama a seguir descreve como o GKE na AWS usa grupos de segurança para se conectar a Google Cloud e serviços da AWS.
Grupo de segurança de serviços de gerenciamento
O grupo de segurança do serviço de gerenciamento permite acesso à API do serviço de gerenciamento via HTTPS. Se você tiver um host Bastion configurado, a entrada do grupo de segurança Bastion será permitida.
Se você criar um ambiente GKE na AWS em uma VPC da AWS existente, deverá ter um grupo de segurança que permita as seguintes conexões.
Tipo | Protocolo | Porta | Endereço | Descrição |
---|---|---|---|---|
Entrada | TCP | 443 | VPC CIDR | Permitir HTTPS da VPC da AWS. |
Entrada | TCP | 22 | Host do bastião SG | Permitir tunelamento SSH do host bastion (incluído somente na VPC dedicada). |
Saída | TCP | 80 | 0.0.0.0/0 | Permitir HTTP de saída. |
Saída | TCP | 443 | 0.0.0.0/0 | Permitir HTTPS de saída. |
Acesso de domínio de saída
O serviço de gerenciamento requer acesso de saída aos seguintes domínios.
-
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
Substitua EC2-REGION pela região do AWS EC2 onde a instalação do GKE na AWS é executada. Por exemplo, us-west-1.ec2.archive.ubuntu.com/
.
Se você estiver usando o Cloud Service Mesh com Prometheus e Kiali , permita o acesso de saída dos seguintes domínios:
-
docker.io
-
quay.io
Grupo de segurança do host Bastion (opcional)
Use as conexões do grupo de segurança do Bastion Host permitidas pelo grupo dele para se conectar ao seu serviço de gerenciamento e clusters de usuários do GKE na AWS. Este grupo é opcional e incluído somente se você usar anthos-gke
para criar uma instalação do GKE na AWS em uma VPC dedicada .
Tipo | Protocolo | Porta | Endereço | Descrição |
---|---|---|---|---|
Entrada | TCP | 22 | Bloco CIDR de bastionAllowedSSHCIDRBlocks na configuração AWSManagementService . | Permitir que o SSH controle o host. |
Saída | TCP | 22 | 0.0.0.0/0 | Permitir SSH de saída. |
Saída | TCP | 80 | 0.0.0.0/0 | Permitir HTTP de saída. |
Saída | TCP | 443 | 0.0.0.0/0 | Permitir HTTPS de saída. |
Grupo de segurança do avião de controle
O grupo de segurança do plano de controle permite conexões entre nós do plano de controle e o serviço de gerenciamento, e entre nós do plano de controle e pools de nós.
O plano de controle consiste em três instâncias do EC2 atrás de um balanceador de carga de rede ( NLB ) da AWS. Essas instâncias aceitam conexões de instâncias do etcd em outros nós, nós do pool de nós e do NLB. Para atualizar os componentes do GKE na AWS, todo o tráfego HTTP/HTTPS de saída é permitido.
Especifique os IDs do grupo de segurança na sua definição do AWSCluster .
Tipo | Protocolo | Porta | Endereço | Descrição |
---|---|---|---|---|
Entrada | TCP | 2380 | Este SG | Permitir replicação do etcd do plano de controle. |
Entrada | TCP | 2381 | Este SG | Permitir replicação de eventos etcd do plano de controle. |
Entrada | TCP | 443 | Pool de nós SG | Permitir HTTPS de nós do pool de nós. |
Entrada | TCP | 443 | Intervalo de CIDR da AWS VPC | Permitir HTTPS do balanceador de carga e serviço de gerenciamento. |
Entrada | TCP | 11872 | Intervalo de CIDR da AWS VPC | Verificação de integridade HTTP para balanceador de carga. |
Saída | TCP | 22 | Pool de nós SG | Permitir tunelamento SSH para pools de nós (para clusters v1.20 e anteriores). |
Entrada | TCP | 8132 | Pool de nós SG | Permitir conexão do Konnectivity a partir de pools de nós (para clusters v1.21 e superiores). |
Saída | TCP | 80 | 0.0.0.0/0 | Permitir HTTP de saída. |
Saída | TCP | 443 | 0.0.0.0/0 | Permitir HTTPS de saída. |
Saída | TCP | 2380 | Este SG | Permitir replicação do etcd do plano de controle. |
Saída | TCP | 2381 | Este SG | Permitir replicação de eventos etcd do plano de controle. |
Saída | TCP | 10250 | Pool de nós SG | Permitir conexões do plano de controle para o Kubelet. |
Grupo de segurança do pool de nós
O grupo de segurança do pool de nós permite conexões do plano de controle e de outros nós. Você especifica os IDs do grupo de segurança nas definições do AWSNodePool .
Tipo | Protocolo | Porta | Endereço | Descrição |
---|---|---|---|---|
Entrada | TCP | Todos | Este SG | Permitir comunicação entre pods. |
Entrada | TCP | 22 | Plano de controle SG | Permitir tunelamento SSH do plano de controle (para clusters v1.20 e inferiores). |
Saída | TCP | 8132 | Plano de controle SG | Permitir conexões do Konnectivity com o plano de controle (para clusters v1.21 e superiores). |
Entrada | TCP | 443 | Plano de controle SG | Permitir conexões do plano de controle para o Kubelet. |
Entrada | TCP | 10250 | Plano de controle SG | Permitir conexões do plano de controle para o Kubelet. |
Saída | TCP | Todos | Este SG | Permitir comunicação entre pods. |
Saída | TCP | 80 | 0.0.0.0/0 | Permitir HTTP de saída. |
Saída | TCP | 443 | 0.0.0.0/0 | Permitir HTTPS de saída. |