Ajudar a melhorar esta página
Quer contribuir para este guia do usuário? Role até o final desta página e selecione Editar esta página no GitHub. Suas contribuições ajudarão a tornar nosso guia do usuário melhor para todos.
Habilite o acesso de saída à Internet para pods
Aplica-se a: nós IPv4
do Fargate para Linux, nós do Linux com instâncias do Amazon EC2
Se você implantou seu cluster utilizando a família IPv6
, as informações neste tópico não serão aplicáveis a ele, pois endereços IPv6
não são convertidos na rede. Para obter mais informações sobre como usar o IPv6
com o seu cluster, consulte Atribuir endereços IPv6 a clusters, pods e serviços.
Por padrão, cada Pod no cluster recebe um endereço IPv4
privado de um bloco de Encaminhamento Entre Domínios Sem Classificação (CIDR) associado à VPC na qual o Pod está implantado. Pods na mesma VPC se comunicam uns com os outros utilizando esses endereços IP privados como endpoints. Quando um Pod se comunica com qualquer endereço IPv4
que não está dentro de um bloco CIDR associado à VPC, o plug-in CNI da Amazon VPC (para LinuxIPv4
do Pod's no endereço IPv4
privado da interface de rede elástica primária do nó no qual o Pod está em execução, por padrão *.
nota
Para nós Windows, existem detalhes adicionais a serem considerados. Por padrão, o plug-in CNI da VPC CNI para Windows
Devido a este comportamento:
-
Os Pods poderão se comunicar com os recursos da Internet somente se o nó em que estão sendo executados tiver um endereço IP público ou elástico atribuído a ele e se estiver em uma sub-rede pública. A tabela de rotas associada a uma sub-rede pública tem uma rota para um gateway da Internet. Convém implantar nós em sub-redes privadas, sempre que possível.
-
Para versões de plug-in anteriores a
1.8.0
, os recursos que estão em redes ou VPCs conectadas à sua VPC do cluster usando emparelhamento de VPC, uma VPC em trânsito ou o AWS Direct Connect não poderão iniciar a comunicação com os Pods por interfaces de rede elástica secundárias. Seus Pods podem iniciar a comunicação com esses recursos e receber respostas deles.
Se qualquer uma das declarações a seguir for verdadeira em seu ambiente, altere a configuração padrão com o comando a seguir.
-
Você tem recursos em redes ou VPCs que estão conectados à sua VPC do cluster usando emparelhamento de VPC, uma VPC em trânsito ou o AWS Direct Connect que precisam iniciar a comunicação com seus Pods usando um endereço
IPv4
e sua versão de plug-in deve ser anterior à1.8.0
. -
Os Pods estão em uma sub-rede privada e precisam se comunicar com a saída de Internet. A sub-rede tem uma rota para um gateway NAT.
kubectl set env daemonset -n kube-system aws-node AWS_VPC_K8S_CNI_EXTERNALSNAT=true
nota
As variáveis de configuração CNI AWS_VPC_K8S_CNI_EXTERNALSNAT
e AWS_VPC_K8S_CNI_EXCLUDE_SNAT_CIDRS
não são aplicáveis a nós Windows. A desativação do SNAT não tem suporte no Windows. Quanto à exclusão de uma lista de CIDRs IPv4
do SNAT, você pode definir isso especificando o parâmetro ExcludedSnatCIDRs
no script de bootstrap Windows. Para obter mais informações sobre o uso desse parâmetro, consulte Parâmetros de configuração do script de bootstrap.
Redes do host
*Se a especificação de Pod's contiver hostNetwork=true
(o padrão é false
), seu endereço IP não será convertido em um endereço diferente. Este é o caso dos Pods Kubernetes de kube-proxy
e do Amazon VPC CNI plugin for , que são executados no seu cluster por padrão. Para esses Pods, o endereço IP é o mesmo que o endereço IP primário do nó e, portanto, o endereço IP do Pod's não é convertido. Para obter mais informações sobre a configuração de hostNetwork
do Pod's, consulte PodSpec v1 core