Migra e implementa aplicaciones en clústeres de GKE Autopilot

A fin de implementar las cargas de trabajo de contenedores migradas en clústeres de GKE Autopilot, usa el mismo procedimiento para migrar las cargas de trabajo que usas en la arquitectura existente. Los únicos cambios son los siguientes:

  • Debes configurar v2kServiceManager como true en el plan de migración antes de generar los artefactos del contenedor.

  • Debes revisar el nuevo archivo services-config.yaml y realizar las modificaciones en los servicios de inicialización. Consulta Usa services-config.yaml.

Para realizar una migración, sigue estos pasos:

  1. Instala la versión 1.15.0 de Migrate to Containers.

  2. Agrega una fuente de migración y crea una migración como lo haces hoy con el entorno de ejecución existente.

  3. Personaliza tu plan de migración según sea necesario.

    1. Descarga el plan de migración. AppXGenerateArtifactsFlow representa el plan de migración.

      Por ejemplo, en una migración llamada “my-migration”, haz lo siguiente:

      migctl migration get my-migration
    2. Edita el plan de migración descargado, my-migration.yaml, en un editor de texto.

    3. Verifica el administrador de servicios mejorado de Linux. La marca v2kServiceManager se configura como true de forma predeterminada. Sin embargo, si Migrate to Containers detecta un servicio del sistema que no es compatible con el administrador de servicios, recibirás una alerta y la marca v2kServiceManager se establecerá en false. Cuando la marca es false, la migración usará un entorno de ejecución heredado que admita el servicio.

      La siguiente alerta se proporciona junto con el servicio no compatible:

      Service is not supported by v2k service manager, therefore legacy runtime
      will be used instead of v2k service manager, and migrated workload would
      not fit running on Autopilot clusters of Cloudrun.

      Cuando se encuentra un servicio no compatible, también puedes configurar de forma manual la marca como true. En esta instancia, puedes optar por mantener el servicio no compatible en la imagen generada en la que no se ejecuta o puedes excluir el servicio si lo quitas del plan de migración.

      Para habilitar el administrador de servicios nuevo, restablece la marca a true:

      v2kServiceManager: true
      
    4. Realiza cualquier otra personalización necesaria para la migración, como se describe en Personaliza el plan de migración.

    5. Cuando tus ediciones estén completas, guarda el archivo editado.

    6. Sube el plan de migración editado:

      migctl migration update my-migration --main-config my-migration.yaml
  4. Genera y revisa los artefactos de migración como lo haces ahora con el entorno de ejecución existente.

  5. Edita el archivo services-config.yaml nuevo para configurar las propiedades de inicialización del contenedor. Guarda el archivo y vuelve a compilar tu imagen de contenedor para aplicar los cambios.

    Consulta Usa services-config.yaml para obtener más información.

  6. Implementa el contenedor en un clúster de GKE Autopilot mediante kubectl:

    kubectl apply -f deployment_spec.yaml

Ejemplo: Implementa el contenedor de la guía de inicio rápido en un clúster de Autopilot

Usa la guía de guía de inicio rápido actual para migrar un contenedor que contiene un servidor web simple y, luego, implementarlo en un clúster de Autopilot. Los únicos cambios que debes realizar en el proceso de inicio rápido son los siguientes:

  1. En el paso 3 de Migra la VM, en el que revisas el plan de migración, configura v2kServiceManager como true en el plan de migración y, luego, guarda el plan:

     
    v2kServiceManager: true
    
  2. En la sección Implementa la carga de trabajo migrada, crea y conéctate a un clúster de Autopilot de GKE antes de implementar el contenedor:

    1. Crea un clúster de GKE Autopilot:

      gcloud container clusters create-auto "CLUSTER_NAME"
      --project "PROJECT_NAME"  --region "REGION" --release-channel "regular"
      --subnetwork "projects/PROJECT_NAME/regions/us-central1/subnetworks/default"
    2. Conéctese al clúster:

      gcloud container clusters get-credentials CLUSTER_NAME 
        --zone REGION --project PROJECT_NAME 
      
    3. Implementa el contenedor como se describe en la sección Implementa la carga de trabajo migrada.

Cambios en la CRD de AppXGenerateArtifactsFlow

Si usas archivos CRD para controlar la migración, edita la CRD de AppXGenerateArtifactsFlow a fin de establecer v2kServiceManager en true. Consulta Personaliza un plan de migración a fin de obtener más información sobre el uso de archivos CRD para controlar la migración.

¿Qué sigue?