Saiba mais sobre endereços IPv6 para clusters, pods e serviços - Amazon EKS

Ajudar a melhorar esta página

Para contribuir com este guia de usuário, escolha o link Editar esta página no GitHub, disponível no painel direito de cada página.

Saiba mais sobre endereços IPv6 para clusters, pods e serviços

Aplica-se a: pods com instâncias do Amazon EC2 e pods do Fargate

Por padrão, o Kubernetes atribui endereços IPv4 aos seus pods e serviços. Em vez de atribuir endereços IPv4 aos seus pods e serviços, você pode configurar o cluster para atribuir endereços IPv6 a eles. O Amazon EKS não é compatível com serviços ou pods de pilha dupla, embora o Kubernetes seja. Consequentemente, você não pode atribuir endereços IPv4 e IPv6 aos seus pods e serviços.

Você seleciona qual família de IPs deseja usar para o seu cluster ao criá-lo. Não será possível alterar a família depois de criar o cluster.

Para obter um tutorial sobre como implantar um cluster IPv6 do Amazon EKS, consulte Implantar um cluster IPv6 do Amazon EKS e nós gerenciados do Amazon Linux.

Confira as seguintes considerações sobre o uso do recurso:

Suporte a recursos IPv6

Atribuições de endereços IP

  • Serviços Kubernetes: serviços do Kubernetes recebem apenas um endereço IPv6. Eles não recebem endereços IPv4.

  • Pods: Os pods recebem um endereço IPv6 e um endereço IPv4 local do host. O endereço IPv4 local do host é atribuído usando um plug-in CNI local do host encadeado com o VPC CNI, e o endereço não é informado ao ambiente de gerenciamento do Kubernetes. Ele só é usado quando um pod precisa se comunicar com recursos IPv4 externos em outra Amazon VPC ou na internet. O endereço IPv4 local do host é SNATed (pelo VPC CNI) para o endereço IPv4 primário da ENI primária do nó de processamento.

  • Pods e serviços: pods e serviços recebem somente endereços IPv6, não endereços IPv4. Quando os pods precisam se comunicar com endpoints IPv4 externos, eles usam NAT no próprio nó. Esse recurso NAT integrado elimina a necessidade de DNS64 e NAT64. Para tráfego que requer acesso público à internet, o tráfego do pod é um endereço de rede de origem convertido em um endereço IP público.

  • Endereços de roteamento: quando um pod se comunica fora da VPC, seu endereço IPv6 original é preservado (não convertido para o endereço IPv6 do nó). Esse tráfego é roteado diretamente por meio de um gateway da internet ou de um gateway da internet somente de saída.

  • Nós: Todos os nós recebem um endereço IPv4 e IPv6.

  • Pods do Fargate: cada pod do Fargate recebe um endereço IPv6 do CIDR especificado para a sub-rede em que está implantado. A unidade de hardware subjacente que executa pods do Fargate obtém um endereço IPv4 e IPv6 exclusivo dos CIDRs atribuídos à sub-rede em que a unidade de hardware está implantada.

Como usar o IPv6 com o EKS

  • Criar novo cluster: Você deve criar um novo cluster e especificar que deseja usar a família IPv6 para esse cluster. Você não pode habilitar a família do IPv6 para um cluster atualizado de uma versão anterior. Para obter instruções sobre como criar um novo cluster, consulte Considerações .

  • Use o VPC CNI recente: implante a versão do Amazon VPC CNI 1.10.1 ou posterior. Essa versão ou uma posterior é implantada por padrão. Depois de implantar o complemento, você não poderá fazer downgrade do seu complemento CNI da Amazon VPC para uma versão inferior a 1.10.1 sem remover primeiro todos os nós em todos os grupos de nós do seu cluster.

  • Configure o VPC CNI para IPv6 : Se você usar nós do Amazon EC2, deverá configurar o complemento Amazon VPC CNI com delegação de prefixo IP e IPv6. Se você escolher a família IPv6 ao criar o seu cluster, a versão 1.10.1 do complemento elegerá tal configuração como padrão. Esse é o caso de complementos autogerenciados ou do Amazon EKS. Para obter mais informações sobre a delegação de prefixos IP, consulte Atribuir mais endereços IP aos nós do Amazon EKS com prefixos.

  • Configure os endereços IPv4 e IPv6: Quando você cria um cluster, a VPC e as sub-redes que você especificar devem ter um bloco CIDR IPv6 atribuído à VPC e às sub-redes que você especificar. Elas também precisam ter um bloco CIDR IPv4 atribuído a elas. Isso ocorre porque, ainda que você só queira usar o IPv6, uma VPC ainda precisa de um bloco CIDR IPv4 para funcionar. Para obter mais informações, consulte Associar um bloco CIDR IPv6 à sua VPC no Guia do usuário da Amazon VPC.

  • Atribuição automática de endereços IPv6 aos nós: Ao criar seus nós, você deve especificar sub-redes que estejam configuradas para atribuir automaticamente endereços IPv6. Caso contrário, você não poderá implantar seus nós. Por padrão, essa configuração fica desativada. Para obter mais informações, consulte Modificar o atributo de endereçamento IPv6 para a sua sub-rede no Guia do usuário da Amazon VPC.

  • Defina tabelas de rotas para usar IPv6 : As tabelas de rotas atribuídas às suas sub-redes devem ter rotas para endereços IPv6. Para obter mais informações, consulte Migrar para IPv6 no Guia do usuário da Amazon VPC.

  • Defina grupos de segurança para o IPv6 : seus grupos de segurança devem permitir endereços IPv6. Para obter mais informações, consulte Migrar para IPv6 no Guia do usuário da Amazon VPC.

  • Configurar o balanceador de carga: use a versão 2.3.1 ou mais recente do AWS Load Balancer Controller para balancear a carga de aplicações HTTP usando Roteamento de aplicações e tráfego HTTP com Application Load Balancers ou o tráfego de rede usando Roteamento de tráfego TCP e UDP com Network Load Balancers para pods IPv6 com qualquer um dos balanceadores de carga no modo IP, mas não no modo de instância. Para obter mais informações, consulte Direcionar o tráfego da Internet com o AWS Load Balancer Controller.

  • Adicione a política do IAM IPv6: Você deve anexar uma política do IAM do IPv6 à perfil do IAM do nó ou de IAM da CNI. Entre os dois, recomendamos que você a anexe a uma função do IAM do CNI. Para obter mais informações, consulte Criar uma política do IAM para clusters que usam a família IPv6 e Etapa 1: criar o perfil do IAM do plug-in CNI da Amazon VPC para Kubernetes.

  • Avalie todos os componentes: Faça uma avaliação completa de suas aplicações, dos complementos do Amazon EKS e dos serviços AWS com os quais você se integra antes de implantar os clusters IPv6. Isso ocorre para garantir que tudo funcione conforme o esperado com o IPv6.

  • Adicione BootstrapArguments grupos de nós autogerenciados: Ao criar um grupo de nós autogerenciados em um cluster que usa a família IPv6, os dados do usuário devem incluir o seguinte BootstrapArguments para o arquivo bootstrap.sh que é executado na inicialização do nó. Substitua your-cidr pelo intervalo de CIDR IPv6 da VPC do cluster.

    --ip-family ipv6 --service-ipv6-cidr your-cidr

    Se você não souber o intervalo IPv6 CIDR do seu cluster, poderá vê-lo com o seguinte comando (requer a versão AWS CLI 2.4.9 ou posterior).

    aws eks describe-cluster --name my-cluster --query cluster.kubernetesNetworkConfig.serviceIpv6Cidr --output text