Personnaliser le plan de migration pour les sites WordPress

Vous devez examiner le fichier de plan de migration résultant de la création d'une migration. Personnalisez le fichier avant d'exécuter la migration. Les détails de votre plan de migration sont utilisés pour extraire les artefacts de conteneur de charge de travail de la source.

Cette section décrit le contenu de la migration et les types de personnalisations que vous pouvez envisager avant d'exécuter la migration et de générer des artefacts de déploiement.

Avant de commencer

  • Vérifiez que vous avez déjà créé une migration et que vous disposez du fichier de plan de migration.

  • Si votre site WordPress repose sur une connexion à une base de données, assurez-vous que la base de données est accessible à partir du cluster cible, car Migrate to Containers ne la migre pas automatiquement.

Modifier le plan de migration

Vous pouvez modifier le plan de migration à l'aide de l'outil migctl ou de la console Google Cloud.

migctl

Vous devez télécharger le plan de migration avant de pouvoir le modifier :

  1. Téléchargez le plan de migration.

    migctl migration get my-migration
    
  2. Modifiez le plan de migration téléchargé, my-migration.yaml, dans un éditeur de texte.

  3. Une fois les modifications effectuées, enregistrez et importez le plan de migration révisé :

    migctl migration update my-migration --main-config my-migration.yaml
    
  4. Répétez ces étapes si d'autres modifications sont nécessaires.

Console

Modifiez le plan de migration dans Google Cloud Console à l'aide de l'éditeur YAML.

  1. Ouvrez la page "Migrate to Containers" dans la console Google Cloud.

    Accéder à la page "Migrate to Containers".

  2. Cliquez sur l'onglet Migrations pour afficher un tableau contenant les migrations disponibles.

  3. Sur la ligne de la migration souhaitée, sélectionnez le Nom de la migration pour ouvrir l'onglet Détails.

  4. Sélectionnez l'onglet YAML.

  5. Modifiez le plan de migration si nécessaire.

  6. Une fois les modifications terminées, vous pouvez effectuer l'une des opérations suivantes :

    1. Enregistrez le plan de migration. Vous devrez ensuite exécuter manuellement la migration pour générer les artefacts de migration. Suivez la procédure décrite dans la section Exécuter une migration.

    2. Enregistrez et générez les artefacts. Exécutez la migration en utilisant vos modifications pour générer les artefacts de migration. Le processus est le même que celui décrit dans la section Exécuter une migration.

CRD

Vous devez télécharger le plan de migration, le modifier, puis l'appliquer. Le plan de migration est stocké dans le champ appXGenerateArtifactsConfig de l'objet CRD AppXGenerateArtifactsFlowSpec :

  1. Obtenez le nom de AppXGenerateArtifactsFlow :

    kubectl get migrations.anthos-migrate.cloud.google.com -n v2k-system -o jsonpath={.status.migrationPlanRef.name} my-migration

    Le modèle de dénomination est renvoyé au format appx-generateartifactsflow-id.

  2. Récupérez le plan de migration par nom et écrivez dans un fichier nommé my-plan.yaml :

    kubectl -n v2k-system get appxgenerateartifactsflows.anthos-migrate.cloud.google.com -o jsonpath=            {.spec.appXGenerateArtifactsConfig} appx-generateartifactsflow-id > my-plan.yaml
  3. Modifiez le plan de migration si nécessaire.

  4. Appliquez le fichier :

    kubectl patch appxgenerateartifactsflows.anthos-migrate.cloud.google.com --type merge -n v2k-system --patch '{"spec": {"appXGenerateArtifactsConfig": '"$(jq -n --rawfile plan my-plan.yaml '$plan')"'}}' appx-generateartifactsflow-id

Structure du plan de migration

Le plan de migration d'une charge de travail WordPress présente la structure suivante, que vous pouvez personnaliser comme décrit dans les sections suivantes.

sites:
- # Image name. Edit this to change the artifacts naming.
  imageName: wordpress
  # Parent WordPress image for the generated container image.
  fromImage: wordpress:6.1-php7.4-apache
  # WordPress root directory.
  rootDirectory: /var/www/html/
  # Database connection values.
  databaseValues:
  - name: DB_NAME
    value: database_name_here
  - name: DB_USER
    value: username_here
  - name: DB_PASSWORD
    value: password_here
  - name: DB_HOST
    value: host_here

Pour ajouter les informations nécessaires, consultez les détails de votre plan de migration et les commentaires guidées.

Vous pouvez plus précisément envisager des modifications telles qu'elles sont décrites dans les sections suivantes.

Spécifier l'image Docker

Dans le plan de migration, générez un tag d'image de la communauté Docker basé sur la version de WordPress.

Si vous souhaitez modifier l'image de la communauté Docker ou fournir votre propre image Docker, vous pouvez modifier le tag fromImage dans votre plan de migration au format suivant :

# Parent WordPress image for the generated container image.
  fromImage: wordpress:6.1-php7.4-apache

Spécifier la configuration de la connexion à la base de données

La section databaseValues contient la configuration de connexion à la base de données extraite de la VM. Modifiez ces valeurs pour modifier la connexion à la base de données.

Ces valeurs sont transmises au pod migré.

Structure du plan de migration de données

Le plan de migration de données pour une charge de travail WordPress présente la structure suivante :

volumes:
- deploymentPvcName: wordpress-pvc
  folders:
  - /var/www/html/wp-content
  newPvc:
    spec:
      accessModes:
      - ReadWriteOnce
      resources:
        requests:
          storage: 10G

Le contenu importé, les plug-ins et les thèmes qui se trouvent dans le dossier wp-content de votre VM WordPress sont exportés vers une revendication de volume persistant (PVC). Le PVC est associé au pod migré et installé dessus.

Si vous avez mis à jour le plan de configuration des données, importez-le pour poursuivre la migration.

Étapes suivantes