Todos os produtos
Search
Central de documentação

Server Load Balancer:CreateListener

Última atualização: Sep 02, 2026

Cria um listener.

Descrição da operação

CreateListener é uma operação assíncrona. Após o retorno de um ID de solicitação, o listener HTTP, HTTPS ou QUIC pode ainda não ter sido criado porque o sistema ainda está processando a tarefa de criação em segundo plano. Você pode chamar GetListenerAttribute para consultar o status de criação do listener HTTP, HTTPS ou QUIC:

  • Se o listener HTTP, HTTPS ou QUIC estiver no estado Provisioning, o listener está sendo criado.

  • Se o listener HTTP, HTTPS ou QUIC estiver no estado Running, o listener foi criado.

Experimente agora

Experimente esta API no OpenAPI Explorer, sem necessidade de assinatura manual. Chamadas bem-sucedidas geram automaticamente código SDK correspondente aos seus parâmetros. Faça o download com segurança de credenciais integrada para uso local.

Testar

Autorização RAM

A tabela abaixo descreve a autorização necessária para chamar esta API. Você pode defini-la em uma política do Resource Access Management (RAM). As colunas da tabela estão detalhadas abaixo:

  • Ação: As ações que podem ser usadas no elemento Action das instruções de política de permissão do RAM para conceder permissões para executar a operação.

  • API: A API que você pode chamar para executar a ação.

  • Nível de acesso: O nível de acesso predefinido concedido para cada API. Valores válidos: create, list, get, update e delete.

  • Tipo de recurso: O tipo de recurso que suporta autorização para executar a ação. Indica se a ação suporta permissão em nível de recurso. O recurso especificado deve ser compatível com a ação. Caso contrário, a política será ineficaz.

    • Para APIs com permissões em nível de recurso, os tipos de recursos obrigatórios são marcados com um asterisco (*). Especifique o Nome de Recurso Alibaba Cloud (ARN) correspondente no elemento Resource da política.

    • Para APIs sem permissões em nível de recurso, é exibido como Todos os Recursos. Use um asterisco (*) no elemento Resource da política.

  • Chave de condição: As chaves de condição definidas pelo serviço. A chave permite controle granular, aplicando-se somente a ações ou a ações associadas a recursos específicos. Além das chaves de condição específicas do serviço, o Alibaba Cloud fornece um conjunto de chaves de condição comuns aplicáveis a todos os serviços compatíveis com RAM.

  • Ação dependente: As ações dependentes necessárias para executar a ação. Para concluir a ação, o usuário RAM ou a função RAM deve ter permissões para executar todas as ações dependentes.

Ação

Nível de acesso

Tipo de recurso

Chave de condição

Ação dependente

alb:CreateListener

create

*LoadBalancer

acs:alb:{#regionId}:{#accountId}:loadbalancer/{#loadbalancerId}

*SecurityPolicy

acs:alb:{#regionId}:{#accountId}:securitypolicy/{#securitypolicyId}

*ServerGroup

acs:alb:{#regionId}:{#accountId}:servergroup/{#servergroupId}

  • alb:ListenerProtocol
Nenhuma

Parâmetros da solicitação

Parâmetro

Tipo

Obrigatório

Descrição

Exemplo

LoadBalancerId

string

Sim

O ID da instância de Application Load Balancing (ALB).

alb-n5qw04uq8vavfe****

ClientToken

string

Não

O token de cliente usado para garantir a idempotência da solicitação.

Você pode usar o cliente para gerar o token, mas deve garantir que o token seja exclusivo entre diferentes solicitações. O token pode conter apenas caracteres ASCII.

Nota

Se você não especificar este parâmetro, o sistema usará automaticamente o RequestId da solicitação de API como o ClientToken. O RequestId pode ser diferente para cada solicitação de API.

123e4567-e89b-12d3-a456-426655440000

DryRun

boolean

Não

Especifica se deve ser realizado apenas um dry run, sem executar a solicitação real. Valores válidos:

  • true: Realiza apenas um dry run. O sistema verifica a solicitação quanto a possíveis problemas, incluindo valores de parâmetros ausentes, sintaxe de solicitação incorreta e limites de serviço. Se a solicitação falhar no dry run, um código de erro será retornado. Se a solicitação passar no dry run, o código de erro DryRunOperation será retornado.

  • false (padrão): Realiza um dry run e executa a solicitação real. Se a solicitação passar no dry run, um código de status HTTP 2xx será retornado e a operação será executada.

false

ListenerProtocol

string

Sim

O protocolo do listener.

Valores válidos: HTTP, HTTPS e QUIC.

HTTP

ListenerPort

integer

Sim

A porta de frontend usada pela instância de balanceamento de carga.

Valores válidos: 1 a 65535.

80

ListenerDescription

string

Não

O nome personalizado do listener.

O nome deve ter de 2 a 256 caracteres e pode conter letras, dígitos, hifens (-), barras (/), pontos (.) e sublinhados (_).

HTTP_80

RequestTimeout

integer

Não

O período de tempo limite da solicitação. Unidade: segundos.

Valores válidos: 1 a 600.

Valor padrão: 60.

Se nenhuma resposta for recebida do servidor backend dentro do período de tempo limite, o balanceamento de carga envia um código de erro HTTP 504 para o cliente.

Nota

Você pode enviar uma solicitação de aumento de cota para aumentar o tempo limite da solicitação para um máximo de 3600 segundos.

60

IdleTimeout

integer

Não

O período de tempo limite de conexão ociosa. Unidade: segundos.

Valores válidos: 1 a 600.

Valor padrão: 15.

Se nenhuma solicitação de acesso for recebida dentro do período de tempo limite, o balanceamento de carga interrompe temporariamente a conexão atual. Quando a próxima solicitação chegar, uma nova conexão será estabelecida.

Nota

Você pode enviar uma solicitação de aumento de cota para aumentar o tempo limite de conexão ociosa para um máximo de 3600 segundos.

3

GzipEnabled

boolean

Não

Especifica se deve ativar a compactação Gzip para compactar tipos específicos de arquivos. Valores válidos:

  • true (padrão): Ativado.

  • false: Desativado.

true

Http2Enabled

boolean

Não

Especifica se deve ativar HTTP/2. Valores válidos:

  • true (padrão): Ativado.

  • false: Desativado.

Nota

Apenas listeners HTTPS suportam este parâmetro.

true

SecurityPolicyId

string

Não

O ID da política de segurança. Políticas de segurança do sistema e políticas de segurança personalizadas são suportadas.

Valor padrão: tls_cipher_policy_1_0 (política de segurança do sistema).

Nota

Apenas listeners HTTPS suportam este parâmetro.

tls_cipher_policy_1_0

CaEnabled

boolean

Não

Especifica se deve ativar a autenticação mútua. Valores válidos:

  • true: Ativado.

  • false (padrão): Desativado.

false

XForwardedForConfig

object

Não

A configuração do campo XForward.

XForwardedForClientCertClientVerifyAlias

string

Não

O nome do cabeçalho personalizado. Este parâmetro entra em vigor apenas quando XForwardedForClientCertClientVerifyEnabled é definido como true.

O valor deve ter de 1 a 40 caracteres e pode conter letras minúsculas de a a z, hifens (-), sublinhados (_) e dígitos.

Nota

Apenas listeners HTTPS suportam este parâmetro.

test_client-verify-alias_123456

XForwardedForClientCertClientVerifyEnabled

boolean

Não

Especifica se deve usar o cabeçalho X-Forwarded-Clientcert-clientverify para obter o resultado da verificação do certificado de cliente que acessa a instância de balanceamento de carga. Valores válidos:

  • true: Ativado.

  • false (padrão): Desativado.

Nota

Apenas listeners HTTPS suportam este parâmetro.

true

XForwardedForClientCertFingerprintAlias

string

Não

O nome do cabeçalho personalizado. Este parâmetro entra em vigor apenas quando XForwardedForClientCertFingerprintEnabled é definido como true.

O valor deve ter de 1 a 40 caracteres e pode conter letras minúsculas de a a z, hifens (-), sublinhados (_) e dígitos.

Nota

Apenas listeners HTTPS suportam este parâmetro.

test_finger-print-alias_123456

XForwardedForClientCertFingerprintEnabled

boolean

Não

Especifica se deve usar o cabeçalho X-Forwarded-Clientcert-fingerprint para obter a impressão digital do certificado de cliente que acessa a instância de balanceamento de carga. Valores válidos:

  • true: Ativado.

  • false (padrão): Desativado.

Nota

Apenas listeners HTTPS suportam este parâmetro.

true

XForwardedForClientCertIssuerDNAlias

string

Não

O nome do cabeçalho personalizado. Este parâmetro entra em vigor apenas quando XForwardedForClientCertIssuerDNEnabled é definido como true.

O valor deve ter de 1 a 40 caracteres e pode conter letras minúsculas de a a z, hifens (-), sublinhados (_) e dígitos.

Nota

Apenas listeners HTTPS suportam este parâmetro.

test_issue-dn-alias_123456

XForwardedForClientCertIssuerDNEnabled

boolean

Não

Especifica se deve usar o cabeçalho X-Forwarded-Clientcert-issuerdn para obter as informações do emissor do certificado de cliente que acessa a instância de balanceamento de carga. Valores válidos:

  • true: Ativado.

  • false (padrão): Desativado.

Nota

Apenas listeners HTTPS suportam este parâmetro.

true

XForwardedForClientCertSubjectDNAlias

string

Não

O nome do cabeçalho personalizado. Este parâmetro entra em vigor apenas quando XForwardedForClientCertSubjectDNEnabled é definido como true.

O valor deve ter de 1 a 40 caracteres e pode conter letras minúsculas de a a z, hifens (-), sublinhados (_) e dígitos.

Nota

Apenas listeners HTTPS suportam este parâmetro.

test_subject-dn-alias_123456

XForwardedForClientCertSubjectDNEnabled

boolean

Não

Especifica se deve usar o cabeçalho X-Forwarded-Clientcert-subjectdn para obter as informações do proprietário do certificado de cliente que acessa a instância de balanceamento de carga. Valores válidos:

  • true: Ativado.

  • false (padrão): Desativado.

Nota

Apenas listeners HTTPS suportam este parâmetro.

true

XForwardedForClientSrcPortEnabled

boolean

Não

Especifica se deve usar o cabeçalho X-Forwarded-Client-srcport para obter a porta do cliente que acessa a instância de balanceamento de carga. Valores válidos:

  • true: Ativado.

  • false (padrão): Desativado.

Nota

Listeners HTTP e HTTPS suportam este parâmetro.

true

XForwardedForEnabled

boolean

Não

Especifica se deve usar o cabeçalho X-Forwarded-For para obter o endereço IP real do cliente. Valores válidos:

  • true (padrão): Ativado.

  • false: Desativado.

Nota
  1. Se você definir este parâmetro como true, XForwardedForProcessingMode terá como padrão append e poderá ser alterado para remove.

  2. Se você definir este parâmetro como false, o ALB manterá o cabeçalho X-Forwarded-For sem processamento adicional antes de encaminhar a solicitação ao servidor backend.

  3. Listeners HTTP e HTTPS suportam este parâmetro.

true

XForwardedForProcessingMode

string

Não

O modo de processamento do cabeçalho X-Forwarded-For. Este parâmetro entra em vigor apenas quando XForwardedForEnabled é definido como true. Valores válidos:

  • append (padrão): Adicionar.

  • remove: Remover.

Nota
  1. Se você definir este parâmetro como append, o endereço IP do último salto será adicionado ao cabeçalho X-Forwarded-For antes que a solicitação seja encaminhada ao servidor backend.

  2. Se você definir este parâmetro como remove, o cabeçalho X-Forwarded-For será removido antes que a solicitação seja encaminhada ao servidor backend, independentemente de a solicitação conter ou não o cabeçalho X-Forwarded-For.

  3. Listeners HTTP e HTTPS suportam este parâmetro.

append

XForwardedForProtoEnabled

boolean

Não

Especifica se deve usar o cabeçalho X-Forwarded-Proto para obter o protocolo do listener da instância de balanceamento de carga. Valores válidos:

  • true: Ativado.

  • false (padrão): Desativado.

Nota

Listeners HTTP, HTTPS e QUIC suportam este parâmetro.

false

XForwardedForSLBIdEnabled

boolean

Não

Especifica se deve usar o cabeçalho SLB-ID para obter o ID da instância de balanceamento de carga. Valores válidos:

  • true: Ativado.

  • false (padrão): Desativado.

Nota

Listeners HTTP, HTTPS e QUIC suportam este parâmetro.

false

XForwardedForSLBPortEnabled

boolean

Não

Especifica se deve usar o cabeçalho X-Forwarded-Port para obter a porta do listener da instância de balanceamento de carga. Valores válidos:

  • true: Ativado.

  • false (padrão): Desativado.

Nota

Listeners HTTP, HTTPS e QUIC suportam este parâmetro.

false

XForwardedForClientSourceIpsEnabled

boolean

Não

Especifica se deve permitir que o ALB procure o endereço IP real do cliente no cabeçalho X-Forwarded-For. Valores válidos:

  • true: Ativado.

  • false (padrão): Desativado.

Nota

Listeners HTTP e HTTPS suportam este parâmetro.

false

XForwardedForClientSourceIpsTrusted

string

Não

Os endereços IP de proxy confiáveis.

O Application Load Balancing (ALB) percorre o cabeçalho X-Forwarded-For da direita para a esquerda e seleciona o primeiro endereço IP que não está na lista de IPs confiáveis como o endereço IP real do cliente. Este endereço IP é usado para limitação de taxa baseada em IP de origem.

10.1.1.0/24

XForwardedForHostEnabled

boolean

Não

Especifica se deve usar o cabeçalho X-Forwarded-Host para obter o nome de domínio do cliente que acessa a instância de balanceamento de carga. Valores válidos:

  • true: Ativado.

  • false (padrão): Desativado.

Nota

Listeners HTTP, HTTPS e QUIC suportam este parâmetro.

false

QuicConfig

object

Não

A configuração do listener QUIC associado.

QuicListenerId

string

Não

O ID do listener QUIC a ser associado. Este parâmetro é válido para listeners HTTPS. Este parâmetro é obrigatório quando QuicUpgradeEnabled é definido como true.

Nota

O listener original e o listener QUIC associado devem pertencer à mesma instância ALB, e o listener QUIC não deve ter sido associado anteriormente.

lsn-o4u54y73wq7b******

QuicUpgradeEnabled

boolean

Não

Especifica se deve ativar a atualização QUIC. Valores válidos:

  • true: Ativado.

  • false (padrão): Desativado.

Nota

Apenas listeners HTTPS suportam este parâmetro.

false

Certificates

array<object>

Não

As informações da lista de certificados.

object

Não

A estrutura do certificado.

CertificateId

string

Não

O ID do certificado padrão. Apenas um certificado de servidor padrão é suportado.

Nota
  • Este parâmetro é obrigatório quando ListenerProtocol é definido como HTTPS ou QUIC.

  • Para adicionar mais certificados de servidor, chame AssociateAdditionalCertificatesWithListener para configurar certificados adicionais após a criação do listener.

103705*******

CaCertificates

array<object>

Não

A lista de certificados CA configurados para o listener. Apenas um certificado CA é suportado.

object

Não

A estrutura do certificado CA configurada para o listener.

CertificateId

string

Não

O ID do certificado CA.

Nota

Este parâmetro é obrigatório quando CaEnabled é definido como true.

123157*******

DefaultActions

array<object>

Sim

A lista de ações da regra.

array<object>

Sim

A lista de ações da regra.

ForwardGroupConfig

object

Sim

A configuração da ação de encaminhamento. Você pode adicionar até 20 configurações de ação de encaminhamento.

ServerGroupTuples

array<object>

Sim

As tuplas de grupo de servidores de destino de encaminhamento.

object

Sim

As tuplas de grupo de servidores de destino de encaminhamento.

ServerGroupId

string

Sim

O ID do grupo de servidores de destino para o qual as solicitações são encaminhadas.

sgp-8ilqs4axp6******

Type

string

Sim

O tipo de ação. Você pode adicionar até 1 tipo de ação.

Valores válidos: ForwardGroup: encaminha solicitações para vários grupos de servidores.

ForwardGroup

Tag

array<object>

Não

As tags.

object

Não

A estrutura da tag.

Key

string

Não

A chave da tag. A chave da tag pode ter até 128 caracteres de comprimento. Não pode começar com aliyun ou acs: e não pode conter http:// ou https://.

env

Value

string

Não

O valor da tag. O valor da tag pode ter até 128 caracteres de comprimento. Não pode começar com aliyun ou acs: e não pode conter http:// ou https://.

product

Elementos de resposta

Elemento

Tipo

Descrição

Exemplo

object

A resposta para a criação de um listener.

JobId

string

O ID da tarefa assíncrona.

72dcd26b-f12d-4c27-b3af-18f6aed5****

ListenerId

string

O ID do listener.

lsn-o4u54y73wq7b******

RequestId

string

O ID da solicitação.

CEF72CEB-54B6-4AE8-B225-F876*******

Exemplos

Resposta de sucesso

JSON formato

{
  "JobId": "72dcd26b-f12d-4c27-b3af-18f6aed5****",
  "ListenerId": "lsn-o4u54y73wq7b******",
  "RequestId": "CEF72CEB-54B6-4AE8-B225-F876*******"
}

Códigos de erro

Código de status HTTP

Código de erro

Mensagem de erro

Descrição

400 ResourceAlreadyExist.Listener The specified resource %s is already exist. Já existe um listener com a mesma porta.
400 IncorrectStatus.LoadBalancer The status of %s [%s] is incorrect. O status atual da instância não suporta esta operação.
400 IncorrectBusinessStatus.LoadBalancer The business status of %s [%s]  is incorrect. O status atual da instância não suporta esta operação.
400 ResourceQuotaExceeded.LoadBalancerListenersNum The quota of %s is exceeded for resource %s, usage %s/%s. A cota %s foi excedida. O recurso é %s, o uso atual é %s e a cota é %s.
400 OperationDenied.CrossLoadBalancerQUICListener The operation is not allowed because of %s. A operação foi negada porque %s.
400 ResourceAlreadyAssociated.Listener The specified resource %s is already associated. O recurso %s já está associado.
400 ResourceQuotaExceeded.SecurityPolicyAttachedNum The quota of %s is exceeded for resource %s, usage %s/%s. A cota %s foi excedida. O recurso é %s, o uso atual é %s e a cota é %s.
400 ResourceQuotaExceeded.ServerGroupAttachedNum The quota of %s is exceeded for resource %s, usage %s/%s. O número de associações do grupo de servidores excedeu o limite de cota.
400 ResourceQuotaExceeded.LoadBalancerServersNum The quota of %s is exceeded for resource %s, usage %s/%s. O número de servidores de back-end excedeu o limite de cota.
400 ResourceQuotaExceeded.ServerAddedNum The quota of %s is exceeded for resource %s, usage %s/%s. O número de servidores adicionados ao grupo de servidores excedeu o limite de cota.
400 Mismatch.VpcId The %s is mismatched for %s and %s. O %s não corresponde entre %s e %s.
400 OperationDenied.ServerGroupProtocolNotSupport The operation is not allowed because of ServerGroupProtocolNotSupport. A operação foi negada porque o protocolo do grupo de servidores não é suportado.
400 OperationDenied.GRPCServerGroup The operation is not allowed because of %s. A operação foi negada porque um listener associado a este grupo de servidores gRPC não tem o HTTP/2.0 ativado.
400 Mismatch.LoadBalancerEditionAndConnectionDrain The %s and %s are mismatched. Os parâmetros %s e %s não correspondem.
400 Mismatch.LoadBalancerEditionAndSlowStartEnable The %s and %s are mismatched. Os parâmetros %s e %s não correspondem.
400 InvalidParameter Invalid parameter, please check the parameter input. O parâmetro é inválido. Verifique a entrada do parâmetro.
400 OperationDenied.CACertificateCorrupted The CA certificate is corrupted. O certificado CA está corrompido.
403 Forbidden.SecurityPolicy Authentication has failed for SecurityPolicy. Falha na autenticação da SecurityPolicy.
403 Forbidden.LoadBalancer Authentication is failed for %s. Falha na autenticação da operação de balanceamento de carga.
403 Forbidden.Listener Authentication is failed for %s. Falha na autenticação do listener.
404 ResourceNotFound.LoadBalancer The specified resource %s is not found. O recurso %s não existe.
404 ResourceNotFound.ServerGroup The specified resource %s is not found. O grupo de servidores de back-end não existe.
404 ResourceNotFound.SecurityPolicy The specified resource %s is not found. O recurso %s não existe.
404 ResourceNotFound.Listener The specified resource %s is not found. O listener não existe.
404 ResourceNotFound.Certificate The specified resource %s is not found. O certificado especificado não existe.

Consulte Códigos de Erro para uma lista completa.

Notas de versão

Consulte Notas de Versão para uma lista completa.