Selecione suas preferências de cookies

Usamos cookies essenciais e ferramentas semelhantes que são necessárias para fornecer nosso site e serviços. Usamos cookies de desempenho para coletar estatísticas anônimas, para que possamos entender como os clientes usam nosso site e fazer as devidas melhorias. Cookies essenciais não podem ser desativados, mas você pode clicar em “Personalizar” ou “Recusar” para recusar cookies de desempenho.

Se você concordar, a AWS e terceiros aprovados também usarão cookies para fornecer recursos úteis do site, lembrar suas preferências e exibir conteúdo relevante, incluindo publicidade relevante. Para aceitar ou recusar todos os cookies não essenciais, clique em “Aceitar” ou “Recusar”. Para fazer escolhas mais detalhadas, clique em “Personalizar”.

Usar anotações de serviço para configurar Network Load Balancers

Modo de foco
Usar anotações de serviço para configurar Network Load Balancers - Amazon EKS

Ajudar a melhorar esta página

Quer contribuir para este guia do usuário? Escolha o link Editar esta página no GitHub, disponível no painel direito de cada página. Suas contribuições ajudarão a tornar nosso guia do usuário melhor para todos.

Ajudar a melhorar esta página

Quer contribuir para este guia do usuário? Escolha o link Editar esta página no GitHub, disponível no painel direito de cada página. Suas contribuições ajudarão a tornar nosso guia do usuário melhor para todos.

Saiba como configurar Network Load Balancers (NLB) no Amazon EKS usando anotações de serviço do Kubernetes. Este tópico explica as anotações compatíveis com o Modo Automático do EKS para personalizar o comportamento do NLB, incluindo acessibilidade à internet, verificações de integridade, terminação SSL e TLS e modos de direcionamento IP.

Quando você cria um serviço do Kubernetes do tipo LoadBalancer no Modo Automático do EKS, o EKS provisiona e configura automaticamente um AWS Network Load Balancer com base nas anotações que você especifica. Essa abordagem declarativa permite que você gerencie as configurações do balanceador de carga diretamente por meio dos manifestos do Kubernetes, mantendo práticas de infraestrutura como código.

O Modo Automático do EKS gerencia o provisionamento do Network Load Balancer por padrão para todos os serviços do tipo LoadBalancer. Nenhuma instalação ou configuração adicional de controlador é necessária. A especificação `loadBalancerClass: eks.amazonaws.com/nlb` é automaticamente definida como padrão do cluster, simplificando o processo de implantação e mantendo a compatibilidade com as workloads existentes do Kubernetes.

Serviço de exemplo

Para obter mais informações sobre o recurso Service do Kubernetes, consulte a documentação do Kubernetes.

Analise o recurso Service de exemplo abaixo:

apiVersion: v1 kind: Service metadata: name: echoserver annotations: # Specify the load balancer scheme as internet-facing to create a public-facing Network Load Balancer (NLB) service.beta.kubernetes.io/aws-load-balancer-scheme: internet-facing spec: selector: app: echoserver ports: - port: 80 targetPort: 8080 protocol: TCP type: LoadBalancer # Specify the new load balancer class for NLB as part of EKS Auto Mode feature # For clusters with Auto Mode enabled, this field can be omitted as it's the default loadBalancerClass: eks.amazonaws.com/nlb

Anotações comumente usadas

A tabela a seguir lista as anotações comumente usadas compatíveis com o Modo Automático do EKS. Observe que o Modo Automático do EKS pode não ser compatível com todas as anotações.

dica

Todas as anotações a seguir precisam ser prefixadas com service.beta.kubernetes.io/

Campo Descrição Exemplo

aws-load-balancer-type

Especifica o tipo de balanceador de carga. Use external para novas implantações.

external

aws-load-balancer-nlb-target-type

Especifica se o tráfego deve ser roteado para instâncias de nós ou diretamente para IPs de pod. Use instance para implantações padrão ou ip para roteamento direto de pods.

instance

aws-load-balancer-scheme

Controla se o balanceador de carga é interno ou voltado para a internet.

internet-facing

aws-load-balancer-healthcheck-protocol

Protocolo de verificação de integridade do grupo de destino. As opções comuns são TCP (padrão) ou HTTP.

HTTP

aws-load-balancer-healthcheck-path

O caminho HTTP para verificações de integridade ao usar o protocolo HTTP e HTTPS.

/healthz

aws-load-balancer-healthcheck-port

Porta usada para verificações de integridade. Pode ser um número de porta específico ou traffic-port.

traffic-port

aws-load-balancer-subnets

Especifica em quais sub-redes criar o balanceador de carga. Pode usar IDs ou nomes de sub-rede.

subnet-xxxx, subnet-yyyy

aws-load-balancer-ssl-cert

ARN do certificado SSL do AWS Certificate Manager para HTTPS e TLS.

arn:aws:acm:region:account:certificate/cert-id

aws-load-balancer-ssl-ports

Especifica quais portas devem usar SSL e TLS.

443, 8443

load-balancer-source-ranges

Intervalos CIDR permitidos para acessar o balanceador de carga.

10.0.0.0/24, 192.168.1.0/24

aws-load-balancer-additional-resource-tags

Tags adicionais da AWS a serem aplicadas ao balanceador de carga e aos recursos relacionados.

Environment=prod,Team=platform

aws-load-balancer-ip-address-type

Especifica se o balanceador de carga usa IPv4 ou pilha dupla (IPv4 + IPv6).

ipv4 ou dualstack

Considerações

Ao migrar para o Modo Automático do EKS de balanceamento de carga, várias alterações nas anotações de serviço e nas configurações de recursos são necessárias. As tabelas a seguir descrevem as principais diferenças entre as implementações anteriores e as novas, incluindo opções não compatíveis e alternativas recomendadas.

Anotações do serviço

Anterior Novo Descrição

service.beta.kubernetes.io/load-balancer-source-ranges

Sem compatibilidade

Use spec.loadBalancerSourceRanges no serviço

service.beta.kubernetes.io/aws-load-balancer-type

Sem compatibilidade

Use spec.loadBalancerClass no serviço

service.beta.kubernetes.io/aws-load-balancer-internal

Sem compatibilidade

Usar o service.beta.kubernetes.io/aws-load-balancer-scheme

Vários atributos do balanceador de carga

Sem compatibilidade

Usar o service.beta.kubernetes.io/aws-load-balancer-attributes

service.beta.kubernetes.io/aws-load-balancer-proxy-protocol

Sem compatibilidade

Use service.beta.kubernetes.io/aws-load-balancer-attributes em vez disso

service.beta.kubernetes.io/aws-load-balancer-access-log-enabled

Sem compatibilidade

Use service.beta.kubernetes.io/aws-load-balancer-attributes em vez disso

service.beta.kubernetes.io/aws-load-balancer-access-log-s3-bucket-name

Sem compatibilidade

Use service.beta.kubernetes.io/aws-load-balancer-attributes em vez disso

service.beta.kubernetes.io/aws-load-balancer-access-log-s3-bucket-prefix

Sem compatibilidade

Use service.beta.kubernetes.io/aws-load-balancer-attributes em vez disso

service.beta.kubernetes.io/aws-load-balancer-cross-zone-load-balancing-enabled

Sem compatibilidade

Use service.beta.kubernetes.io/aws-load-balancer-attributes em vez disso

Para migrar das anotações de atributos obsoletas do balanceador de carga, consolide essas configurações na anotação service.beta.kubernetes.io/aws-load-balancer-attributes. Essa anotação aceita uma lista de pares chave/valor separados por vírgula de vários atributos do balanceador de carga. Por exemplo, para especificar o protocolo proxy, o registro em log de acesso e o balanceamento de carga entre zonas, use o seguinte formato:

service.beta.kubernetes.io/aws-load-balancer-attributes: | proxy_protocol.v2.enabled=true access_logs.s3.enabled=true access_logs.s3.bucket=my-bucket access_logs.s3.prefix=my-prefix load_balancing.cross_zone.enabled=true

Esse formato consolidado fornece uma maneira mais consistente e flexível de configurar os atributos do balanceador de carga e, ao mesmo tempo, reduz o número de anotações individuais necessárias. Analise suas configurações de serviço existentes e atualize-as para usar esse formato consolidado.

TargetGroupBinding

Anterior Novo Descrição

elbv2.k8s.aws/v1beta1

eks.amazonaws.com/v1

Alteração de versão da API

spec.targetType opcional

spec.targetType obrigatório

Especificação explícita do tipo de destino

spec.networking.ingress.from

Sem compatibilidade

Não oferece mais compatibilidade com NLB sem grupos de segurança

PrivacidadeTermos do sitePreferências de cookies
© 2025, Amazon Web Services, Inc. ou suas afiliadas. Todos os direitos reservados.