Utiliser l'outil d'évaluation de l'adéquation

Migrate for Anthos and GKE fournit un outil que vous exécutez sur une charge de travail de VM pour déterminer si elle est adaptée à la migration vers un conteneur. L'outil d'évaluation de l'adéquation vous fournit les éléments suivants :

  • Possibilité d'obtenir les informations d'évaluation sur les VM VMware via une connexion directe à vCenter
  • Sortie HTML améliorée qui facilite l'affichage des résultats de l'évaluation
  • Nouveaux scripts de collecte et nouvel outil d'évaluation, mfit

L'outil d'évaluation de l'adéquation génère un rapport décrivant les résultats de l'évaluation pour la VM. Cette évaluation décrit les problèmes à résoudre avant la migration, ainsi qu'une évaluation globale de l'adéquation des éléments suivants :

  • Adéquation parfaite
  • Bonne adéquation avec quelques résultats qui peuvent nécessiter votre attention
  • Nombre minimal de tâches nécessaires avant la migration
  • Nombre modéré de tâches nécessaires avant la migration
  • Nombre important de tâches nécessaires avant la migration
  • Inadéquation
  • Données insuffisantes.

Pour savoir comment l'outil évalue l'adéquation globale d'une VM, consultez la section Calculer l'évaluation de l'adéquation.

Mises à jour de la version 1.9.0

À l'origine, l'outil d'évaluation de l'adéquation a été publié en version bêta publique dans le cadre de la version 1.8 de Migrate for Anthos and GKE. L'outil d'évaluation de l'adéquation de la version 1.9.0 ajoute de nouvelles fonctionnalités, parmi lesquelles :

Fonctionnement de l'outil

L'outil d'évaluation de l'adéquation fonctionne en plusieurs phases distinctes :

  • Découverte et collecte des données : collectez des données concernant les VM à migrer. Vous pouvez collecter ces données de deux manières :

    • Découverte de données (VMware uniquement) : exécutez l'outil mfit pour effectuer une découverte d'inventaire à l'aide de l'API vSphere, afin de collecter des données sur les VM d'un environnement vCenter. L'outil mfit se connecte à distance à vCenter à l'aide du nom d'utilisateur et du mot de passe transmis à l'outil.

      La découverte vous permet de déterminer rapidement les caractéristiques des VM, telles que le type de système d'exploitation, l'espace de stockage, le nombre de cœurs et d'autres informations de base. Toutefois, pour une évaluation complète de l'adéquation, vous devez exécuter le script bash mfit-linux-collect.sh sur la VM.

      L'outil mfit stocke les données d'évaluation et les informations de journal dans le répertoire ~/.mfit de la machine hôte.

    • Collecte : exécutez le script de collecte de données sur une VM à migrer afin de collecter les informations détaillées permettant de réaliser l'évaluation globale de l'adéquation de la VM avec la conteneurisation. Vous devez exécuter le script de collecte sur la VM pour pouvoir générer une évaluation complète de l'adéquation.

      Le script collecte des données sur la VM et les écrit dans un fichier de sortie, un fichier tar (Linux) ou un fichier zip (Windows). Pour les VM Linux, une copie des données reste éventuellement sur le système de fichiers de la VM pour une utilisation ultérieure lors de la migration.

      Vous pouvez exécuter le script localement sur la VM ou l'exécuter à distance à l'aide de mfit. L'exécution à distance est compatible avec mfit pour les VM Linux et Windows déployées sur VMware et pour les VM Linux accessibles par mfit via ssh.

  • Phase d'évaluation : Utilisez l'outil mfit pour analyser les données de la phase de découverte et de collecte des données, appliquer un ensemble de règles et créer un score d'évaluation d'adéquation pour chaque VM évaluée.

    En règle générale, vous installez mfit sur une seule machine Linux, puis importez les fichiers tar (Linux) ou zip (Windows) créés par les scripts de collecte sur cette machine pour évaluation.

  • Phase de rapport : Utilisez l'outil mfit pour produire un rapport détaillé décrivant l'évaluation pour chaque VM. Vous pouvez créer ce rapport sous forme de fichier HTML, JSON ou CSV.

Intégration à la migration de la charge de travail

Les données obtenues par l'outil d'évaluation de l'adéquation sur une VM source pendant la phase de collecte peuvent être utilisées par Migrate for Anthos and GKE pour générer des parties du plan de migration pour la VM.

Par exemple, les données collectées par l'outil d'évaluation de l'adéquation utilisent des informations sur les points de terminaison de service exposés par une VM source. Par conséquent, vous devez exécuter l'outil sur une VM source si vous souhaitez remplir automatiquement les informations sur les points de terminaison de service. Pour en savoir plus, consultez la page Personnaliser les points de terminaison du service.

Afficher le rapport d'évaluation de l'adéquation

Pour afficher le rapport détaillé généré par l'outil mfit, vous pouvez procéder comme suit :

  • Ouvrez le fichier HTML dans un navigateur. L'outil d'évaluation de l'adéquation fournit une sortie HTML améliorée qui facilite la visualisation des résultats de l'évaluation.

  • Importez le fichier JSON dans Google Cloud Console.

  • Importez le fichier CSV dans votre propre utilitaire de visualisation de données.

Afficher la sortie HTML

Ouvrez le fichier HTML dans un navigateur pour afficher le rapport. L'image suivante montre la sortie HTML de l'outil pour l'évaluation de 41 VM (seules les six premières lignes du tableau récapitulatif sont visibles) :

Sortie HTML de l'outil mfit

Où :

  • La partie supérieure contient des informations sur la personne qui a exécuté le rapport et quand.

  • Les sections Summary (Résumé), Journey Scores (Scores de transition) et OS Distributions (Distribution du système d'exploitation) vous donnent un aperçu général des résultats pour toutes les VM analysées.

  • La première ligne du tableau vous permet de spécifier des critères de recherche dans le rapport.

  • Le tableau contient une ligne pour chaque VM analysée et affiche :

    • Le champ de résultat d'adéquation.
    • Le champ Chemin recommandé indique le chemin recommandé. Par exemple, dans Migrate for Anthos and GKE, la valeur peut être Containerize ou le champ est vide en cas d'inadéquation.
    • Le champ Système d'exploitation inclut le format long du nom du système d'exploitation.
    • Le type de système d'exploitation indique le système d'exploitation de la VM.
  • Développez chaque ligne du tableau pour afficher les informations sur une VM, y compris une description de chaque règle et les résultats de l'application d'une règle à la VM.

Importer le fichier JSON dans Google Cloud Console

Pour afficher le rapport dans Google Cloud Console, procédez comme suit :

  1. Ouvrez la page Migrate for Anthos and GKE dans Google Cloud Console.

    Accéder à la page "Migrer vers des conteneurs"

  2. Sélectionnez l'onglet Évaluation de l'adéquation.

  3. Sélectionnez Parcourir, puis choisissez le fichier JSON à importer.

  4. Sélectionnez Ouvrir pour afficher le rapport.

    Celui-ci affiche les éléments suivants :

    • Les champs Préparé par, Date d'évaluation et Outil d'évaluation de l'adéquation contiennent des informations récapitulatives sur le rapport.
    • La zone Répartition du parcours de migration affiche les éléments suivants :
      • Nombre total de VM analysées.
      • Nombre de VM prêtes pour la migration ou mention Conteneuriser.
      • Nombre de VM pas prêtes pour la migration.
    • Une ligne pour chaque VM analysée, y compris une évaluation de l'adéquation de la VM.
  5. Dans le tableau VM évaluées, sélectionnez le nom d'une VM pour afficher ses détails, y compris des informations telles que les ports d'écoute, les points d'installation, les points d'installation NFS et d'autres informations.

    Pour la VM sélectionnée, vous voyez également chaque description et ID de règle, ainsi que le résultat de l'application de la règle à la VM :

    Résultats de la console pour le fichier LDT.

Installer l'outil d'évaluation de l'adéquation

Installez mfit et les scripts de collecte :

  • mfit : téléchargez l'outil mfit sur une machine Linux centrale. Vous importez ensuite les données générées par les scripts de collecte sur cette machine pour les analyser.

  • mfit-linux-collect.sh (Linux) : téléchargez le script de collecte sur une VM Linux pour effectuer la collecte des données.

  • mfit-windows-collect.ps1 (Windows) : téléchargez le script de collecte sur une VM Windows pour effectuer la collecte de données.

Au lieu de télécharger le script de collecte localement sur chaque VM, vous pouvez éventuellement utiliser l'outil mfit pour exécuter les scripts de collecte de données à distance. Cette option est compatible avec les VM s'exécutant sur VMware ou avec les VM Linux qui autorisent une connexion ssh distante à partir de la machine hébergeant mfit.

Prérequis

Pour effectuer une évaluation de l'adéquation, vous devez remplir les conditions préalables suivantes :

  • mfit

    • L'outil d'évaluation de l'adéquation, mfit, s'exécute sur les versions du noyau Linux ultérieures à la version 2.6.23.

    • Pour collecter des données à l'aide de VMware Discovery avec mfit, procédez comme suit :

      • La machine Linux exécutant mfit doit pouvoir se connecter à votre vCenter.

      • La version du serveur vSphere vCenter doit être 5.5 ou ultérieure.

      • Le nom d'utilisateur transmis à l'outil doit disposer de droits d'accès en lecture sur une ou plusieurs VM. L'outil ne peut découvrir que les informations concernant les VM accessibles à l'utilisateur spécifié. Le privilège de lecture est généralement attribué à tous les rôles, à l'exception de No Access.

      • Le nom d'utilisateur transmis à l'outil doit disposer de droits de lecture sur l'hôte ESX. S'il existe plusieurs serveurs ESX, des droits de lecture sont requis pour chaque serveur ESX qui héberge une VM découverte.

    • Pour utiliser mfit afin d'exécuter les scripts de collecte à distance pour des VM VMware :

      • Vous devez disposer des autorisations décrites ci-dessus pour exécuter VMware Discovery.

      • Le nom d'utilisateur transmis à l'outil pour la connexion à vSphere doit disposer des droits suivants sur la VM : Guest operation modifications, Guest operation program execution et Guest operation queries.

      • Les identifiants utilisateur de la VM utilisés par mfit pour exécuter le script doivent disposer de droits d'administrateur (VM Windows).

    • Pour utiliser mfit afin d'exécuter les scripts de collecte à distance à l'aide de SSH :

      • La machine Linux hébergeant mfit doit disposer d'un accès ssh à la VM Linux source (les VM Windows ne sont pas compatibles).
  • Scripts de collecte

    • mfit-linux-collect.sh (Linux) s'exécute sur toutes les versions de Linux.

    • mfit-windows-collect.ps1 (Windows) nécessite PowerShell 2.0 ou une version ultérieure (pas PowerShell Core), et une interface système avec GUI (pas Server Core) ou le framework .Net en version 4.5 ou ultérieure.

Installation

Les procédures suivantes décrivent comment installer mfit et les scripts de collecte.

Pour installer mfit, procédez comme suit :

  1. Créez un répertoire pour l'outil mfit sur une VM Linux :

    mkdir m4a
    cd m4a
  2. Téléchargez l'outil d'évaluation et rendez-le exécutable :

    wget https://anthos-migrate-release.storage.googleapis.com/v1.9.0/linux/amd64/mfit
    chmod +x mfit
  3. Pour afficher les informations d'aide d'une commande mfit, utilisez l'option --help. Exemple :

    ./mfit --help

    Pour afficher l'aide d'une commande spécifique, utilisez l'option --help avec cette commande. Exemple :

    ./mfit discover import --help

Pour installer mfit-linux-collect.sh, procédez comme suit :

  1. Connectez-vous à la VM.

  2. Créez un répertoire pour le script de collecte :

    mkdir m4a
    cd m4a
  3. Téléchargez le script collecté sur la VM et rendez-le exécutable :

    wget https://anthos-migrate-release.storage.googleapis.com/v1.9.0/linux/amd64/mfit-linux-collect.sh
    chmod +x mfit-linux-collect.sh

Pour installer mfit-windows-collect.ps1 :

  1. Connectez-vous à votre VM.

  2. Ouvrez PowerShell à l'aide de l'option Exécuter en tant qu'administrateur.

  3. Créez un répertoire pour le script de collecte :

    mkdir ~\m4a
    cd ~\m4a
  4. Téléchargez le script de collecte sur la VM à l'aide de l'URL suivante :

    https://anthos-migrate-release.storage.googleapis.com/v1.9.0/windows/amd64/mfit-windows-collect.ps1

Effectuer une évaluation

Effectuez une évaluation en réalisant toutes les phases d'évaluation suivantes :

Découvrir et collecter les données

Recueillir les données par :

  • Découverte (VMware uniquement) : exécutez l'outil mfit pour effectuer une découverte d'inventaire à l'aide de l'API vSphere, afin de collecter des données sur les VM d'un environnement vCenter. L'outil mfit se connecte à distance à vCenter à l'aide d'un nom d'utilisateur et d'un mot de passe transmis à l'outil. Vous devez donc disposer de ces identifiants avant de pouvoir exécuter l'outil.

  • Collecte : exécutez le script de collecte de données sur une VM à migrer. Le script collecte des données sur la VM et les écrit dans un fichier tar (Linux) ou un fichier zip (Windows). Importez le fichier sur une machine centrale pour l'évaluer à l'aide de l'outil mfit.

    Vous pouvez exécuter le script localement sur la VM ou l'exécuter à distance à l'aide de mfit. L'exécution à distance est compatible avec mfit pour les VM Linux et Windows déployées sur VMware et pour les VM Linux accessibles par mfit via ssh.

Dans les sections suivantes, nous décrivons comment effectuer une découverte (VMware uniquement) et comment exécuter les scripts de collecte :

Effectuer une découverte (VMware uniquement)

  1. Accédez au répertoire m4a :

    cd m4a
  2. Exécutez la commande suivante pour effectuer la découverte :

    ./mfit discover vsphere -u USERNAME --url https://VSPHERE_URL
  3. Saisissez le mot de passe vCenter lorsque vous y êtes invité.

  4. Vous pouvez maintenant évaluer les données collectées, comme décrit ci-dessous.

Limiter une découverte à un champ d'application

  1. Exécutez la commande suivante pour effectuer la découverte à la racine :

    ./mfit discover vsphere --url https://VSPHERE_URL -u root -i --path /

    Exécutez la commande suivante pour effectuer la découverte dans un dossier spécifique :

    ./mfit discover vsphere --url https://VSPHERE_URL -u root -i --path datacenter/vm/folder

    Exécutez la commande suivante pour effectuer la découverte sur un cluster spécifique :

    ./mfit discover vsphere --url https://VSPHERE_URL -u root -i --path datacenter/host/cluster

    Exécutez la commande suivante pour effectuer la découverte dans un centre de données spécifique :

    ./mfit discover vsphere --url https://VSPHERE_URL -u root -i --path datacenter
  2. Vous pouvez maintenant évaluer les données collectées, comme décrit dans la section suivante.

Collecter les données à distance à l'aide des outils VMware

Pour les VM hébergées sur vSphere, mfit peut utiliser les outils VMware pour déployer et exécuter les scripts de collecte à distance sur des VM Linux et Windows. Lorsque vous utilisez les outils VMware, l'outil mfit :

  • importe le script de collecte sur la VM ;
  • exécute le script sur la VM ;
  • télécharge et importe les résultats.

Vous avez besoin de deux jeux d'identifiants pour collecter les données à distance :

  • Le nom d'utilisateur du serveur vCenter, transmis à l'outil pour la connexion à vSphere, doit disposer des droits suivants sur la VM : Guest operation modifications, Guest operation program execution et Guest operation queries.

  • Les identifiants utilisateur de la VM utilisés par mfit pour exécuter le script doivent disposer de droits d'administrateur (VM Windows). Bien que les identifiants utilisateur de la VM ne nécessitent pas d'accès root, disposer d'un accès root garantit que mfit pourra collecter toutes les données d'évaluation de l'adéquation ;

Pour collecter des données à l'aide des outils VMware :

  1. Connectez-vous à votre VM Linux hébergeant mfit.

  2. Accédez au répertoire m4a :

    cd ~/m4a
  3. Transmettez les identifiants utilisateur pour le serveur vCenter et la VM à la commande comme suit :

    mfit discover vsphere guest --url https://VSPHERE_URL \
       -u VCENTER_USER  --vm-user VM_USER VM_ID

    Vous êtes invité à saisir les mots de passe des utilisateurs VCENTER_USER et VM_USER.

    Si votre cluster vSphere comporte plusieurs centres de données, vous devez utiliser l'option --dc pour spécifier le nom du centre de données :

    mfit discover vsphere guest --url https://VSPHERE_URL --dc DATACENTER_NAME \
       -u VCENTER_USER --vm-user VM_USER VM_ID

Collecter les données à distance via SSH

Si la machine Linux hébergeant mfit dispose d'un accès ssh à la VM Linux source (les VM Windows ne sont pas compatibles), mfit peut se connecter à la VM distante via ssh pour collecter des données.

Lorsque vous utilisez ssh, l'outil mfit :

  • importe le script de collecte sur la VM ;
  • exécute le script sur la VM avec les identifiants utilisateur de la VM transmis à mfit. Bien que les identifiants utilisateur de la VM ne nécessitent pas d'accès root, disposer d'un accès root garantit que mfit pourra collecter toutes les données d'évaluation de l'adéquation ;
  • télécharge et importe les résultats.

Vous pouvez utiliser l'un des deux modes suivants pour exécuter ssh :

  • natif (par défaut) : utilise le binaire ssh et les configurations de la machine mfit. Le mode natif peut utiliser les fichiers de configuration SSH locaux par défaut, tels que ~/.ssh/config et ~/.ssh/known_hosts, du poste de travail qui l'héberge.

    Vous ne pouvez pas spécifier le mot de passe de l'utilisateur de la VM ni la phrase secrète de fichier de clé privée SSH sur la ligne de commande. Vous devez les saisir lorsque vous y êtes invité.

  • intégré : utilise la bibliothèque ssh intégrée. Ce mode vous permet d'utiliser le client ssh intégré si, pour une raison quelconque, le mode natif cesse de fonctionner dans votre environnement. Toutefois, il n'utilise pas les fichiers de configuration SSH locaux par défaut. Vous pouvez utiliser l'option -i pour spécifier un fichier de clé privée SSH.

Pour collecter des données via ssh, procédez comme suit :

  1. Connectez-vous à la VM Linux hébergeant mfit.

  2. Accédez au répertoire m4a :

    cd ~/m4a
  3. Exécutez mfit :

    1. Utilisez le mode natif (par défaut) pour collecter les données :

      mfit discover ssh VM_IP_HOSTNAME

      Le fichier de clé privée SSH de l'utilisateur appelant mfit est utilisé pour l'authentification SSH.

      Lorsque vous y êtes invité, saisissez le nom d'utilisateur d'un compte sur la VM Linux. Le script de collecte s'exécute en utilisant ces identifiants. Vous êtes également invité à saisir un mot de passe si la clé privée SSH de l'utilisateur appelant mfit ne parvient pas à s'authentifier auprès de la VM avec le nom d'utilisateur.

    2. Spécifiez l'utilisateur de la VM en mode natif :

      mfit discover ssh -u USER VM_IP_HOSTNAME

      Saisissez le mot de passe de l'utilisateur lorsque vous y êtes invité.

    3. Utilisez l'option -v pour spécifier le mode détaillé :

      mfit discover ssh -u USER -v VM_IP_HOSTNAME
    4. Utilisez l'option -i pour spécifier le fichier de clé privée SSH. Par exemple, pour spécifier .ssh/my_private_key, procédez comme suit :

      mfit discover ssh -i ~/.ssh/my_private_key -u USER VM_IP_HOSTNAME
    5. Utilisez le mode intégré pour spécifier le mot de passe sur la ligne de commande :

      mfit discover ssh --ssh-client embedded -u USER -password PASSWORD VM_IP_HOSTNAME

      Comme la forme intégrée de la commande n'utilise pas les fichiers de configuration SSH locaux par défaut, l'utilisateur USER spécifié dans la commande doit pouvoir accéder à la VM via ssh et disposer de privilèges sur la VM lui permettant d'exécuter le script de collecte.

    6. Utilisez l'option -i en mode intégré :

      mfit discover ssh --ssh-client embedded -i ~/.ssh/id_rsa -u USER -password PASSWORD VM_IP_HOSTNAME
    7. La commande mfit vous permet de spécifier la plupart des options ssh. Ces options sont ensuite transmises à la commande ssh à l'aide de l'option -a/--ssh-args. Exemple :

      mfit discover ssh -u USER \
        -a '-o' -a 'ProxyCommand=nc -X 5 -x 127.0.0.1:proxy port %h %p'
        VM_IP_HOSTNAME

Collecter les données sur une VM Linux individuelle

Vous exécutez généralement le script en spécifiant l'option sudo. Vous pouvez éventuellement exécuter le script en utilisant les droits de l'utilisateur qui exécute l'outil. Cependant, le script pourrait ne pas être en mesure de collecter toutes les données d'évaluation.

  1. Connectez-vous à votre VM.

  2. Accédez au répertoire m4a :

    cd m4a
  3. Exécutez le script de collecte sur la VM :

    sudo ./mfit-linux-collect.sh

    Le script génère un fichier tar nommé m4a-collect-MACHINE_NAME-TIMESTAMP.tar dans le répertoire actuel et dans /var/m4a/m4a-collect-TIMESTAMP.tar. L'horodatage est au format YYYY-MM-DD-hh-mm. Pour obtenir une description du format de fichier tar, consultez la section Fonctionnement du script de collecte.

    Vous pouvez transmettre les arguments facultatifs au script :

    • --user pour exécuter ce script en utilisant les privilèges de l'utilisateur qui exécute l'outil (n'incluez pas sudo si vous utilisez cette option). L'exécution avec --user signifie que certaines données nécessitant un accès sudo peuvent ne pas être collectées, ce qui peut réduire la qualité de l'évaluation de l'adéquation.
    • --readonly pour ne pas écrire la sortie dans /var/m4a/m4a-collect-TIMESTAMP.tar. Notez que certaines fonctionnalités de Migrate for Anthos and GKE s'appuient sur ces informations. Pour en savoir plus, consultez la page Intégration à la migration de la charge de travail.
    • --output : pour enregistrer le fichier tar sous le chemin spécifié.
  4. Vous pouvez maintenant évaluer les données collectées, comme décrit ci-dessous.

Collecter les données sur une VM Windows individuelle

  1. Connectez-vous à votre VM.

  2. Ouvrez PowerShell à l'aide de l'option Exécuter en tant qu'administrateur.

  3. Accédez au répertoire m4a :

    cd ~\m4a
  4. Exécutez le script de collecte sur la VM :

    powershell -ExecutionPolicy ByPass -File .\mfit_windows_collect.ps1

    Le script génère un fichier zip nommé m4a-collect-MACHINE_NAME-TIMESTAMP.zip vers le répertoire actuel. Incluez un chemin de sortie pour spécifier un emplacement différent :

    .\mfit_windows_collect.ps1 \path\to\output\file.zip
  5. Vous pouvez maintenant évaluer les données collectées, comme décrit ci-dessous.

Évaluer les données collectées

Pour effectuer une évaluation, exécutez mfit sur les données collectées lors de la phase de collecte.

Pour effectuer une évaluation :

  1. Accédez au répertoire m4a :

    cd m4a
  2. Si vous avez exécuté manuellement les scripts de collecte des données sur une VM, procédez comme suit :

    1. Pour chaque VM que vous évaluez, importez le fichier tar (Linux) ou le fichier zip (Windows) de la VM vers la machine exécutant mfit.

    2. Importez le fichier tar (Linux) ou le fichier zip (Windows) dans le dépôt mfit :

      ./mfit discover import m4a-collect-MACHINE_NAME-TIMESTAMP.tar
      ./mfit discover import m4a-collect-MACHINE_NAME-TIMESTAMP.zip

      Répétez cette étape pour chaque fichier tar ou zip que vous avez créé. Vous pouvez également importer plusieurs fichiers au sein d'une même commande, en les séparant par un espace :

      ./mfit discover import m4a-collect-MACHINE_NAME_1-TIMESTAMP.tar  m4a-collect-MACHINE_NAME_2-TIMESTAMP.tar ...
  3. Pour afficher la liste des VM avec des données importées dans mfit, procédez comme suit :

    ./mfit discover ls
  4. Effectuez l'évaluation :

    ./mfit assess
  5. Vous pouvez maintenant générer un rapport pour afficher les résultats de l'évaluation.

Pour supprimer les données collectées pour une VM, procédez comme suit :

  1. Pour supprimer les données d'une VM du dépôt mfit, procédez comme suit :

    ./mfit discover delete --vm VM-ID

    VM-ID est la valeur de la colonne ID pour la VM renvoyée par la commande ./mfit discover ls.

  2. Pour supprimer les données de toutes les VM :

    ./mfit discover delete --all

    Vous êtes invité à confirmer la suppression.

Générer un rapport

Utilisez l'outil mfit pour produire un rapport détaillé décrivant l'évaluation pour chaque VM. Vous pouvez créer ce rapport sous forme de fichier HTML, JSON ou CSV.

  1. Accédez au répertoire m4a :

    cd m4a
  2. Pour générer un rapport HTML de l'évaluation, procédez comme suit :

    1. Exécutez la commande suivante :

       ./mfit report --format html > REPORT_NAME.html

      L'outil génère dans le répertoire actuel un fichier HTML nommé REPORT_NAME.html.

    2. Ouvrez REPORT_NAME.html dans un navigateur pour afficher le rapport. Pour obtenir une description du format de fichier, consultez la section Contenu du rapport.

  3. Pour générer un rapport JSON de l'évaluation :

    1. Exécutez la commande suivante :

      ./mfit report --format json >  REPORT_NAME.json

      L'outil génère dans le répertoire actuel un fichier JSON nommé REPORT_NAME.json.

    2. Importez le fichier JSON dans Google Cloud Console.

      Les fichiers de sortie contiennent des informations sur l'évaluation, y compris l'évaluation d'adéquation. Pour en savoir plus, consultez Contenu du rapport.

  4. Pour générer un rapport d'évaluation au format CSV :

    1. Exécutez la commande suivante :

      ./mfit report --format csv >  REPORT_NAME.csv

      L'outil génère dans le répertoire actuel un fichier JSON nommé REPORT_NAME.csv.

    2. Importez le rapport CSV dans votre outil de visualisation de données.

      Les fichiers de sortie contiennent des informations sur l'évaluation, y compris l'évaluation d'adéquation. Pour en savoir plus, consultez Contenu du rapport.

Fonctionnement du script de collecte

Le script de collecte exécute une série de commandes Linux pour collecter des informations sur la VM source, ainsi que des informations provenant de plusieurs fichiers sur cette VM.

Les sections suivantes décrivent l'opération du script. Vous pouvez également examiner le script dans un éditeur de texte pour afficher des informations plus détaillées.

Commandes de script

Le script exécute les commandes Linux suivantes :

Commande Description
netstat -tlnp Répertorie tous les ports d'écoute actifs.
ps -o pid,user,%mem,comm,args -e Répertorie tous les processus utilisateur en cours d'exécution.
dpkg -l Répertorie les packages installés (basés sur Debian).
rpm -qa Répertorie les packages installés (basés sur rpm).
sestatus Obtient l'état SELinux.
lsmod Obtient les modules du noyau chargés.
systemctl Répertorie les services en cours d'exécution (basés sur Systemd).
service --status-all Répertorie les services en cours d'exécution (basés sur Init.d/Upstart)
lsof /dev / Répertorie les handles ouverts vers des fichiers et des appareils périphériques
docker ps Répertorie les conteneurs Docker en cours d'exécution.
ip addr Répertorie les adresses IP attribuées aux cartes d'interface réseau
ifconfig Affiche les configurations des cartes d'interface réseau et les adresses IP attribuées
blkid Répertorie les attributs des appareils de stockage en mode bloc
lsblk --json -p --output NAME,PARTFLAGS,PARTTYPE,UUID,LABEL,FSTYPE" Répertorie les appareils de stockage en mode bloc

Fichiers collectés

Le script copie les fichiers suivants dans le fichier tar généré :

Chemin Description
/etc/fstab Liste des montages à installer au démarrage
/etc/hosts

/etc/resolv.conf

/etc/hostname

/etc/HOSTNAME

/proc/sys/kernel/hostname

Alias d'hôtes et de données DNS
/etc/issue

/etc/*-release

Nom de la distribution Linux
/etc/network/interfaces

/etc/dhcp/dhclient-up-hooks

/etc/NetworkManager/conf.d/*

/etc/systemd/resolved.conf

/etc/sysconfig/network-scripts/*

/etc/sysconfig/network/*

Interfaces configurées
/proc/cpuinfo Informations sur le processeur
/proc/meminfo Utilisation/total de la mémoire actuelle sur la VM
/proc/self/mounts Appareils actuellement installés
/etc/exports Liste des exportations NFS
/opt/IBM/WebSphere/AppServer/properties/version/installed.xml Version de WebSphere (lorsqu'il est installé par défaut)
/opt/IBM/WebSphere/AppServer/properties/version/WAS.product Informations sur WebSphere (lorsqu'il est installé par défaut)
/sys/class/net/* Informations sur la carte d'interface réseau

Répertoires examinés

Le script recherche les répertoires suivants jusqu'à une profondeur de deux afin de localiser les répertoires des utilitaires et logiciels installés :

  • /opt/
  • /usr/share/
  • /etc/
  • /usr/sbin/
  • /usr/local/bin/

Collecter le format du fichier tar

Le script m4a-fit-collect.sh génère un fichier tar nommé m4a-collect-machinename-timestamp.tar dans le répertoire actuel et dans /var/m4a/m4a-collect-timestamp.tar.

Bien que cela ne soit pas obligatoire, vous pouvez éventuellement développer le fichier tar à l'aide de la commande suivante :

tar xvf m4a-collect-machinename-timestamp.tar

Le fichier tar a le format suivant :

collect.log # Log output of the script
files # Directory containing files with their full path from root. For example:
   |- etc/fstab
   |- etc/hostname
   |- etc/network/interfaces
   |- ...
commands # Output of commands run by the script:
   |- dpkg
   |- netstat
   |- ps
   |- ...
found_paths # Text file with the list of installation directories
machinename # Text file with machine name
ostype # Text file with operating system type (Linux)
timestamp # Text file with collection timestamp
version # Text file with version number of the script

Réaliser une évaluation rapide

Les artefacts créés par le script de collecte peuvent être utilisés pour effectuer une évaluation rapide.

Pour effectuer une évaluation rapide :

  1. Accédez au répertoire m4a :

    cd m4a
  2. Effectuez l'évaluation :

    ./mfit assess sample /path/to/mfit-linux-collect-results.tar

    Cela revient à exécuter les commandes suivantes sur une base de données temporaire :

    ./mfit discover import /path/to/mfit-linux-collect-results.tar --db /tmp/db
    ./mfit assess --db /tmp/db
    ./mfit report --db /tmp/db

  3. Examinez le rapport généré pour vous aider à choisir les ressources qui pourraient bénéficier d'une évaluation complète.

Fonctionnement de l'évaluation

L'outil mfit examine les données collectées à partir d'une VM, applique un ensemble de règles et crée un rapport contenant les résultats de l'évaluation de l'adéquation.

Règles d'évaluation des VM Linux

L'outil d'évaluation de l'adéquation utilise les règles d'évaluation suivantes pour les VM Linux :

Champ Description
Nom de la VM Nom de la VM.
Date de collecte des données Horodatage de l'analyse.
Système d'exploitation identifié Système d'exploitation qui est toujours Linux.
Évaluation de l'adéquation Évaluation d'adéquation. Pour en savoir plus, consultez la page sur l'interprétation de cette évaluation.
Type de charge de travail

S'il est détecté, affiche IBM WebSphere.

Informations supplémentaires

Récapitulatif des informations sur la VM, y compris les suivantes :

  • Les ports d'écoute détectés sur la VM
  • Les montages de disque détectés sur la VM
  • Les points d'installation NFS sur la VM

Le rapport contient également les résultats de l'application de chaque règle à la VM :

ID de la règle Description Niveau de gravité Remarques
A1-STO-1 Installation réseau non compatible. Si /etc/fstab ou /proc/self/mounts comporte des installations réseau, vous devez ajouter manuellement les volumes CSI au plan de migration. Applications adaptées Consultez la section Installer des volumes externes pour en savoir plus sur l'association de volumes NFS/CIFS au déploiement YAML.
A1-STO-2 Système de fichiers incompatible. Inadéquation Vous ne pouvez pas migrer des charges de travail avec un système de fichiers incompatible.
A1-STO-3 SELinux appliqué à la VM. SELinux ne fonctionne pas bien dans les conteneurs imbriqués. Nous vous recommandons donc de le désactiver avant la migration. Nombre modéré de tâches nécessaires Désactivez SELinux ou appliquez manuellement un profil apparmor avant la migration.
A1-STO-4-5

Partage NFS exporté. Un fichier d'exportation NFS a été détecté, et le module du noyau du serveur NFS est chargé.

Deux règles sont appliquées, chacune renvoyant une gravité différente :

  • A1-STO-4 : serveur NFS détecté : nombre modéré de tâches nécessaires.
  • A1-STO-5 : serveur NFS détecté, et le type de charge de travail est un serveur Web : faible nombre de tâches nécessaires.
Voir la description Migrer des serveurs NFS vers Cloud Filestore.
A1-NET-1-3

Écouteur trouvé sur une adresse IP autre que 0.0.0.0, ce qui signifie qu'une liaison à une interface réseau spécifique a été détectée. Si des ports sont en cours d'écoute sur une carte d'interface réseau spécifique (et non sur 0.0.0.0, * ou rebouclage), cela signifie généralement qu'il existe une configuration avec plusieurs cartes d'interface réseau.

Trois règles sont appliquées, chacune renvoyant une gravité différente :

  • A1-NET-1 : une adresse IP détectée : bonne adéquation.
  • A1-NET-2 : au moins deux adresses IP ont été détectées : faible nombre de tâches nécessaires.
  • A1-NET-3 : au moins deux adresses IP ont été détectées sur le même port : nombre modéré de tâches nécessaires.
Voir la description Mettez à jour une VM pour écouter sur une carte d'interface réseau, car Migrate for Anthos and GKE n'accepte qu'une carte d'interface réseau.
A1-NET-4

Utilisation de plusieurs cartes d'interface réseau. L'outil ignore les appareils virtuels correspondant aux liens symboliques et les appareils inactifs, selon /sys/class/net/DEVICE/operstate.

Le rapport détaillé répertorie toutes les cartes d'interface réseau détectées.

Nombre modéré de tâches nécessaires

La présence de plusieurs cartes d'interface réseau sur la VM source peut signifier que la VM utilise plusieurs adresses IP. Cependant, GKE et Anthos n'acceptent pas les adresses IP multiples. Par conséquent, une VM source qui repose sur plusieurs cartes d'interface réseau est susceptible de ne pas fonctionner après la migration.

A1-APP-2

Exécution de la base de données dans le conteneur. Recherchez les applications de base de données en cours d'exécution qui sont inadéquates pour la migration :

  • Mysqld
  • Postgres
  • Mongodb
  • Serveur Redis
  • Cassandra
  • Elasticsearch
Faible nombre de tâches nécessaires Envisagez de migrer vers Cloud SQL.
A1-APP-3 Docker s'exécutant sur une VM. L'imbrication de Docker dans des conteneurs n'est pas compatible. Si dockerd est en cours d'exécution : bonne adéquation Envisagez d'utiliser Migrate for Compute Engine ou d'exécuter les conteneurs directement sur GKE/Anthos.
A1-NET-5 Utilisation d'hôtes statiques. Définitions des hôtes statiques détectées dans /etc/hosts. Applications adaptées Pour en savoir plus sur la modification de vos hôtes statiques, consultez la page Ajouter des entrées aux pod/etc/hôtes avec plusieurs hostAliases.
A1-STO-7 Ouvrez l'appareil de stockage en mode bloc détecté par lsof. Inadéquation Non compatible avec Migrate for Anthos and GKE.

Règles d'évaluation pour Windows

L'outil d'évaluation de l'adéquation utilise les règles d'évaluation suivantes pour les VM Windows :

ID de la règle Description Niveau de gravité Remarques
A1W-APP-1 Aucune application Windows IIS n'a été trouvée. Inadéquation Migrate for Anthos and GKE nécessite que les VM Windows exécutent Microsoft IIS en version 7 ou ultérieure.
A1W-APP-2 La version de Windows n'est pas compatible avec la migration. Inadéquation Migrate for Anthos and GKE nécessite Windows Server en version 2008 R2 ou ultérieure.
A1W-APP-3 Windows IIS n'est pas installé. Inadéquation Migrate for Anthos and GKE nécessite que les VM Windows exécutent Microsoft IIS en version 7 ou ultérieure.
A1W-APP-4 Impossible de localiser la configuration Windows IIS. Effort modéré requis Vérifiez que la configuration partagée est désactivée pour Windows IIS.
A1W-APP-5 Docker s'exécutant sur une VM. L'imbrication de Docker dans des conteneurs n'est pas compatible. Bonne adéquation Envisagez d'exécuter le conteneur directement sur GKE/Anthos.
A1W-APP-6 Les applications ASP.NET Core ne sont pas compatibles. Effort majeur requis
A1W-APP-7 Site IIS avec répertoire virtuel situé sur un lecteur réseau. Effort modéré requis Envisagez de déplacer l'application Windows IIS vers un lecteur local.
A1W-APP-8 Une application IIS a été trouvée avec un répertoire virtuel manquant. Effort modéré requis Envisagez de désactiver l'application Windows IIS.
A1W-APP-9 Un pool d'applications doté d'une identité Active Directory a été trouvé. Effort modéré requis Configurez un compte de service géré de groupe (gMSA).