Migrar y desplegar aplicaciones en clústeres de Autopilot de GKE
Para desplegar las cargas de trabajo de contenedores migradas en clústeres de Autopilot de GKE, debes seguir el mismo procedimiento que para migrar las cargas de trabajo de la arquitectura actual. Los únicos cambios son los siguientes:
Debes definir
v2kServiceManager
comotrue
en el plan de migración antes de generar los artefactos del contenedor.Debes revisar el nuevo archivo
services-config.yaml
y hacer los cambios que consideres oportunos en los servicios de inicialización. Consulta Usar services-config.yaml.
Para realizar una migración, sigue estos pasos:
Añade un origen de migración y crea una migración como haces actualmente con el tiempo de ejecución.
Personaliza el plan de migración según sea necesario.
Descarga el plan de migración. El plan de migración se representa mediante AppXGenerateArtifactsFlow.
Por ejemplo, para una migración llamada "my-migration":
migctl migration get my-migration
Abre el plan de migración descargado,
my-migration.yaml
, en un editor de texto.Verifica el gestor de servicios de Linux mejorado. La marca
v2kServiceManager
tiene el valortrue
de forma predeterminada. Sin embargo, si Migrate to Containers detecta un servicio del sistema que no es compatible con el gestor de servicios, se te avisará y la marcav2kServiceManager
se establecerá enfalse
. Cuando la marca seafalse
, la migración usará un tiempo de ejecución antiguo compatible con tu servicio.La siguiente alerta se proporciona junto con el servicio no admitido:
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.
Si se detecta un servicio no admitido, también puedes definir manualmente la marca como
true
. En este caso, puedes mantener el servicio no compatible en la imagen generada, aunque es posible que no funcione, o excluirlo quitándolo del plan de migración.Para habilitar el nuevo gestor de servicios, restablece la marca a
true
:v2kServiceManager: true
Realiza las personalizaciones necesarias para tu migración, tal como se describe en el artículo Personalizar el plan de migración.
Cuando hayas terminado de hacer los cambios, guarda el archivo editado.
Sube el plan de migración editado:
migctl migration update my-migration --main-config my-migration.yaml
Genera y revisa los artefactos de migración como haces actualmente con el tiempo de ejecución.
Edita el nuevo archivo
services-config.yaml
para configurar las propiedades de inicialización del contenedor. Guarda el archivo y vuelve a compilar la imagen del contenedor para aplicar los cambios.Para obtener más información, consulta el artículo Usar services-config.yaml.
Despliega el contenedor en un clúster de Autopilot de GKE con
kubectl
:kubectl apply -f deployment_spec.yaml
Ejemplo: desplegar el contenedor de inicio rápido en un clúster de Autopilot
Sigue la guía de inicio rápido actual para migrar un contenedor que incluya un servidor web sencillo y, después, desplegarlo en un clúster de Autopilot. Los únicos cambios que tienes que hacer en el proceso de inicio rápido son los siguientes:
En el paso 3 de Migrar la VM, donde revisas el plan de migración, define
v2kServiceManager
comotrue
en el plan de migración y, a continuación, guarda el plan:v2kServiceManager: true
En la sección Desplegar la carga de trabajo migrada, crea un clúster de Autopilot de GKE y conéctate a él antes de desplegar el contenedor:
Crea un clúster de Autopilot de GKE:
gcloud container clusters create-auto "CLUSTER_NAME" --project "PROJECT_NAME" --region "REGION" --release-channel "regular" --subnetwork "projects/PROJECT_NAME/regions/us-central1/subnetworks/default"
Conéctate al clúster:
gcloud container clusters get-credentials CLUSTER_NAME --zone REGION --project PROJECT_NAME
Despliega el contenedor tal como se describe en la sección Desplegar la carga de trabajo migrada.
Cambios en el CRD de AppXGenerateArtifactsFlow
Si vas a usar archivos CRD para controlar la migración, edita el CRD AppXGenerateArtifactsFlow para definir v2kServiceManager
como true
. Consulta Personalizar un plan de migración para obtener más información sobre el uso de archivos CRD para controlar la migración.
Siguientes pasos
- Consulta cómo desplegar contenedores en Cloud Run.