Los pods de ECI admiten tanto IPv4 como IPv6. Para asignar una dirección IPv6 a un pod, agregue anotaciones a los metadatos del pod al crearlo.
Requisitos previos
Antes de empezar, asegúrese de cumplir con lo a continuación:
Habilitar los bloques CIDR IPv6 en la red virtual privada (VPC) donde reside el pod. Consulte Enable IPv6 for a VPC.
Habilitar los bloques CIDR IPv6 en el vSwitch al que se conecta el pod. Consulte Enable IPv6 for a vSwitch.
Limitaciones
Una dirección IPv6 por pod: solo se puede asignar una dirección IPv6 a cada pod.
Compatibilidad de tipos de instancia: todas las instancias de ECI creadas al especificar la cantidad de vCPU y el tamaño de memoria admiten IPv6. Si creó las instancias con tipos de instancia de Elastic Compute Service (ECS), confirme que el tipo seleccionado sea compatible con IPv6 antes de continuar. Consulte Descripción general of instance families.
Las anotaciones solo aplican durante la creación: las anotaciones de ECI surten efecto únicamente cuando se crea un pod. Agregar o modificar anotaciones durante una actualización no tiene ningún efecto.
Anotaciones
Agregue las anotaciones en la sección metadata de la configuración de su pod. Si utiliza un Deployment, colóquelas bajo spec.template.metadata.annotations.
|
Anotación |
Valor de ejemplo |
Obligatorio |
Descripción |
|
|
|
Sí |
Asigna una dirección IPv6 al pod. |
|
|
|
No |
Habilita el acceso a internet mediante IPv6 para el pod. |
|
|
|
No |
Establece el ancho de banda máximo de internet (Mbit/s) para la dirección IPv6. El rango válido es de 1 a 2,000 Mbit/s (pago por ancho de banda) o de 1 a 1,000 Mbit/s (pago por tráfico). Si se omite, el ancho de banda toma de forma predeterminada el valor máximo que admite la puerta de enlace IPv6. |
Asignar una dirección IPv6
-
Agregue la anotación obligatoria a la configuración de su pod. A continuación se muestra un ejemplo que crea un Deployment con IPv6 habilitado y acceso a internet configurado a 100 Mbit/s.
apiVersion: apps/v1 kind: Deployment metadata: name: test labels: app: test spec: replicas: 2 selector: matchLabels: app: nginx template: metadata: name: nginx-test labels: app: nginx alibabacloud.com/eci: "true" annotations: k8s.aliyun.com/eci-enable-ipv6: "true" # Assigns an IPv6 address to the pod. k8s.aliyun.com/eci-ipv6-bandwidth-enable: "true" # Enables Internet access over IPv6. k8s.aliyun.com/eci-ipv6-bandwidth: 100M # Sets the peak Internet bandwidth. spec: containers: - name: nginx image: registry.cn-shanghai.aliyuncs.com/eci_open/nginx:1.14.2 ports: - containerPort: 80 -
Aplique la configuración.
kubectl apply -f deployment.yaml
Comprobar la dirección IPv6
Cuando el pod esté en ejecución, ejecute el siguiente comando para consultar sus detalles:
kubectl describe pod <pod-name>
Busque el campo k8s.aliyun.com/allocated-ipv6Address en la sección de anotaciones. Este campo contiene la dirección IPv6 asignada.