Modernización del plano de control administrado

Descripción general

Google actualizará gradualmente las flotas existentes que usaban la implementación del plano de control administrado por ISTIOD para usar la implementación de TRAFFIC_DIRECTOR. De forma predeterminada, Google migrará automáticamente tus flotas, pero puedes optar por realizar la migración por tu cuenta. Para verificar qué plano de control usa tu flota, consulta Cómo verificar la implementación del plano de control.

Ten en cuenta lo siguiente cuando prepares tu flota para la modernización:

  1. Para prepararte para la modernización, tienes dos maneras de controlar el proceso:

    • Migración automática impulsada por Google (predeterminada): Puedes personalizar el orden en que se modernizan tus clústeres con las instrucciones que se indican en Modernización impulsada por Google.

    • Migración impulsada por el cliente (opcional): Puedes optar por dirigir la modernización de tus flotas por tu cuenta. Para ello, etiquétalas según las instrucciones que se indican en Migración impulsada por el cliente.

  2. La modernización impulsada por Google es la opción predeterminada. Con esta opción, Google determina cuándo tus flotas están listas para la modernización. Google programa la modernización de tus flotas y te notifica antes de iniciar el proceso.

  3. La modernización de un clúster reiniciará las cargas de trabajo que tengan proxies. Esto no debería causar tiempo de inactividad si sigues las prácticas recomendadas de Kubernetes. Además, Google activará la modernización durante un período de mantenimiento, si configuraste uno. Una vez iniciado, se ejecuta hasta completarse con 6 días adicionales de tiempo de prueba antes de marcarse como finalizado. Si la supervisión detecta problemas, puedes solicitar una reversión.

  4. En el caso de la modernización impulsada por el cliente, Google te notifica cuando tus flotas están preparadas para la modernización. Luego, puedes elegir cuándo activar la modernización, clúster por clúster. Una vez que se complete, marcarás cada modernización de flota como completa.

  5. Una vez que se moderniza una flota, Google quita todos los componentes basados en Istiod.

  6. La implementación del plano de control TRAFFIC_DIRECTOR requiere que tu clúster esté registrado en una flota con la función de malla habilitada. Si te integraste con herramientas heredadas, Google registrará automáticamente tu clúster en la flota de su proyecto con la API de gkehub.googleapis.com Membership. Si tienes alguna automatización que cancele el registro de un clúster, debes quitarla antes de la modernización.

Modernización impulsada por Google

Esta opción es la predeterminada si no etiquetas tus flotas para la modernización impulsada por el cliente. Google supervisará tus flotas para determinar cuándo estarán listas para modernizarse de forma segura. Cuando todas las flotas habilitadas para malla de tu organización estén listas, se programará la modernización de tu organización.

Varias flotas

Si tu organización tiene varias flotas con Cloud Service Mesh administrado, puedes controlar el orden en que Google moderniza tus flotas configurando una etiqueta de proyecto de mesh-modernization-order en uno de los valores: early, default, late. Google completará la modernización de cada grupo antes de comenzar la modernización de cualquier flota en el siguiente grupo. Las flotas para las que elegiste la modernización impulsada por el cliente no se considerarán en este ordenamiento.

Usa el siguiente comando para configurar la etiqueta mesh-modernization-order de una flota:

gcloud alpha projects update FLEET_PROJECT_ID --update-labels="mesh-modernization-order=VALUE"

Para obtener instrucciones sobre cómo configurar etiquetas de proyectos con Console o REST, consulta el documento sobre cómo crear y administrar etiquetas.

Si no usas Google Cloud organizaciones, tus flotas se programarán y modernizarán de forma independiente, y no podrás controlar el orden.

Mallas de varios clústeres

Si una flota tiene varios clústeres que usan Cloud Service Mesh administrado, puedes controlar el orden en que Google moderniza los clústeres configurando la etiqueta de clúster de mesh-modernization-order en uno de los siguientes valores: early, default o late. Google comenzará la modernización de cada grupo y esperará a que se completen los pasos de modernización automatizados antes de comenzar la modernización de cualquier clúster en el siguiente grupo. Ten en cuenta que este orden solo se aplicará dentro de una flota y no afectará a otras flotas de tu organización que puedan modernizarse en paralelo.

Usa el siguiente comando para establecer la etiqueta mesh-modernization-order para un clúster:

gcloud container clusters update CLUSTER_NAME \
  --location LOCATION \
  --update-labels="mesh-modernization-order=VALUE"

Notificaciones y programación

En esta sección, se describe cómo recibirás una notificación sobre la próxima modernización de tus flotas y clústeres.

Notificación de que pronto se programará la modernización

En primer lugar, recibirás una notificación cuando se seleccionen tus flotas para que se lleve a cabo la modernización impulsada por Google en las próximas semanas.

Esta notificación se enviará antes del primer día hábil de EE.UU. de un mes. La fecha de inicio más temprana posible de la modernización del clúster es 14 días después del primer día hábil de un mes en EE.UU., y Google hará todo lo posible para comenzar la primera modernización del clúster de tu organización a fines del próximo mes calendario. Por ejemplo, las notificaciones estarán disponibles antes del 1 de abril de 2025, las modernizaciones de clústeres pueden comenzar a partir del 15 de abril de 2025 y tu primera modernización de clústeres debe comenzar antes del 31 de mayo de 2025.

Recibirás una notificación simultánea para cada una de las flotas de tu organización (excepto aquellas para las que elegiste la modernización impulsada por el cliente).

Esta notificación está disponible en las condiciones de estado de las funciones a nivel de la flota. Usa el siguiente comando de Google Cloud CLI para verificar la notificación:

gcloud alpha container fleet mesh describe --project $FLEET_PROJ

Una vez que se programe la flota, verás una condición con code: MODERNIZATION_WILL_BE_SCHEDULED y details similar a la siguiente:

state:
  servicemesh:
    conditions:
      - code: MODERNIZATION_WILL_BE_SCHEDULED
        details: We will soon schedule clusters in this fleet to be modernized to use the TRAFFIC_DIRECTOR
          control plane implementation. Please confirm your fleet and cluster preferences prior to
          scheduling. Cluster modernization dates will be on or after 2025-03-17.
        documentation_link: ...
        severity: INFO

Notificación a nivel del clúster de que se programó la modernización

Recibirás una notificación, a nivel del clúster, de la fecha de inicio estimada para la modernización de ese clúster impulsada por Google, al menos 1 día antes de que comience la modernización.

Después de la notificación a nivel de la flota, esto te brinda un cronograma mucho más preciso de la modernización de clústeres individuales.

Las notificaciones están disponibles en las condiciones de estado de la función a nivel del clúster. Usa el siguiente comando de Google Cloud CLI para verificar la notificación:

gcloud container hub mesh describe --project=PROJECT_ID

Verás resultados similares a los siguientes:

membershipStates:
  projects/656460026795/locations/us-central1/memberships/cluster:
    servicemesh:
      conditions:
      - code: MODERNIZATION_SCHEDULED
        details: This cluster has been scheduled for modernization on or after 2025-03-17.
        documentationLink: ...
        severity: INFO

Modernización activa para la migración impulsada por Google

En esta sección, se describen los pasos de la modernización impulsada por Google.

Modernización de flotas

Google activará la modernización activa de cada una de las flotas de tu organización. Esto significa que, para cada flota, se ejecutan los siguientes pasos:

  1. Moderniza todos los clústeres con mesh-modernization-order de early.
  2. Moderniza todos los clústeres con mesh-modernization-order de default o no especificado.
  3. Moderniza todos los clústeres con mesh-modernization-order de late.
  4. Espera a que la modernización de cada clúster se marque como finalizada. Esto significa que debes esperar al menos 6 días hábiles después de reiniciar el último pod en cualquier clúster de esta flota.
  5. Finaliza la modernización de esta flota y, finalmente, quita los componentes basados en Istio.

Moderniza un clúster

Durante la modernización activa de un clúster, ambas implementaciones del plano de control se ejecutan temporalmente en paralelo y, de forma segura y controlada, se procesan las siguientes tareas:

  1. Habilita la nueva implementación del plano de control. Si configuraste períodos de mantenimiento para tu clúster y usas la modernización impulsada por Google, este paso comenzará durante un período de mantenimiento y continuará hasta completarse.
  2. Traslada el tráfico a la nueva implementación del plano de control. Si configuraste períodos de mantenimiento para tu clúster y usas la modernización impulsada por Google, este paso comenzará durante un período de mantenimiento y continuará hasta completarse.
    • Se reinician los Pods administrados por la implementación de Kubernetes que tienen proxies de Cloud Service Mesh para que se vuelvan a conectar al nuevo plano de control.
    • Los pods se reinician en oleadas cada vez más grandes con tiempo de inactividad después de cada oleada para la supervisión.
  3. Se debe esperar al menos 6 días hábiles de tiempo de absorción antes de que la modernización de un clúster se marque como finalizada.

Usa el siguiente comando de Google Cloud CLI para verificar el estado de la modernización activa:

gcloud container fleet mesh describe --project FLEET_PROJECT_ID

Verás una condición como una de las siguientes en el campo membershipStates por clúster:

...
membershipStates:
  projects/FLEET_PROJ/locations/us-central1/memberships/MEMBERSHIP:
    servicemesh:
      conditions:
      - code: MODERNIZATION_IN_PROGRESS
        details: ...
        documentationLink: ...
        severity: INFO
...
      # If you see this, see instructions provided in the details and documentationLink fields.
      - code: MODERNIZATION_ACTION_REQUIRED
        details: [details about required actions]
        documentationLink: [link to documentation for required actions]
        severity: WARNING
...
      - code: MODERNIZATION_COMPLETED
        details: ...
        documentationLink: ...
        severity: INFO

Modernización centrada en el cliente

Puedes controlar el momento exacto de la modernización a nivel de la flota. Para ello, aplica una etiqueta en el proyecto host de la flota con el siguiente comando:

gcloud alpha projects update FLEET_PROJECT_ID \
  --update-labels="mesh-modernization-mode=manual"

Ten en cuenta que si tu Google Cloud organización tiene varias flotas, las que no estén etiquetadas se programarán para la modernización impulsada por Google.

Una vez que tu flota sea apta para modernizarse, recibirás una notificación en el estado de la función a nivel de la flota. Debes activar la modernización en un plazo de 3 meses a partir de la recepción de esta notificación.

Esta documentación se actualizará para incluir detalles sobre cómo activar la modernización manualmente. Suscríbete al feed de notas de la versión de Cloud Service Mesh para recibir notificaciones.