As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Migre os controladores de entrada NGINX ao ativar o modo automático do Amazon EKS
Criado por Olawale Olaleye (AWS) e Shamanth Devagari (AWS)
Resumo
O EKS Auto Mode para Amazon Elastic Kubernetes Service (Amazon EKS) pode reduzir a sobrecarga operacional da execução de suas cargas de trabalho em clusters Kubernetes. Esse modo também AWS permite configurar e gerenciar a infraestrutura em seu nome. Ao habilitar o EKS Auto Mode em um cluster existente, você deve planejar cuidadosamente a migração das configurações do NGINX Ingress Controller
Você pode usar uma estratégia de implantação azul/verde para migrar uma instância do NGINX Ingress Controller ao habilitar o EKS Auto Mode em um cluster Amazon EKS existente.
Pré-requisitos e limitações
Pré-requisitos
Um ativo Conta da AWS
Um cluster Amazon EKS executando o Kubernetes versão 1.29 ou posterior
Complementos do Amazon EKS executando versões mínimas
Versão mais recente de kubectl
Uma instância existente do NGINX Ingress Controller
(Opcional) Uma zona hospedada no Amazon Route 53 para mudança de tráfego baseada em DNS
Arquitetura
Uma implantação azul/verde é uma estratégia de implantação na qual você cria dois ambientes separados, mas idênticos. Implantações azul/verdes fornecem recursos de liberação e reversão com tempo de inatividade quase zero. A ideia fundamental é transferir o tráfego entre dois ambientes idênticos que estão executando versões diferentes do seu aplicativo.
A imagem a seguir mostra a migração de balanceadores de carga de rede de duas instâncias diferentes do controlador de entrada NGINX ao ativar o modo automático do EKS. Você usa uma implantação azul/verde para transferir o tráfego entre os dois balanceadores de carga de rede.

O namespace original é o namespace azul. É aqui que o serviço e a instância originais do NGINX Ingress Controller são executados, antes de você ativar o EKS Auto Mode. O serviço e a instância originais se conectam a um Network Load Balancer que tem um nome DNS configurado no Route 53. O AWS Load Balancer Controller
O diagrama mostra o seguinte fluxo de trabalho para configurar um ambiente para uma implantação azul/verde:
Instale e configure outra instância do NGINX Ingress Controller em um namespace diferente, um namespace verde.
No Route 53, configure um nome DNS para um novo Network Load Balancer.
Ferramentas
Serviços da AWS
O Amazon Elastic Kubernetes Service (Amazon EKS) ajuda você a executar o AWS Kubernetes sem precisar instalar ou manter seu próprio plano de controle ou nós do Kubernetes.
O Elastic Load Balancing (ELB) distribui o tráfego de entrada de aplicativos ou de rede em vários destinos. Por exemplo, você pode distribuir tráfego entre instâncias, contêineres e endereços IP do Amazon Elastic Compute Cloud (Amazon EC2) em uma ou mais zonas de disponibilidade.
O Amazon Route 53 é um serviço web de DNS altamente disponível e escalável.
A Amazon Virtual Private Cloud (Amazon VPC) ajuda você a lançar AWS recursos em uma rede virtual que você definiu. Essa rede virtual é semelhante a uma rede tradicional que você operaria no próprio datacenter, com os benefícios de usar a infraestrutura escalável da AWS.
Outras ferramentas
O Helm
é um gerenciador de pacotes de código aberto para Kubernetes que ajuda você a instalar e gerenciar aplicativos em seu cluster Kubernetes. kubectl
é uma interface de linha de comando que ajuda você na execução de comandos em clusters do Kubernetes. O NGINX Ingress Controller
conecta aplicativos e serviços do Kubernetes com tratamento de solicitações, autenticação, recursos personalizados de autoatendimento e depuração.
Épicos
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Confirme se a instância original do NGINX Ingress Controller está operacional. | Digite o comando a seguir para verificar se os recursos no
Na saída, confirme se os pods do NGINX Ingress Controller estão em execução. Veja a seguir um exemplo de saída:
| DevOps engenheiro |
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Crie os recursos do Kubernetes. | Insira os comandos a seguir para criar um exemplo de implantação, serviço e entrada do Kubernetes:
| DevOps engenheiro |
Analise os recursos implantados. | Digite o comando a seguir para ver uma lista dos recursos implantados:
Na saída, confirme se o HTTPd pod de amostra está em execução. Veja a seguir um exemplo de saída:
| DevOps engenheiro |
Confirme se o serviço está acessível. | Digite o comando a seguir para confirmar que o serviço pode ser acessado por meio do nome DNS do Network Load Balancer:
A seguir está a saída esperada:
| DevOps engenheiro |
(Opcional) Crie um registro DNS. |
| DevOps engenheiro, AWS DevOps |
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Ative o modo automático do EKS. | Siga as instruções em Ativar o modo automático do EKS em um cluster existente (documentação do Amazon EKS). | AWS DevOps |
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Configure uma nova instância do NGINX Ingress Controller. |
| DevOps engenheiro |
Implante a nova instância do NGINX Instance Controller. | Digite o comando a seguir para aplicar o arquivo de manifesto modificado:
| DevOps engenheiro |
Confirme a implantação bem-sucedida. | Insira o comando a seguir para verificar se os recursos no
Na saída, confirme se os pods do NGINX Ingress Controller estão em execução. Veja a seguir um exemplo de saída:
| DevOps engenheiro |
Crie uma nova entrada para a carga de HTTPd trabalho de amostra. | Insira o comando a seguir para criar uma nova entrada para a carga de HTTPd trabalho de amostra existente:
| DevOps engenheiro |
Confirme se a nova entrada funciona. | Digite o comando a seguir para confirmar se a nova entrada funciona:
A seguir está a saída esperada:
| DevOps engenheiro |
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Vá para o novo namespace. |
| AWS DevOps, DevOps engenheiro |
Analise as duas entradas. | Insira o comando a seguir para analisar as duas entradas que foram criadas para a carga de HTTPd trabalho de amostra:
Veja a seguir um exemplo de saída:
| DevOps engenheiro |
Recursos relacionados
Ative o EKS Auto Mode em um cluster existente (documentação do Amazon EKS)
Solucione problemas com balanceadores de carga criados pelo controlador de serviço Kubernetes no Amazon EKS
(re:POST Knowledge Center)AWS Controlador de entrada NGINX
(documentação do NGINX)