Um listener verifica solicitações de conexão. Crie listeners para uma instância do Application Load Balancer (ALB) para encaminhar solicitações de clientes conforme suas necessidades de negócio, e então modifique, inicie, pare ou exclua os listeners.
Selecionar um protocolo de listener
Antes de criar um listener, selecione o protocolo que melhor atende às suas necessidades de negócio. O Application Load Balancer (ALB) suporta três protocolos de listener de Camada 7: HTTP, HTTPS e QUIC. A tabela a seguir descreve os casos de uso e os requisitos de configuração de cada protocolo.
|
Protocolo |
Casos de uso |
Certificado SSL obrigatório |
Protocolos de backend suportados |
Recursos |
|
HTTP |
Aplicações que exigem inspeção de conteúdo, como aplicações web e jogos mobile casuais. |
Não |
HTTP, HTTPS |
Suporta o protocolo WebSocket por padrão. |
|
HTTPS |
Aplicações que requerem transmissão de dados criptografados. Estabelece sessões criptografadas SSL/TLS entre a instância ALB e os clientes. |
Sim (certificado de servidor obrigatório; certificado CA obrigatório para autenticação mútua). |
HTTP, HTTPS, gRPC Para usar o protocolo de backend gRPC, ative o HTTP/2 no listener. |
Suporta HTTP/2, autenticação mútua (com certificado CA), políticas de segurança TLS e upgrades QUIC. Suporta o protocolo WebSocket Secure (WSS) por padrão. |
|
QUIC |
Cenários com sinais de rede fracos ou alternância frequente entre Wi-Fi e redes móveis. Mitiga efetivamente travamentos de rede e vídeo, melhora a eficiência de acesso a recursos de áudio e vídeo, e garante a transmissão segura de dados. |
Sim (certificado de servidor obrigatório) |
HTTP |
Funciona sobre UDP, estabelece conexões mais rapidamente e suporta migração de conexão (as conexões permanecem ativas durante trocas de rede). Pode ser usado de forma independente ou em conjunto com um listener HTTPS. |
O ALB Extensible Edition difere das outras edições nos seguintes aspectos em relação a protocolos de listener: listeners QUIC não são suportados, o protocolo de backend gRPC não é suportado, e autenticação mútua (com certificado CA) e upgrades QUIC não são suportados.
Pré-requisitos
Você deve ter created an ALB instance e um server group.
Para criar um listener HTTPS ou QUIC, adquira ou faça upload de um certificado de servidor no Certificate Management Service. Para mais informações, consulte Manage certificates.
Criar um listener
Há duas formas de criar um listener:
Create Listener: Um assistente passo a passo que suporta configurações avançadas personalizadas.
Quick Create Listener: Um método simplificado em que você precisa configurar apenas o protocolo do listener, a porta do listener e o server group. Para listeners HTTPS e QUIC, também é necessário configurar um certificado de servidor. Para listeners HTTPS, também é necessário selecionar uma política de segurança TLS.
Console
Etapa 1: Configure Listener
Acesse a página Instances no console do ALB, clique em no ID da instância de destino e, em seguida, clique em Create Listener na aba Listener.
-
No assistente Configure Listener, configure os parâmetros a seguir e clique em Next.
-
Listener Protocol: Selecione HTTP, HTTPS ou QUIC.
O ALB Extensible Edition não suporta listeners QUIC.
-
Listener Port: Os valores válidos são de 1 a 65535. O HTTP geralmente usa a porta 80 e o HTTPS geralmente usa a porta 443.
Na mesma instância ALB, listeners com o mesmo protocolo não podem usar a mesma porta. Além disso, listeners HTTP e HTTPS não podem compartilhar a mesma porta.
Listener Name: Insira um nome personalizado para o listener.
Tags: Associe tags ao listener por meio de pares chave-valor.
Advanced Settings: Clique em Modify para expandir.
-
Enable HTTP/2: Suportado apenas para listeners HTTPS.
O ALB Extensible Edition ativa o HTTP/2 por padrão e não permite desativá-lo.
Idle Connection Timeout Period: Os valores válidos são de 1 a 600 segundos. O valor padrão é 15 segundos. Após esse período, o ALB encerra a conexão. Para solicitar um tempo máximo de timeout maior, acesse Quota Center.
Connection Request Timeout: Os valores válidos são de 1 a 600 segundos. O valor padrão é 60 segundos. Se o timeout for excedido, o ALB retorna um erro HTTP 504. Para solicitar um tempo máximo de timeout maior, acesse Quota Center.
-
Compression: Quando ativada, esta funcionalidade comprime o conteúdo da resposta cujo
Content-Lengthexceder 1024 bytes. Suporta Brotli (todos os tipos) e Gzip (Nível 4). Se o cliente suportar ambos, o Brotli tem prioridade.Tipos Gzip suportados:
text/xml,text/plain,text/css,application/javascript,application/x-javascript,application/rss+xml,application/atom+xml,application/xmleapplication/json. -
Retrieve Client IP: Quando ativada, o ALB extrai o IP real do cliente a partir do cabeçalho X-Forwarded-For. Isso exige a configuração de uma lista de IPs confiáveis:
0.0.0.0/0: Obtém o endereço mais à esquerda do cabeçalho X-Forwarded-For.proxy1 IP;proxy2 IP;..: Recupera o primeiro valor da direita para a esquerda que não esteja na lista.
Com essa funcionalidade ativada, as regras de encaminhamento que usam correspondência por SourceIp e a ação QPS (Per Client IP) utilizarão o IP real do cliente.
Esta opção não é suportada por listeners QUIC.
Este recurso está disponível apenas para instâncias das edições Standard e WAF-enabled. Não é suportado pelas edições Basic ou Extensible.
Add HTTP Header: Selecione os cabeçalhos HTTP a adicionar para recuperar informações como o endereço IP do cliente, o protocolo do listener e a porta do listener. Para mais informações sobre cada cabeçalho, consulte HTTP headers.
-
QUIC Upgrade: Esta opção se aplica ao usar um listener HTTPS em conjunto com um listener QUIC. Na lista suspensa Associated QUIC Listeners, selecione um listener QUIC já existente. Com esta opção ativada, o ALB anuncia o protocolo HTTP/3 aos clientes. Os clientes que suportam HTTP/3 usam o listener QUIC, enquanto os demais revertem automaticamente para HTTPS.
Esta opção é suportada apenas para listeners HTTPS e não é suportada pelo ALB Extensible Edition.
-
Etapa 2: Configure SSL Certificate (para listeners HTTPS e QUIC)
|
Certificado |
Descrição |
Obrigatório para autenticação unilateral |
Obrigatório para autenticação mútua |
|
Certificado de servidor |
Comprova a identidade do servidor e é validado pelo cliente para garantir que seja confiável. Para mais informações, consulte What is an SSL certificate? |
Sim |
Sim |
|
Certificado CA |
O servidor usa o certificado CA para verificar a assinatura do certificado do cliente. Se a verificação falhar, a conexão é rejeitada. |
Não |
Sim |
Um novo certificado geralmente leva de um a três minutos para entrar em vigor após ser aplicado.
Listeners QUIC exigem apenas um certificado de servidor e não suportam autenticação mútua.
Para suportar múltiplos domínios ou usar múltiplos certificados de servidor, é possível add additional certificates ao listener.
-
No assistente Configure SSL Certificate, selecione um Server Certificate.
Se nenhum certificado de servidor estiver disponível para seleção, clique em Create SSL Certificate para acessar o Certificate Management Service, onde é possível purchase ou upload um certificado de servidor.
-
Somente para listeners HTTPS: Selecione uma TLS Security Policy.
O sistema oferece múltiplas políticas predefinidas. Para personalizar as versões do protocolo TLS e os cipher suites, clique em Create TLS Security Policy e depois em Create Custom Policy. Para mais informações, consulte TLS security policies.
O ALB Extensible Edition suporta apenas a política de segurança TLS padrão
tls_cipher_policy_1_0_to_1_3e não suporta políticas de segurança TLS personalizadas. -
Somente para listeners HTTPS (Opcional): Ative Enable Mutual Authentication, depois selecione a source do certificado CA e um certificado CA.
Defina CA Certificate Source como Alibaba Cloud e selecione um certificado CA na lista suspensa CA Certificate. Se nenhum certificado CA estiver disponível, clique em Purchase CA Certificate para create a new CA certificate.
Defina CA Certificate Source como Third-party e selecione um certificado CA na lista suspensa CA Certificate. Se nenhum certificado CA estiver disponível, clique em Upload Self-signed CA Certificate para upload a self-signed CA certificate por meio do repositório de certificados.
A autenticação mútua está disponível apenas para instâncias das edições Standard e WAF-enabled. Não é suportada pelas edições Basic ou Extensible.
Etapa 3: Selecionar server group
No assistente Select Server Group, selecione um server group, revise as informações dos servidores de backend e clique em Next.
Etapa 4: Revisão da configuração
Na página Configuration Review, confirme as configurações e clique em Submit.
Quick Create Listener
Acesse a página Instances no console do ALB, clique em no ID da instância de destino e, em seguida, clique em Quick Create Listener na aba Listener.
-
Na caixa de diálogo Quick Create Listener, configure os parâmetros a seguir e clique em OK.
-
Listener Protocol: Selecione HTTP, HTTPS ou QUIC.
O ALB Extensible Edition não suporta listeners QUIC.
Listener Port: Os valores válidos são de 1 a 65535. O HTTP geralmente usa a porta 80 e o HTTPS geralmente usa a porta 443.
Server Certificate (para listeners HTTPS e QUIC): Selecione um certificado de servidor. Se nenhum certificado de servidor estiver disponível, clique em Create SSL Certificate para acessar o Certificate Management Service, onde é possível purchase ou upload um certificado de servidor.
-
TLS Security Policy (somente para listeners HTTPS): Selecione uma política de segurança TLS. Para personalizar as versões do protocolo TLS e os cipher suites, clique em Create TLS Security Policy e depois em Create Custom Policy. Para mais informações, consulte TLS security policies.
O ALB Extensible Edition suporta apenas a política de segurança TLS padrão
tls_cipher_policy_1_0_to_1_3e não suporta políticas de segurança TLS personalizadas. Server Group: Selecione um tipo de server group de backend e os servidores de backend.
-
API
Use a operação CreateListener para criar um listener.
Modificar um listener
Não é possível modificar o protocolo nem a porta de um listener após sua criação. Para alterá-los, exclua o listener e crie um novo.
Console
Acesse a página Instances no console do ALB e clique em no ID da instância de destino.
-
Clique na aba Listener, localize o listener de destino e use um dos métodos a seguir para modificar suas informações básicas:
Clique em no ID do listener ou em View Details na coluna Actions. Na aba Listener Details, clique em Modify Listener na seção Basic Information.
Na coluna Actions, escolha
> Modify Listener.
Na caixa de diálogo Modify Listener, modifique o nome do listener ou as configurações avançadas e clique em Save.
API
Use a operação UpdateListenerAttribute para atualizar a configuração do listener.
Iniciar ou parar um listener
Após iniciar ou parar um listener, ele entra brevemente no estado Configuring. Durante esse período, não é possível excluir, editar ou alterar o server group do listener.
Parar um listener interrompe o tráfego. Prossiga com cautela.
Console
Acesse a página Instances no console do ALB e clique em no ID da instância de destino.
-
Clique na aba Listener, localize o listener de destino e use um dos métodos a seguir para iniciá-lo ou pará-lo:
Na coluna Actions, escolha
> Enable ou Disable. Na caixa de diálogo exibida, clique em OK.Clique em no ID do listener e, em seguida, clique em Enable ou Disable no canto superior direito da aba Listener Details.
API
Use a operação StartListener para iniciar um listener.
Use a operação StopListener para parar um listener.
Alterar o server group
Console
Acesse a página Instances no console do ALB e clique em no ID da instância de destino.
-
Clique na aba Listener, localize o listener de destino e use um dos métodos a seguir para alterar o server group:
Na coluna Actions, escolha
> Change Server Group (Default Forwarding Rule).Clique em no ID do listener. Na seção Server Group (Default Forwarding Rule) da aba Listener Details, clique em Change Server Group (Default Forwarding Rule).
Na caixa de diálogo exibida, selecione o server group que deseja usar ou clique em Create Server Group na lista suspensa para create a new server group e selecioná-lo. Em seguida, clique em Save.
API
Use a operação UpdateListenerAttribute para atualizar a configuração do listener, incluindo a alteração do server group.
Gerenciar certificados
Console
Acesse a página Instances no console do ALB e clique em no ID da instância de destino. Na aba Listener, localize o listener HTTPS ou QUIC de destino e clique em Manage Certificates na coluna Actions.
Na página Certificates, é possível substituir o certificado de servidor, adicionar ou remover certificados adicionais, entre outras operações. Para detalhes sobre cada operação, consulte Manage certificates.
API
Use a operação UpdateListenerAttribute para atualizar a configuração de certificados do listener.
Use a operação AssociateAdditionalCertificatesWithListener para adicionar certificados adicionais a um listener.
Use a operação DissociateAdditionalCertificatesFromListener para remover certificados adicionais de um listener.
Modificar a política de segurança TLS (somente para listeners HTTPS)
Console
Na aba Listener Details, localize a seção SSL Certificate e clique no ícone
à direita de TLS Security Policy.-
Na caixa de diálogo Modify TLS Security Policy exibida, selecione uma política de segurança TLS e clique em Save.
O sistema oferece múltiplas políticas predefinidas. Para personalizar as versões do protocolo TLS e os cipher suites, clique em Create TLS Security Policy e depois em Create Custom Policy. Para mais informações, consulte TLS security policies.
O ALB Extensible Edition suporta apenas a política de segurança TLS padrão
tls_cipher_policy_1_0_to_1_3e não suporta políticas de segurança TLS personalizadas.
API
Chame UpdateListenerAttribute para atualizar a configuração do listener e use o parâmetro SecurityPolicyId para especificar a política de segurança TLS.
Gerenciar rastreamento distribuído
O rastreamento distribuído é compatível apenas com instâncias ALB das edições Standard e WAF-enabled. As edições Basic e Extensible não oferecem suporte a esse recurso. Para uma descrição detalhada e instruções sobre como ativar o rastreamento distribuído, consulte Analyze end-to-end requests by using ALB distributed tracing.
Após ativar o rastreamento distribuído, serão cobradas taxas pelo Managed Service for OpenTelemetry e pelo Log Service.
Excluir um listener
Console
Acesse a página Instances no ALB console, clique em o ID da instância de destino. Na aba Listener, localize o listener desejado e escolha
> Delete na coluna Actions.Na caixa de diálogo exibida, clique em OK.
API
Use a operação DeleteListener para excluir um listener.
Faturamento
Os listeners não são cobrados separadamente. No entanto, o tráfego e as configurações de regras de encaminhamento influenciam as cobranças de LCU. Para as regras de faturamento de instâncias ALB, consulte ALB billing.
Cotas
|
Nome da cota |
Descrição |
Padrão |
Máximo |
Ajustável |
|
alb_quota_loadbalancer_listeners_num_basic_edition |
O número máximo de listeners que podem ser adicionados a uma instância ALB da edição Basic |
50 |
80 |
|
|
alb_quota_loadbalancer_listeners_num_standard_edition |
O número máximo de listeners que podem ser adicionados a uma instância ALB da edição Standard |
50 |
100 |
|
|
alb_quota_loadbalancer_listeners_num_standardwithwaf_edition |
O número máximo de listeners que podem ser adicionados a uma instância ALB da edição WAF-enabled |
50 |
100 |
|
|
alb_quota_max_idle_timeout |
O tempo máximo de inatividade configurável para um listener |
600 segundos |
3.600 segundos |
|
|
alb_quota_max_request_timeout |
O tempo máximo de requisição configurável para um listener |
600 segundos |
3.600 segundos |
Apenas ALB upgraded instances oferecem suporte ao aumento das cotasalb_quota_max_request_timeoutealb_quota_max_idle_timeoutpara até 3.600 segundos. Instâncias que não foram atualizadas suportam no máximo 900 segundos.
FAQ
Erro 502 Bad Gateway causado por incompatibilidade de protocolo no backend
Quando um listener ALB retorna um erro 502 Bad Gateway, o protocolo de backend do server group pode não corresponder ao protocolo efetivamente utilizado pelo serviço de backend. Por exemplo, se o protocolo de backend do server group estiver definido como HTTPS, mas o serviço de backend operar com HTTP, o ALB encaminhará as requisições via HTTPS, o handshake SSL falhará e um erro 502 será retornado.
Após confirmar o protocolo real do serviço de backend, altere o server group vinculado ao listener ou ao forwarding rule para um que utilize o protocolo de backend correto. Se nenhum server group usar um protocolo compatível, create um antes.