Ajoutez une source de migration.

Avant de commencer une migration, vous devez créer une source de migration qui représente la plate-forme source à partir de laquelle vous souhaitez migrer l'application. Elle sera incluse dans votre plan de migration. Cet article explique comment créer une source pour chacune des plates-formes sources compatibles.

Vous pouvez déployer l'application en conteneur sur les éléments suivants :

Exigences relatives aux noms des sources

Vous attribuez un nom à une source de migration lorsque vous l'ajoutez à Migrate to Containers. Le nom doit répondre aux exigences suivantes :

  • contenir au maximum 63 caractères ;
  • ne contenir que des caractères alphanumériques minuscules ou des tirets (-) ;
  • commencer par un caractère alphanumérique ;
  • se terminer par un caractère alphanumérique.

Ajouter une source de migration

Définissez la source de la migration en exécutant la commande migctl source create ou en utilisant Google Cloud Console. Ce processus permet d'ajouter les détails nécessaires à la migration depuis la source spécifiée : VMware, AWS, Azure, Compute Engine ou sur site.

migctl sur Google Cloud

Compute Engine

  1. Créez un compte de service pour utiliser Compute Engine en tant que source de migration et téléchargez le fichier de clé JSON, comme décrit dans la section Configurer un compte de service.

  2. Créez la source à l'aide du compte de service :

    migctl source create ce my-ce-src --project my-project --json-key=m2c-ce-src.json

    m2c-ce-src.json spécifie le compte de service.

VMware

migctl source create vmware my-vmware-src --manager-address 1.2.3.4 --cloud-extension my-cloud-extension

Spécifiez les options suivantes :

Vous êtes invité à saisir le mot de passe de votre serveur de gestion Migrate to VMs.

AWS

migctl source create aws my-aws-src --manager-address 1.2.3.4 --cloud-details cloud-details --cloud-extension cloud-extension

Spécifiez les options suivantes :

Vous êtes invité à saisir le mot de passe de votre serveur de gestion Migrate to VMs.

Azure

migctl source create azure my-azure-src --manager-address 1.2.3.4 --cloud-details cloud-details --cloud-extension cloud-extension

Spécifiez les options suivantes :

Vous serez invité à saisir le mot de passe de votre serveur de gestion Migrate to VMs.

Migctl sur VMware

VMware

migctl source create local-vmware local-vmware-src --vc '1.2.3.4' --username 'admin'

Où :

  • --vc spécifie le nom DNS vCenter ou l'adresse IP vCenter ;
  • --username spécifie un utilisateur autorisé à accéder à vCenter. Vous êtes invité à saisir le mot de passe de l'utilisateur.

migctl sur AWS

AWS

  1. Créez la source :

    migctl source create local-aws local-aws-src --region my-region --access-key-id my-access-key-id

    ou :

    migctl source create local-aws local-aws-src --region my-region --credentials-file-path=credentials.csv

    Où :

    • --region spécifie la région Google Cloud de votre cluster.
    • --access-key-id spécifie l'ID de clé d'accès AWS pour un utilisateur autorisé à accéder à AWS. Vous êtes invité à saisir le code secret de l'ID de clé d'accès. Consultez la section Gérer les clés d'accès pour les utilisateurs IAM pour plus d'informations.
    • --credentials-file-path spécifie le chemin d'accès à un fichier CSV, téléchargé depuis la console AWS, contenant les identifiants. Pour en savoir plus sur la création du fichier CSV, consultez la section Configurer des rôles d'instance et des groupes IAM AWS.

CRD

  1. Créez un fichier my-source-provider.yaml SourceProvider pour créer une source de migration :

    apiVersion: anthos-migrate.cloud.google.com/v1beta2
    kind: SourceProvider
    metadata:
      name: my-ce-src
    spec:
      gce:
        project: my-project
    
  2. Si vous utilisez Compute Engine comme source de migration :

    1. Créez un compte de service et téléchargez le fichier de clé JSON, comme décrit dans Configurer un compte de service.

    2. Créez un secret nommé my-secret à l'aide de la commande suivante :

      kubectl create secret generic my-secret -n v2k-system --from-file=cloud-platform-service-account-key=m2c-ce-src.json
    3. Incluez le secret dans SourceProvider :

      apiVersion: anthos-migrate.cloud.google.com/v1beta2
      kind: SourceProvider
      metadata:
       name: my-ce-src
      spec:
       gce:
         project: my-project
         serviceAccount:
           secretRef:
             name: my-secret
             namespace: v2k-system
  3. Si vous effectuez une migration pour AWS, Azure ou VMware, modifiez le SourceProvider en spécifiant les éléments suivants :

    apiVersion: anthos-migrate.cloud.google.com/v1beta2
    kind: SourceProvider
    metadata:
      name: migration-source-name
    spec:
      migrateForCE:
        management:
          address: manager-ip-address
          cloudDetails:
            platform: aws | azure | vmware
            name: Name of the source, as configured in Migrate to VMs
          cloudExtension: ID or name of the Migrate to Containers extension
          password:
            <-- Password for your Migrate to VMs management server. --->
            secretRef:
              name: secret-name
              namespace: v2k-system
  4. Si vous effectuez une migration sur des clusters Anthos sur VMware, vous devez créer un secret pour les identifiants vCenter, au format suivant :

    kubectl create secret generic secret-vcenter -n v2k-system --from-literal='vc-password=pass1'

    Incluez ensuite secretRef :

    apiVersion: anthos-migrate.cloud.google.com/v1beta2
    kind: SourceProvider
    metadata:
      name: my-ce-src
    spec:
      localVmware:
        address: 1.2.3.4
        username: admin
        password:
          secretRef:
            name: secret-vcenter
            namespace: v2k-system
  5. Si vous effectuez une migration sur des clusters Anthos sur AWS, vous devez créer un secret pour les identifiants AWS, au format suivant :

    kubectl create secret generic secret-aws -n v2k-system --from-literal='AwsAccessKeyId=admin' --from-literal='AWS_SECRET_ACCESS_KEY=pass1'

    Incluez ensuite secretRef :

    apiVersion: anthos-migrate.cloud.google.com/v1beta2
    kind: SourceProvider
    metadata:
      name: my-ce-src
    spec:
      localAws:
        # Google Cloud region of cluster.
        region: my-region
        accessKeyId: admin
        secretAccessKey:
          secretRef:
            name: secret-aws
            namespace: v2k-system
  6. Appliquez le fichier :

    kubectl apply -f my-source-provider.yaml

Console

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

    Accéder à la page Migrate to Containers

  2. Si vous utilisez un cluster distant Anthos, ce qui signifie que vous utilisez Anthos Clusters on VMware ou Anthos Clusters on AWS, et que vous ne vous êtes pas encore connecté au cluster, connectez-vous maintenant.

    Pour en savoir plus sur l'accès aux clusters distants, consultez la section Se connecter à un cluster depuis la console Google Cloud.

  3. Cliquez sur l'onglet Sources pour afficher un tableau contenant les sources disponibles.

  4. Cliquez sur Add Source (Ajouter une source).

  5. Dans la liste déroulante, sélectionnez un cluster sur lequel vous avez déjà installé les composants Migrate to Containers.

  6. Cliquez sur Suivant.

  7. Spécifiez le nom de la source, par exemple my-ce-source1.

  8. Sélectionnez le type de source.

  9. Cliquez sur Suivant.

  10. Configurez la source en fonction de votre sélection de Type de source :

    1. Pour Compute Engine :

      1. Sélectionnez le projet contenant la VM que vous souhaitez migrer.

      2. Sélectionnez le compte de service. Vous pouvez utiliser l'une de ces deux méthodes :

        1. Créer un compte de service. Vous êtes invité à saisir le nom du nouveau compte de service.
        2. Utilisez un compte de service existant si vous en avez créé un, comme décrit dans la section Créer un compte de service pour utiliser Compute Engine en tant que source de migration. Lorsque vous sélectionnez cette option, vous êtes invité à saisir le contenu du fichier de clé JSON associé à ce compte de service.
    2. Pour VMware, AWS et Azure :

      1. Spécifiez l'adresse IP ou l'URL du gestionnaire Migrate to VMs.

      2. Spécifiez le mot de passe du gestionnaire Migrate to VMs.

      3. Spécifiez le nom de l'extension Migrate to VMs.

      4. (AWS et Azure uniquement) Spécifiez le nom des détails du cloud, tel que configuré dans Migrate to VMs.

    3. Pour VMware local :

      1. Spécifiez le nom DNS vCenter ou l'adresse IP vCenter.

      2. Indiquez l'utilisateur et le mot de passe d'un utilisateur vCenter autorisé à accéder à vCenter.

    4. Pour AWS local :

      1. Spécifiez la région de votre cluster.

      2. Spécifiez les identifiants AWS comme suit :

        • Un ID de clé d'accès et un secret pour un utilisateur autorisé à accéder à AWS.
        • Un fichier CSV d'identifiants téléchargé à partir de la console AWS et contenant les identifiants. Pour en savoir plus sur la création du fichier CSV, consultez la section Configurer des rôles d'instance et des groupes IAM AWS.
  11. Cliquez sur Next (Suivant).

  12. Sélectionnez Ajouter une source.

Après avoir ajouté la source, votre cluster doit disposer d'un nouveau fichier SourceProvider dont le nom correspond au nom de la source, ici my-vmware-src :

kubectl get SourceProvider
NAME                 STATE
my-vmware-src        READY

Afficher une liste de sources

Vous pouvez afficher la liste des sources de migration à l'aide de la commande migctl source list. Vous pouvez utiliser le résultat de la commande pour confirmer que vous avez correctement configuré votre environnement avec la source de migration.

migctl

migctl source list
NAME            TYPE    STATE   PROJECT     CLOUD-DETAILS   CLOUD-EXTENSION     VCENTER/MANAGER-ADDRESS
my-vmware-src   VMware  READY my-project  VMware        my-cloud-extension  1.2.3.4

VCENTER/MANAGER-ADDRESS spécifie les éléments suivants :

  • Pour les migrations vers le cloud, l'adresse de votre serveur de gestion Migrate to VMs
  • Pour les migrations sur site, le nom DNS vCenter ou l'adresse IP vCenter

Si une source n'est pas à l'état READY, vous pouvez obtenir plus d'informations sur cette source, y compris les messages d'erreur, à l'aide de la commande suivante :

migctl source status my-vmware-src

Console

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

    Accéder à la page Migrate to Containers

  2. Cliquez sur l'onglet Sources pour afficher un tableau contenant les sources disponibles.

    Dans le tableau VCENTER/MANAGER-ADDRESS, spécifiez l'adresse de votre serveur de gestion Migrate to VMs.

Supprimer une source

Après avoir validé et testé la charge de travail migrée pour vous assurer qu'elle fonctionne correctement, vous devez supprimer la migration. La suppression de la migration libère toutes les ressources qu'elle utilise. Vous pouvez également supprimer une source si vous souhaitez apporter une modification, puis la recréer.

migctl source delete my-tomcat-src

Étapes suivantes

Créer une migration