Todos los productos
Search
Centro de documentos

Container Service for Kubernetes:Migrate Terway EIPs to ack-extend-network-controller

Última actualización: Sep 04, 2026

La función EIP de Terway está obsoleta y ya no recibe mantenimiento. Utilice el complemento ack-extend-network-controller para gestionar las EIP. Este tema le guía en la migración de las EIP desde Terway hacia ack-extend-network-controller sin interrumpir el servicio.

Requisitos previos

Impacto

Importante

La migración no interrumpe el servicio ni afecta la información de las EIP ni las cargas de trabajo.

  • Si su clúster utiliza EIP de Terway, siga esta guía para migrar a ack-extend-network-controller.

  • Si su clúster no utiliza EIP de Terway, omita esta migración.

Descripción general de la migración

Al habilitar la migración de EIP en Terway, este crea un recurso PodEIP por cada EIP asociada a un pod. El recurso PodEIP gestiona la información de la EIP correspondiente al pod. Una vez completada la migración, ack-extend-network-controller asume la gestión de las EIP.

Para habilitar la función de EIP en Terway, consulte Automatic EIP assignment use cases.

Procedimiento

  1. Compruebe que ack-extend-network-controller no esté instalado en su clúster. Si lo está, desinstálelo.

    1. Inicie sesión en la consola de ACK. En el panel de navegación izquierdo, haga clic en Clusters.

    2. En la página Clusters, haga clic en el nombre de su clúster. En el panel de navegación izquierdo, haga clic en Applications > Helm.

    3. En la página Helm, busque el Release Name ack-extend-network-controller. Si existe, haga clic en Delete en la columna Actions para desinstalarlo.

  2. Actualice el plugin de red Terway a la versión v1.6.0 o posterior.

    Consulte Manage components.

  3. Modifique el ConfigMap de Terway para habilitar la migración de EIP.

    Importante

    Al habilitar la migración de EIP, Terway crea un recurso PodEIP por cada EIP asociada a un pod y deja de gestionar las EIP.

    1. Edite el ConfigMap de Terway:

      kubectl edit cm eni-config -n kube-system
    2. Modifique la configuración en eni_conf.

      Parámetro

      Valor

      Descripción

      enable_eip_pool

      "true"

      Si no se configura o se establece en "false", la función eip no se habilita y no se requiere migración.

      enable_eip_migrate

      true

      Establezca este valor en true para habilitar la migración.

      Ejemplo de configuración. No modifique otros parámetros.

      # The preceding content is omitted.
        eni_conf: |
          {
            "version": "1",
            "enable_eip_pool": "true",
            "enable_eip_migrate": true,
            "vswitch_selection_policy": "ordered"
          }
      # The following content is omitted.
    1. Después de modificar la configuración, reinicie los pods de Terway:

      kubectl delete pod -n kube-system -l app=terway-eniip

      Una vez reiniciados los pods, Terway migra automáticamente las EIP del clúster a ack-extend-network-controller.

  4. Revise el estado de la migración en los registros de Terway. La salida eip migrate finished indica que el proceso fue exitoso.

    1. Obtenga los nombres de los pods de Terway:

      kubectl get pods -n kube-system | grep terway

      La salida muestra los nombres de los pods de Terway.

    2. Consulte los registros de un pod de Terway:

      kubectl logs -n kube-system <pod_name> # Replace <pod_name> with the name of your Terway pod.

      La presencia de eip migrate finished en la salida confirma que la migración se completó.

      Ds:[sg-2ze360hfgjtsemo2wyyj] InstanceID:i-2zed                              5 VSwitchSelectionPolic
      I1013 03:44:40.082505 daemon.go:1596] subSys=network-service eip migrate finished
  5. Compruebe que se hayan creado los recursos personalizados (CR) PodEIP en el clúster.

    Consulte un CR migrado. Cada CR comparte el nombre y el namespace de su pod correspondiente.

    kubectl get podeip -n {namespace} {name} # Replace {namespace} and {name} with the namespace and name of the pod associated with an EIP.
  6. Instale ack-extend-network-controller desde el Marketplace y habilite la función de EIP. Consulte Install ack-extend-network-controller from the Marketplace.

  7. Verifique si se actualizó el estado del recurso PodEIP:

    kubectl get podeip -n {namespace} {name} -o yaml # Replace {namespace} and {name} with the namespace and name of the pod associated with an EIP.
    • Un campo status con contenido indica que la función de EIP opera correctamente.

    • Un campo status vacío indica un problema. Revise la configuración y los registros de ack-extend-network-controller.

    Ejemplo de salida:

    Ejemplo de salida de PodEIP

    apiVersion: alibabacloud.com/v1beta1
    kind: PodEIP
    metadata:
      creationTimestamp: "2023-10-24T08:24:37Z"
      finalizers:
      - podeip-controller.alibabacloud.com/finalizer
      generation: 1
      name: example-xxx-xx
      namespace: default
      resourceVersion: "44013"
      uid: 4744a7af-***-***-ad06-***17aecce
    spec:
      allocationID: eip-xxxxxx
      allocationType:
        releaseStrategy: Follow
        type: Auto
    status:
      eipAddress: 47.XX.XX.XX
      internetChargeType: PayByTraffic
      isp: BGP
      networkInterfaceID: eni-xxxxxxx
      podLastSeen: "2023-10-24T08:31:22Z"
      privateIPAddress: 192.XX.XX.XX
      resourceGroupID: rg-xxxxxx
      status: InUse

    Parámetros:

    Parámetro

    Descripción

    spec.allocationType.type

    • Static: El pod utiliza un ID de EIP específico.

    • Auto: Terway crea la EIP automáticamente.

    spec.allocationType.releaseStrategy

    • Follow: La EIP se libera cuando se elimina el pod. En cargas de trabajo sin estado, no se mantiene la asociación entre la EIP y el pod.

    • TTL: La EIP se libera después de una duración especificada. Utilice esta opción para mantener la asociación entre la EIP y el pod en cargas de trabajo con estado.

  8. Para deshabilitar la función de EIP en Terway:

    1. Establezca enable_eip_migrate en false o elimínelo.

    2. Establezca enable_eip_pool en "false" o elimínelo.

    3. Reinicie los pods de Terway.