Migrer les données

Cette page explique comment exécuter une migration de données qui copie les fichiers de la machine locale vers une demande de volume persistant (PVC) dans le cluster cible.

Il s'agit d'une étape facultative.

Personnaliser la configuration de votre migration de données

Lorsque vous terminez une analyse, il est possible que la CLI Migrate to Containers crée un fichier de configuration de données nommé dataConfig.yaml dans le répertoire de sortie d'analyse spécifié. Cela indique que, pour terminer la migration, vous devez effectuer la migration des données.

Vous pouvez également créer manuellement ce fichier de configuration de données pour la migration de données, et fournir des informations sur votre volume de données cible ou votre revendication de données.

Voici un exemple de fichier de configuration de données :

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

Où :

  • deploymentPvcName : nom du PVC qui sera utilisé par Migrate to Containers dans votre charge de travail déployée pour accéder à ce volume.

  • existingPvc :

    • name : nom d'une demande de volume persistant existante. Indiquez si vous souhaitez migrer des volumes de données vers un PVC existant.
  • newPvc : indiquez si vous souhaitez migrer vos volumes de données vers un nouveau PVC. Vous pouvez définir votre PVC à l'aide de la spécification PVC standard.

    Pour en savoir plus sur la spécification PVC Kubernetes, consultez la documentation de Kubernetes.

  • folders : dossier que vous souhaitez migrer de la VM à un PVC. Ces dossiers sont copiés dans le PVC sur le même chemin d'accès.

Vous pouvez modifier votre fichier de configuration de données pour plusieurs cas d'utilisation de la migration de données, y compris :

Utiliser un PVC existant

Si vous avez déjà alloué le stockage de vos données migrées et que vous disposez d'un PVC pour stocker vos données, vous pouvez les migrer à l'aide d'un PVC existant.

Définissez un PVC existant dans votre fichier de configuration de données dataConfig.yaml en transmettant votre volume existant dans le champ existingPvc. Dans ce cas, votre fichier de configuration de données ressemblerait à ceci :

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

Dans l'exemple précédent, l'entrée existingPvc peut contenir une valeur subPath facultative pour migrer les données vers le sous-chemin d'un PVC, comme illustré.

Créer des volumes de données sur vos VM migrées

Si vous n'avez pas alloué d'espace de stockage à l'avance et que vous souhaitez que celui-ci soit créé pendant le processus de migration, vous pouvez transmettre un champ existingPvc vide et spécifier l'espace de stockage que vous souhaitez créer dans le champ newPvc :

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

Migrer plusieurs PVC avec plusieurs chemins de fichiers

Vous pouvez spécifier l'ensemble de répertoires sous le champ de liste folders de chaque entrée de la liste volume pour chaque PVC répertorié dans votre fichier de configuration de données 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

Les chemins d'accès que vous répertoriez sous folders dans le fichier de configuration de données sont copiés sur les mêmes chemins d'accès dans les PVC cibles.

Exécuter la migration des données

Après avoir personnalisé votre fichier de configuration de données dataConfig.yaml, pour migrer les volumes de données vers un PVC dans le cluster cible, exécutez la commande suivante :

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

Remplacez les éléments suivants :

  • ANALYSIS_OUTPUT_PATH : chemin d'accès où vous avez enregistré la sortie d'analyse contenant le fichier dataConfig.yaml.
  • NAMESPACE : espace de noms du cluster Kubernetes cible du réseau déployé.

Étapes suivantes