Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Central de ajuda/ Cloud Container Engine/ Guia de usuário/ Rede/ Ingresses/ Ingresses do ELB/ Configuração de ingresses do ELB usando anotações
Atualizado em 2024-11-28 GMT+08:00

Configuração de ingresses do ELB usando anotações

Adicionando anotações a um arquivo YAML, você pode implementar funções de ingress mais avançadas. Esta seção descreve as anotações que podem ser usadas quando você cria um ingress do tipo do ELB.

Interconexão com o ELB

Tabela 1 Anotações para interconexão com o ELB

Parâmetro

Tipo

Descrição

Versão do cluster suportada

kubernetes.io/elb.class

String

Selecione um tipo adequado de balanceador de carga.

O valor pode ser:

v1.9 ou mais recente

kubernetes.io/ingress.class

String

  • cce: o ingress autodesenvolvido do ELB é usado.
  • nginx: ingress de Nginx é usado.

Esse parâmetro é obrigatório quando um ingress é criado chamando a API.

Para clusters v1.23 ou posterior, use o parâmetro ingressClassName. Para mais detalhes, consulte Uso do kubectl para criar um ingress do ELB.

Somente clusters da v1.21 ou anterior

kubernetes.io/elb.port

Integer

Este parâmetro indica a porta externa registrada com o endereço do Serviço LoadBalancer.

Intervalo suportado: 1 a 65535

NOTA:

Algumas portas são portas de alto risco e são bloqueadas por padrão, por exemplo, a porta 21.

v1.9 ou mais recente

kubernetes.io/elb.id

String

Obrigatório quando um balanceador de carga existente deve ser interconectado.

ID de um balanceador de carga.

Como obter:

No console de gerenciamento, clique em Service List e escolha Networking > Elastic Load Balance. Clique no nome do balanceador de carga de destino. Na página de guia Summary, localize e copie o ID.

v1.9 ou mais recente

kubernetes.io/elb.ip

String

Obrigatório quando um balanceador de carga existente deve ser interconectado.

Este parâmetro indica o endereço de serviço de um balanceador de carga. O valor pode ser o endereço IP público de um balanceador de carga de rede público ou o endereço IP privado de um balanceador de carga de rede privada.

v1.9 ou mais recente

kubernetes.io/elb.autocreate

Tabela 4 Object

Obrigatório quando os balanceadores de carga são criados automaticamente.

Exemplo

  • Se um balanceador de carga de rede pública for criado automaticamente, defina esse parâmetro com o seguinte valor:

    '{"type":"public","bandwidth_name":"cce-bandwidth-1551163379627","bandwidth_chargemode":"bandwidth","bandwidth_size":5,"bandwidth_sharetype":"PER","eip_type":"5_bgp","name":"james"}'

  • Se um balanceador de carga de rede privada for criado automaticamente, defina esse parâmetro com o seguinte valor:

    {"type":"inner","name":"A-location-d-test"}

v1.9 ou mais recente

kubernetes.io/elb.enterpriseID

String

Opcional quando balanceadores de carga são criados automaticamente.

Os clusters da v1.15 e posterior oferecem suporte a esse campo. Nos clusters anteriores à v1.15, os balanceadores de carga são criados no projeto padrão por padrão.

Esse parâmetro indica o ID do projeto empresarial no qual o balanceador de carga do ELB será criado.

Se esse parâmetro não for especificado ou for definido como 0, os recursos serão vinculados ao projeto empresarial padrão.

Como obter:

Faça logon no console de gerenciamento e escolha Enterprise > Project Management na barra de menu superior. Na lista exibida, clique no nome do projeto empresarial de destino e copie o ID na página de detalhes do projeto empresarial.

v1.15 ou mais recente

kubernetes.io/elb.subnet-id

String

Opcional quando balanceadores de carga são criados automaticamente.

ID da sub-rede onde o cluster está localizado. O valor pode conter de 1 a 100 caracteres.

  • Obrigatório quando um cluster v1.11.7-r0 ou anterior deve ser criado automaticamente.
  • Opcional para clusters posteriores à v1.11.7-r0.

Obrigatório para clusters anteriores à v1.11.7-r0

Descartado em clusters posteriores à v1.11.7-r0

Para usar as anotações anteriores, execute as seguintes etapas:

Usar o HTTP/2

Tabela 2 Anotações do uso do HTTP/2

Parâmetro

Tipo

Descrição

Versão do cluster suportada

kubernetes.io/elb.http2-enable

String

Se o HTTP/2 está ativado. O encaminhamento de solicitações usando HTTP/2 melhora o desempenho de acesso entre sua aplicação e o balanceador de carga. No entanto, o balanceador de carga ainda usa HTTP 1.X para encaminhar solicitações para o servidor back-end. Este parâmetro é suportado em clusters de v1.19.16-r0, v1.21.3-r0 e posterior.

Opções:

  • true: ativado
  • false: desativado (valor padrão)

Observação: o HTTP/2 pode ser ativado ou desativado somente quando o ouvinte usa HTTPS. Esse parâmetro é inválido e assume como padrão false quando o protocolo de ouvinte é HTTP.

v1.19.16-r0, v1.21.3-r0 ou mais recente

Para obter detalhes sobre os cenários de aplicação, consulte Ingresses do ELB usando HTTP/2.

Interconexão com serviços de back-end HTTPS

Tabela 3 Anotações para interconexão com serviços de back-end HTTPS

Parâmetro

Tipo

Descrição

Versão do cluster suportada

kubernetes.io/elb.pool-protocol

String

Para interconectar com serviços de back-end HTTPS, defina esse parâmetro como https.

v1.23.8, v1.25.3 ou mais recente

Para obter detalhes sobre os cenários de aplicação, consulte Interconexão de ingresses do ELB com serviços de back-end HTTPS.

Estrutura de dados

Tabela 4 Estrutura de dados de elb.autocreate

Parâmetro

Obrigatório

Tipo

Descrição

name

Não

String

Nome do balanceador de carga criado automaticamente.

O valor pode conter de 1 a 64 caracteres. Somente letras, dígitos, sublinhados (_), hifens (-) e pontos (.) são permitidos.

Padrão: cce-lb+service.UID

type

Não

String

Tipo de rede do balanceador de carga.

  • public: balanceador de carga de rede pública
  • inner: balanceador de carga de rede privada

Padrão: inner

bandwidth_name

Sim para balanceadores de carga de rede pública

String

Nome da largura de banda. O valor padrão é cce-bandwidth-******.

O valor pode conter de 1 a 64 caracteres. Somente letras, dígitos, sublinhados (_), hifens (-) e pontos (.) são permitidos.

bandwidth_chargemode

Não

String

Modo de cobrança de largura de banda.

  • bandwidth: cobrado pela largura de banda
  • traffic: cobrado pelo tráfego

Padrão: bandwidth

bandwidth_size

Sim para balanceadores de carga de rede pública

Integer

Tamanho da largura de banda. O valor padrão é de 1 a 2000 Mbit/s. Configure este parâmetro com base na faixa de largura de banda permitida em sua região.

O incremento mínimo para ajuste de largura de banda varia dependendo do intervalo de largura de banda.
  • O incremento mínimo é de 1 Mbit/s se a largura de banda permitida não exceder 300 Mbit/s.
  • O incremento mínimo é de 50 Mbit/s se a largura de banda permitida varia de 300 Mbit/s a 1000 Mbit/s.
  • O incremento mínimo é de 500 Mbit/s se a largura de banda permitida exceder 1000 Mbit/s.

bandwidth_sharetype

Sim para balanceadores de carga de rede pública

String

Modo de compartilhamento de largura de banda.

  • PER: largura de banda dedicada

eip_type

Sim para balanceadores de carga de rede pública

String

Tipo de EIP.

  • 5_telcom: China Telecom
  • 5_union: China Unicom
  • 5_bgp: BGP dinâmico
  • 5_sbgp: BGP estático

vip_subnet_cidr_id

Não

String

Sub-rede onde o balanceador de carga está localizado. Este campo é suportado por clusters de v1.21 ou posterior.

Se esse parâmetro não for especificado, o balanceador de carga do ELB e o cluster estarão na mesma sub-rede.

available_zone

Sim

Array of strings

AZ onde o balanceador de carga está localizado.

Você pode obter todas as AZs suportadas consultando a lista de AZ.

Esse parâmetro está disponível apenas para balanceadores de carga compartilhados.

l4_flavor_name

Sim

String

Nome do flavor do balanceador de carga da camada 4.

Você pode obter todos os tipos suportados consultando a lista de flavors.

Esse parâmetro está disponível apenas para balanceadores de carga compartilhados.

l7_flavor_name

Não

String

Nome do flavor do balanceador de carga da camada-7.

Você pode obter todos os tipos suportados consultando a lista de flavors.

Esse parâmetro está disponível apenas para balanceadores de carga compartilhados. O valor deste parâmetro deve ser o mesmo de l4_flavor_name, ou seja, ambos são especificações elásticas ou especificações fixas.

elb_virsubnet_ids

Não

Array of strings

Sub-rede onde o servidor back-end do balanceador de carga está localizado. Se esse parâmetro for deixado em branco, a sub-rede do cluster padrão será usada. Os balanceadores de carga ocupam um número diferente de endereços IP de sub-rede com base em suas especificações. Não use os blocos CIDR de sub-rede de outros recursos (como clusters e nós) como o bloco CIDR do balanceador de carga.

Esse parâmetro está disponível apenas para balanceadores de carga compartilhados.

Exemplo:

"elb_virsubnet_ids": [
   "14567f27-8ae4-42b8-ae47-9f847a4690dd"
 ]