Installer Migrate to Containers
Cet article explique comment installer Migrate to Containers sur un cluster de traitement.
Un cluster de traitement est un cluster Google Kubernetes Engine (GKE) ou GKE Enterprise avec les composants Migrate to Containers installés que vous utilisez pour migrer les VM avant de les déployer sur votre cluster de production.
À l'aide des étapes de cet article, vous allez utiliser l'outil de ligne de commande migctl
ou Google Cloud Console pour installer les composants Migrate to Containers requis sur un cluster GKE que vous avez déjà créé.
Après avoir déployé vos VM migrées en tant qu'images sur un cluster de production (en supposant que le cluster de traitement n'est plus nécessaire pour effectuer de nouvelles migrations), vous pouvez supprimer le cluster de traitement.
À propos de migctl
En plus d'être compatible avec la console Google Cloud, Migrate to Containers intègre l'outil de ligne de commande migctl
, qui vous permet d'effectuer toutes les opérations d'une migration :
Si vous utilisez un cluster de traitement Google Kubernetes Engine (GKE) ou GKE Enterprise dans Google Cloud, exécutez
migctl
dans Cloud Shell.Lorsque vous utilisez un cluster de traitement Google Distributed Cloud Virtual pour Bare Metal, vous pouvez installer et exécuter
migctl
sur votre poste de travail administrateur.
Pour savoir comment télécharger migctl
, consultez la page Téléchargements Migrate to Containers.
Avant de commencer
Vérifiez que les conditions préalables à votre environnement de migration sont satisfaites :
- Conditions préalables à la migration de VM Linux à l'aide de clusters de traitement Google Cloud.
- Conditions préalables à la migration d'applications Windows IIS à l'aide de clusters de traitement Google Cloud.
Configurez votre environnement comme décrit dans la section Activer les services Google et configurer les comptes de service.
Configurez un cluster de traitement.
Il s'agit d'un cluster Google Kubernetes Engine (GKE) ou GKE Enterprise créé spécifiquement pour la migration de VM avec Migrate to Containers.
Pour exécuter les commandes d'installation ou de désinstallation avec
migctl
, il est recommandé de disposer d'autorisations d'administrateur pour le cluster sur lequel vous effectuez l'installation.
Installer Migrate to Containers
migctl sur Google Cloud
Utilisez les commandes migctl
pour installer Migrate to Containers et le configurer avec les principes de base nécessaires à la migration.
Assurez-vous d'avoir créé un compte de service permettant d'accéder à Container Registry et Cloud Storage, puis téléchargez le fichier de clé JSON, comme décrit dans la section Configurer un compte de service.
Accédez au menu GKE dans la console Google Cloud.
Dans la liste des clusters, recherchez celui que vous utilisez en tant que cluster de traitement, puis cliquez sur le bouton Connecter.
Dans la boîte de dialogue Se connecter au cluster, sous Accès avec la ligne de commande, cliquez sur Exécuter dans Cloud Shell pour exécuter la commande de connexion dans Cloud Shell.
gcloud container clusters get-credentials my-cluster --zone us-central1-c --project my-project
Configurez les composants Migrate to Containers sur votre cluster de traitement en exécutant la commande
migctl setup install
dans Cloud Shell et en spécifiant le compte de service d'installation :migctl setup install --json-key=m4a-install.json
Validez l'installation de Migrate to Containers en exécutant la commande
migctl doctor
.Avant l'installation, un message tel que celui-ci peut s'afficher. Si tel est le cas, attendez quelques minutes que l'installation se termine avant d'exécuter
migctl doctor
.migctl doctor [!] Deployment Validation checks failed.
Dans l'exemple de résultat suivant, la coche indique que le déploiement de Migrate to Containers a bien été effectué et que les dépôts de données nécessaires ont été configurés.
migctl doctor [✓] Deployment [✓] Docker registry [✓] Artifacts repo [!] Source Status
Consultez la section Définir des dépôts de données si une erreur est associée au registre Docker ou au dépôt d'artefacts.
migctl sur Google Distributed Cloud Virtual pour Bare Metal
- Définissez votre ID de projet par défaut :
gcloud config set project project-id
- Déployez migctl sur votre poste de travail administrateur :
wget https://modernize-release.storage.googleapis.com/v1.15.0/linux/amd64/migctl
sudo cp migctl /usr/local/bin/
sudo chmod +x /usr/local/bin/migctl
. <(migctl completion bash)
- Configurez les composants Migrate to Containers sur votre cluster de traitement en exécutant la commande migctl setup install :
migctl setup install --anthos-bm --gcp-project myproject --gcp-region us-central1 --json-key m4a-install.json
Lorsqu'il reçoit tous les arguments, y compris--gcp-project
,--gcp-region
et--json-key
,migctl
crée un registre Docker et des dépôts d'artefacts par défaut dans Container Registry et Cloud Storage, respectivement. Cela signifie que les images et les artefacts de migration seront importés dans Google Cloud. Il est possible de configurer d'autres registres Docker et de les définir comme valeurs par défaut pour la migration, ou de les utiliser pour une migration spécifique. - Validez l'installation de Migrate to Containers en exécutant la commande migctl doctor.
Avant la fin de l'installation, un message tel que celui-ci peut s'afficher. Si tel est le cas, attendez quelques minutes que l'installation se termine avant d'exécuter
migctl doctor
.migctl doctor [!] Deployment Validation checks failed.
Dans l'exemple de résultat suivant, la coche indique que Migrate to Containers a bien été déployé, mais que vous n'avez pas encore configuré les dépôts de données nécessaires :migctl doctor [✓] Deployment [!] Docker registry [!] Artifacts repo [!] Source Status
- Configurez les dépôts de données requis par le cluster comme décrit dans la section Définir des dépôts de données.
- Si nécessaire, configurez un proxy HTTPS pour l'accès Internet sortant, comme décrit dans la section Configurer un proxy HTTPS.
Console
Ouvrez la page "Migrate to Containers" dans la console Google Cloud.
Cliquez sur l'onglet Clusters de traitement pour afficher un tableau contenant les clusters disponibles.
Cliquez sur Ajouter un cluster de traitement.
Sélectionnez le type de charge de travail à migrer, Linux ou Windows, puis sélectionnez Suivant.
Sélectionnez le cluster dans la liste déroulante, puis cliquez sur Suivant.
Sélectionnez le bucket pour le dépôt d'artefacts.
Par défaut, Migrate to Containers utilise Cloud Storage avec le nom de bucket spécifié. Vous pouvez éventuellement définir le nom du bucket ici. Assurez-vous d'avoir vérifié les exigences décrites dans la section Définir des dépôts de données.
Sélectionnez le nom du projet du dépôt d'images.
Par défaut, Migrate to Containers utilise le projet actuel pour Container Registry. Vous pouvez éventuellement modifier le nom du projet ici. Assurez-vous d'avoir vérifié les exigences décrites dans la section Définir des dépôts de données.
Cliquez sur Continuer.
Spécifiez le compte de service Dépôt d'artefacts utilisé pour accéder à Cloud Storage. Vous pouvez créer un compte de service ou en sélectionner un existant. Pour en savoir plus, consultez la section Configurer des comptes de service.
Cliquez sur Continuer pour examiner vos paramètres, puis sur Déployer pour installer Migrate to Containers sur votre cluster.
Une fois l'installation terminée, le nom du cluster s'affiche dans l'onglet Clusters de traitement avec l'état Prêt.
Options d'installation
Vous pouvez créer des clusters de différentes tailles et configurations. Imaginons par exemple que vous souhaitez créer un cluster avec plusieurs pools de nœuds. Vous pouvez alors utiliser un pool de nœuds pour le traitement des migrations, un pool de nœuds pour l'exécution des charges de travail et un troisième pool de nœuds pour les autres opérations.
Par défaut, Migrate to Containers est installé sur tous les nœuds de cluster. Pour définir les nœuds utilisés par Migrate to Containers, vous pouvez utiliser les options --node-selectors
et --tolerations
dans la commande migctl setup install
:
--node-selectors LABEL1=VALUE1,LABEL2=VALUE2,...
Spécifie une liste de paires libellé/valeur séparées par une virgule qui déterminent les nœuds utilisés par Migrate to Containers. Pour en savoir plus sur l'utilisation des libellés, consultez la page Créer et gérer les libellés.
--tolerations KEY1=VALUE1:EFFECT1,KEY2=VALUE2:EFFECT2,...
Spécifie une liste de paires clé/valeur séparées par une virgule associées à un effet, qui spécifient ensemble un rejet de nœud. Une tolérance signifie que les pods peuvent s'exécuter sur le rejet de nœud spécifié par la paire clé/valeur et l'effet.
Si vous omettez EFFECT et/ou VALUE, les tolérances correspondent aux rejets avec KEY,VALUE (pour un élément EFFECT) et/ou KEY (pour une paire VALUE:EFFECT).
Pour en savoir plus sur les rejets de nœuds, consultez la page Contrôler la planification avec des rejets de nœuds.
Étapes suivantes
- Découvrez comment passer à la dernière version.
- Découvrez comment définir des dépôts de données.
- Découvrez comment configurer un proxy HTTPS.