Migrar datos

En esta página se describe cómo ejecutar una migración de datos que copie archivos de la máquina local a una reclamación de volumen persistente (PVC) en el clúster de destino.

Este paso es opcional.

Personalizar la configuración de migración de datos

Cuando completes un análisis, Migrate to Containers CLI puede crear un archivo de configuración de datos llamado dataConfig.yaml en el directorio de salida del análisis especificado. Esto indica que, para completar la migración, debes migrar los datos.

También puede crear este archivo de configuración de datos manualmente para la migración de datos y proporcionar información sobre el volumen de datos o la reclamación de datos de destino.

A continuación, se muestra un ejemplo de archivo de configuración de datos:

volumes:
- deploymentPvcName: my-pvc1
  existingPvc:
    name: my-pvc1
  folders:
  - /bin
  - /opt
- deploymentPvcName: my-pvc2
  newPvc:
   spec:
    accessModes:
    - ReadWriteOnce
    resources:
      requests:
        storage: 10G
  folders:
  - /bin
  - /opt

Donde:

  • deploymentPvcName: nombre del PVC que usará Migrate to Containers en tu carga de trabajo desplegada para acceder a este volumen.

  • existingPvc:

    • name: nombre de una reclamación de volumen persistente (PVC). Define si quieres migrar volúmenes de datos a un PVC.
  • newPvc: define si quieres migrar tus volúmenes de datos a un nuevo PVC. Puedes definir tu PVC con la sintaxis estándar de especificación de PVC.

    Para obtener más información sobre la especificación de PVC de Kubernetes, consulta la documentación de Kubernetes.

  • folders: la carpeta de la que quieres migrar de la VM al PVC. Estas carpetas se copian en el PVC con la misma ruta.

Puedes editar el archivo de configuración de datos para varios casos prácticos de migración de datos, como los siguientes:

Usar un PVC ya creado

Si ya has asignado el almacenamiento para los datos migrados y tienes un PVC para almacenar tus datos, puedes migrar tus datos con un PVC.

Define un PVC en el archivo de configuración de datos dataConfig.yaml pasando el volumen en el campo existingPvc. En este caso, el archivo de configuración de datos tendría este aspecto:

volumes:
- deploymentPvcName: my-pvc
  existingPvc:
    name: my-pvc
    subpath: /subpath
  folders:
  - /bin
  - /opt

En el ejemplo anterior, la entrada existingPvc puede contener un subPath opcional para migrar datos al subruta del PVC, como se muestra.

Crear volúmenes de datos en las VMs migradas

Si no has asignado almacenamiento con antelación y quieres que se cree durante el proceso de migración, puedes pasar un campo existingPvc vacío y especificar el almacenamiento que quieres que se cree en el campo newPvc:

volumes:
- deploymentPvcName: my-pvc
  newPvc:
    spec:
      accessModes:
      - ReadWriteOnce
      resources:
        requests:
          storage: 10G
  folders:
  - /bin
  - /opt

Migrar varios PVCs con varias rutas de archivo

Puede especificar el conjunto de directorios en el campo de lista folders de cada entrada de la lista volume de cada PVC que figure en su archivo de configuración de datos dataConfig.yaml:

volumes:
- deploymentPvcName: my-pvc1
  existingPvc:
    name: my-pvc1
  folders:
  - /bin
  - /opt
- deploymentPvcName: my-pvc2
  newPvc:
   spec:
    accessModes:
    - ReadWriteOnce
    resources:
     requests:
       storage: 10G
  folders:
  - /bin
  - /opt

Las rutas que incluyas en folders en el archivo de configuración de datos se copiarán en las mismas rutas de los PVCs de destino.

Ejecutar la migración de datos

Una vez que hayas personalizado el archivo de configuración de datos dataConfig.yaml, ejecuta el siguiente comando para migrar los volúmenes de datos a un PVC en el clúster de destino:

./m2c migrate-data  -i ANALYSIS_OUTPUT_PATH -n NAMESPACE

Haz los cambios siguientes:

  • ANALYSIS_OUTPUT_PATH: la ruta donde has guardado el resultado del análisis que contiene el archivo dataConfig.yaml
  • NAMESPACE: el espacio de nombres del clúster de Kubernetes de destino de la red desplegada

Siguientes pasos