Cria uma regra de roteamento.
Experimente agora
Testar
Autorização RAM
|
Ação |
Nível de acesso |
Tipo de recurso |
Chave de condição |
Ação dependente |
|
sae:CreateIngress |
create |
*All Resource
|
Nenhuma | Nenhuma |
Sintaxe da solicitação
POST /pop/v1/sam/ingress/Ingress HTTP/1.1
Parâmetros da solicitação
|
Parâmetro |
Tipo |
Obrigatório |
Descrição |
Exemplo |
| NamespaceId |
string |
Sim |
O ID do namespace no qual o aplicativo está localizado. Não há suporte para aplicativos entre namespaces. |
cn-beijing:sae-test |
| Description |
string |
Não |
O nome da regra de roteamento. |
ingress-for-sae-test |
| SlbId |
string |
Não |
O ID da instância do Server Load Balancer (SLB) associada à regra de roteamento. Nota
O Server Load Balancer (SLB) inclui instâncias do Classic Load Balancer (CLB) e do Application Load Balancer (ALB). |
lb-uf6hucc7inlqrtcq5**** |
| ListenerPort |
integer |
Sim |
A porta do listener da instância do SLB. Esta porta deve estar disponível. |
80 |
| CertId |
string |
Não |
O ID do certificado do CLB.
Para obter mais informações sobre como usar IDs de certificado SSL para CLB, consulte Gerenciar certificados (CLB). |
188077086902****_176993d****_181437****_108724**** |
| CertIds |
string |
Não |
Os IDs dos certificados do ALB.
|
87***35-cn-hangzhou,812***3-cn-hangzhou |
| DefaultRule |
string |
Sim |
A regra de encaminhamento padrão. As solicitações que não correspondem a nenhuma regra de encaminhamento no parâmetro Rules são encaminhadas para o aplicativo especificado nesta regra. O valor é uma string JSON com os seguintes parâmetros:
Nota
Esta regra serve como uma captura geral para o tráfego que não é tratado por outras regras de encaminhamento específicas. |
{"appId":"395b60e4-0550-458d-9c54-a265d036****","containerPort":8080} |
| Rules |
string |
Sim |
As regras de encaminhamento. Essas regras roteiam o tráfego para um aplicativo especificado com base no nome de domínio e no caminho. O valor é uma string JSON. Cada regra contém os seguintes parâmetros:
Nota
Somente o ALB suporta reescrita de caminho (RewritePath). O CLB não suporta este recurso. |
[{"appId":"395b60e4-0550-458d-9c54-a265d036****","containerPort":8080,"domain":"www.sae.site","path":"/path1"},{"appId":"666403ce-d25b-47cf-87fe-497565d2****","containerPort":8080,"domain":"sae.site","path":"/sys/(.*)/(.*)/aaa","backendProtocol":"http"}] |
| LoadBalanceType |
string |
Não |
O tipo da instância do Server Load Balancer (SLB). Este parâmetro não pode ser alterado após a criação da regra de roteamento. Valores válidos:
|
clb |
| ListenerProtocol |
string |
Não |
O protocolo de encaminhamento de solicitações. Valores válidos:
|
HTTP |
| SecurityPolicyId |
string |
Não |
O ID da instância da política de segurança. |
sp-bp1bpn0kn9**** |
| RequestTimeout |
integer |
Não |
O tempo limite da solicitação, em segundos. Valores válidos: 1 a 180. Se um servidor de back-end não responder dentro do período de tempo limite, o load balancer para de esperar e retorna um erro HTTP 504 ao cliente. |
3 |
| IdleTimeout |
integer |
Não |
O tempo limite de ociosidade da conexão, em segundos. Valores válidos: 1 a 60. Se nenhuma solicitação for recebida dentro do período de tempo limite, o load balancer fecha temporariamente a conexão. A conexão é restabelecida quando a próxima solicitação é recebida. |
15 |
| EnableXForwardedFor |
boolean |
Não |
Especifica se deve usar o cabeçalho X-Forwarded-For para recuperar o endereço IP do cliente. |
true |
| EnableXForwardedForClientSrcPort |
boolean |
Não |
Especifica se deve usar o cabeçalho X-Forwarded-Port para recuperar a porta de origem do cliente. |
true |
| EnableXForwardedForProto |
boolean |
Não |
Especifica se deve usar o cabeçalho X-Forwarded-Proto para recuperar o protocolo do listener da instância do load balancer. |
true |
| EnableXForwardedForSlbId |
boolean |
Não |
Especifica se deve usar o cabeçalho SLB-ID para recuperar o ID da instância do load balancer. |
true |
| EnableXForwardedForSlbPort |
boolean |
Não |
Especifica se deve usar o cabeçalho X-Forwarded-Port para recuperar a porta do listener da instância do load balancer. |
true |
| AddressType |
string |
Não |
O tipo de endereço. Valores válidos:
|
Internet |
| LoadBalancerEdition |
string |
Não |
A edição da instância do Application Load Balancer (ALB). Diferentes edições possuem diferentes recursos e políticas de cobrança. Valores válidos:
|
Standard |
| ZoneMappings |
string |
Não |
Uma string JSON que contém os mapeamentos entre zonas de disponibilidade e VSwitches. Se a região atual suportar duas ou mais zonas de disponibilidade, você deve especificar pelo menos duas. Um ZoneMapping consiste nos seguintes parâmetros:
|
[{"VSwitchId":"vsw-wz9klui6icc08p6******","ZoneId":"cn-shenzhen-c"},{"VSwitchId":"vsw-wz9frrmoeuki2wp******","ZoneId":"cn-shenzhen-e"}] |
| CorsConfig |
string |
Não |
Especifica a configuração de Cross-Origin Resource Sharing (CORS). |
{"Enable":"true"} |
| EnableGzip |
boolean |
Não |
Especifica se deve ativar o Gzip para compactação de dados. |
true |
Elementos de resposta
|
Elemento |
Tipo |
Descrição |
Exemplo |
|
object |
Os dados retornados. |
||
| RequestId |
string |
O ID da solicitação. |
91F93257-7A4A-4BD3-9A7E-2F6EAE6D**** |
| Message |
string |
A mensagem retornada.
|
success |
| TraceId |
string |
O ID de rastreamento usado para consultar os detalhes da solicitação. |
0a98a02315955564772843261e**** |
| Data |
object |
Os resultados retornados. |
|
| IngressId |
integer |
O ID da regra de roteamento. |
87 |
| ErrorCode |
string |
O código de erro.
|
|
| Code |
string |
O código de status HTTP. Valores válidos:
|
200 |
| Success |
boolean |
Indica se a regra de roteamento foi criada. Valores válidos:
|
true |
Exemplos
Resposta de sucesso
JSON formato
{
"RequestId": "91F93257-7A4A-4BD3-9A7E-2F6EAE6D****",
"Message": "success",
"TraceId": "0a98a02315955564772843261e****",
"Data": {
"IngressId": 87
},
"ErrorCode": "",
"Code": "200",
"Success": true
}
Códigos de erro
|
Código de status HTTP |
Código de erro |
Mensagem de erro |
Descrição |
|---|---|---|---|
| 400 | InvalidParameter.NotEmpty | You must specify the parameter %s. | |
| 400 | InvalidParameter.Obviously | The specified parameter is invalid {%s}. | |
| 400 | InvalidParameter.WithMessage | The parameter is invalid {%s}: %s | |
| 400 | Slb.NotFound | The SLB instance does not exist: slbId [%s] | |
| 400 | Exceed.IngressRule | The number of Ingress related rules must be less than or equal to 40. | |
| 400 | SlbListenerPort.NotAvailable | The SLB listening port is unavailable: slbId [%s], port [%s] | |
| 400 | SSLCert.NotFound | The specified SSL certificate cannot be found. | |
| 404 | InvalidResponse.Api | The response of API %s is empty. |
Consulte Códigos de Erro para uma lista completa.
Notas de versão
Consulte Notas de Versão para uma lista completa.