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 da Indicação de nome do servidor (SNI) para ingresses de ELB
Atualizado em 2024-11-28 GMT+08:00
Configuração da Indicação de nome do servidor (SNI) para ingresses de ELB
SNI permite que vários nomes de domínio de acesso baseados em TLS sejam fornecidos para sistemas externos usando o mesmo endereço IP e porta. Nomes de domínio diferentes podem usar certificados de segurança diferentes.
- Esta função é suportada apenas em clusters de v1.15.11 e posteriores
- A opção SNI está disponível somente quando HTTPS é usado.
- Apenas um nome de domínio pode ser especificado para cada certificado de SNI. Certificados de domínio curinga são suportados.
- A política de segurança (kubernetes.io/elb.tls-ciphers-policy) é suportada apenas em clusters v1.17.11 ou posterior.
Você pode ativar a SNI quando as condições anteriores forem atendidas. O exemplo a seguir usa a criação automática de um balanceador de carga como exemplo. Neste exemplo, sni-test-secret-1 e sni-test-secret-2 são certificados de SNI. Os nomes de domínio especificados pelos certificados devem ser os mesmos que os dos certificados.
Para clusters da v1.21 ou anterior:
apiVersion: networking.k8s.io/v1beta1 kind: Ingress metadata: name: ingress-test annotations: kubernetes.io/elb.class: performance kubernetes.io/ingress.class: cce kubernetes.io/elb.port: '443' kubernetes.io/elb.autocreate: '{ "type": "public", "bandwidth_name": "cce-bandwidth-******", "bandwidth_chargemode": "bandwidth", "bandwidth_size": 5, "bandwidth_sharetype": "PER", "eip_type": "5_bgp", "available_zone": [ "ap-southeast-1a" ], "elb_virsubnet_ids":["b4bf8152-6c36-4c3b-9f74-2229f8e640c9"], "l7_flavor_name": "L7_flavor.elb.s1.small" }' kubernetes.io/elb.tls-ciphers-policy: tls-1-2 spec: tls: - secretName: ingress-test-secret - hosts: - example.top # Domain name specified when a certificate is issued secretName: sni-test-secret-1 - hosts: - example.com # Domain name specified when a certificate is issued secretName: sni-test-secret-2 rules: - host: example.com http: paths: - path: '/' backend: serviceName: <your_service_name> # Replace it with the name of your target Service. servicePort: 80 property: ingress.beta.kubernetes.io/url-match-mode: STARTS_WITH
Para clusters da v1.23 ou posterior:
apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: ingress-test annotations: kubernetes.io/elb.class: performance kubernetes.io/elb.port: '443' kubernetes.io/elb.autocreate: '{ "type": "public", "bandwidth_name": "cce-bandwidth-******", "bandwidth_chargemode": "bandwidth", "bandwidth_size": 5, "bandwidth_sharetype": "PER", "eip_type": "5_bgp", "available_zone": [ "ap-southeast-1a" ], "elb_virsubnet_ids":["b4bf8152-6c36-4c3b-9f74-2229f8e640c9"], "l7_flavor_name": "L7_flavor.elb.s1.small" }' kubernetes.io/elb.tls-ciphers-policy: tls-1-2 spec: tls: - secretName: ingress-test-secret - hosts: - example.top # Domain name specified when a certificate is issued secretName: sni-test-secret-1 - hosts: - example.com # Domain name specified when a certificate is issued secretName: sni-test-secret-2 rules: - host: example.com http: paths: - path: '/' backend: service: name: <your_service_name> # Replace it with the name of your target Service. port: number: 8080 # Replace 8080 with the port number of your target Service. property: ingress.beta.kubernetes.io/url-match-mode: STARTS_WITH pathType: ImplementationSpecific ingressClassName: cce
Tópico principal: Ingresses do ELB
Feedback
Esta página foi útil?
Deixar um comentário
Obrigado por seus comentários. Estamos trabalhando para melhorar a documentação.
O sistema está ocupado. Tente novamente mais tarde.