Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Centro de ayuda/
Cloud Container Engine/
Guía del usuario/
Red/
Ingresos/
Ingreso de ELB/
Configuración de la Server Name Indication (SNI) para las entradas de ELB
Actualización más reciente 2024-09-10 GMT+08:00
Configuración de la Server Name Indication (SNI) para las entradas de ELB
SNI permite que se proporcionen múltiples nombres de dominio de acceso basados en TLS para sistemas externos que utilicen la misma dirección IP y número de puerto. Diferentes nombres de dominio pueden utilizar diferentes certificados de seguridad.
- Solo se puede especificar un nombre de dominio para cada certificado de SNI. Se admiten los certificados de dominio comodín.
- La política de seguridad (kubernetes.io/elb.tls-ciphers-policy) solo se admite en clústeres de v1.17.11 o posterior.
Puede habilitar SNI cuando se cumplan las condiciones anteriores. A continuación se utiliza la creación automática de un balanceador de carga como ejemplo. En este ejemplo, sni-test-secret-1 y sni-test-secret-2 son los certificados de SNI. Los nombres de dominio especificados por los certificados deben ser los mismos que los de los certificados.
Para clústeres de v1.21 o anterior:
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
name: ingress-test
annotations:
kubernetes.io/elb.class: union
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"
}'
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: ''
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 clústeres de v1.23 o posterior:
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: ingress-test
annotations:
kubernetes.io/elb.class: union
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"
}'
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: ''
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
Tema principal: Ingreso de ELB
Comentarios
¿Le pareció útil esta página?
Deje algún comentario
Muchas gracias por sus comentarios. Seguiremos trabajando para mejorar la documentación.
El sistema está ocupado. Vuelva a intentarlo más tarde.