El proceso de migración se bloquea durante una migración a Compute Engine
Durante las migraciones de Compute Engine a Google Kubernetes Engine, es posible que Migrate to Containers no reconozca el UUID del disco de la VM de origen. Puedes añadirlo manualmente:
Carga los registros del pod con kubectl o Stackdriver.
Si ves el mensaje
[hcrunner] - Failed to find boot partition
, sigue los pasos que se indican a continuación.Busca el UUID del disco de arranque que se muestra en uno de los mensajes. Será una cadena de valores hexadecimales. En el ejemplo siguiente, el UUID es
e823158e-f290-4f91-9c3d-6f33367ae0da
.[util] - SHELL OUTPUT: {"name": "/dev/sdb1", "partflags": null, "parttype": "0x83", "uuid": "<strong>e823158e-f290-4f91-9c3d-6f33367ae0da</strong>", "fstype": "ext4"}
Elimina la carga de trabajo con su archivo YAML:
kubectl delete -f
Abre el archivo YAML en un editor de texto y busca la sección llamada
env
.Añade lo siguiente:
- name: "HC_BOOTDEVICE_UUID" value: ""
Si ves el mensaje
touch: cannot touch '/vlsdata/etc/fstab': No such file or directory
, comprueba lo siguiente:- Las cargas de trabajo de tu controlador de CSI tienen el estado OK en la consola.
- Tu carga de trabajo está en el mismo clúster que tu implementación de Migrate to Containers.
Si ves uno de los siguientes mensajes, elimina el
PersistentVolumeClaim
de la carga de trabajo que falla y vuelve a crearlo.hcutil.Error: Failed mount -o rw None /vlsdata (32) (Output:mount: /vlsdata: special device None does not exist.
[hcrunner] - [Errno 30] Read-only file system: '/vlsdata/rootdir/etc/dhcp/dhclient-up-hooks