Esegui un rilevamento degli ospiti

Questo documento descrive i passaggi per eseguire i diversi metodi di rilevamento guest forniti dall'interfaccia a riga di comando mcdc.

Panoramica

Il rilevamento guest ti consente di analizzare e raccogliere dati sulle applicazioni in esecuzione sulle tue macchine, incluse le istanze di macchine virtuali (VM) e i server fisici. Raccoglie inoltre dati sulla configurazione della macchina, sull'hardware, sulla rete, nonché su file, servizi e processi aperti.

Per le macchine in esecuzione su piattaforme per le quali l'interfaccia a riga di comando del client predittivo di Migration Center non supporta l'individuazione dell'inventario, ad esempio le VM in esecuzione su Azure o le macchine in esecuzione on-premise, nonché per una valutazione completa delle VM in esecuzione su VMware e AWS, puoi eseguire un'individuazione guest. L'individuazione guest utilizza uno script di raccolta guest per raccogliere dati sulla macchina e li scrive in un file tar di raccolta guest per le macchine Linux o in un file zip per le macchine Windows.

La macchina che ospita la CLI mcdc carica lo script sulla macchina di destinazione, lo esegue e poi scarica i risultati. Puoi eseguire lo script localmente sulla macchina di destinazione o da remoto. A seconda della tua infrastruttura, puoi scegliere di utilizzare la CLI mcdc nei seguenti modi:

  • Per le VM Linux e Windows di cui è stato eseguito il deployment su VMware, la CLI mcdc supporta l'esecuzione remota con il comando discover vsphere.
  • Per le macchine Linux accessibili tramite la CLI mcdc, puoi eseguire un rilevamento remoto utilizzando SSH con il comando discover ssh.
  • Per le macchine Windows accessibili tramite la CLI mcdc, puoi eseguire una rilevazione remota utilizzando Windows Management Instrumentation (WMI) con il comando discover wmi.
  • Per le macchine Linux e Windows senza connessione all'interfaccia a riga di comando mcdc, puoi scaricare ed eseguire localmente gli script di raccolta guest e poi importare manualmente i dati raccolti nella macchina che ospita l'interfaccia a riga di comando mcdc.

Lo script di raccolta guest esegue una serie di comandi per raccogliere informazioni sulla macchina di origine e raccoglie anche informazioni da diversi file sulla macchina.

Prima di iniziare

  1. Esamina i requisiti per scaricare ed eseguire la CLI mcdc.
  2. Esamina i requisiti per scaricare ed eseguire gli script di raccolta guest.
  3. Completa i passaggi per scaricare la CLI mcdc.

Raccogliere dati da remoto utilizzando VMware Tools

Per le VM ospitate su vSphere, la CLI mcdc può utilizzare gli strumenti VMware per eseguire il deployment e l'esecuzione degli script di raccolta da remoto su VM Linux e Windows. Quando utilizzi gli strumenti VMware, lo strumento CLI mcdc svolge le seguenti operazioni:

  • Carica lo script di raccolta nella VM.
  • Esegue lo script sulla VM.
  • Scarica e importa i risultati.

Per raccogliere i dati da remoto sono necessarie due serie di credenziali:

  • Il nome utente del server vCenter passato alla CLI mcdc per connettersi a vSphere, che deve disporre dei seguenti privilegi sulla VM:
    • Modifiche alle operazioni degli ospiti
    • Esecuzione del programma di operazioni guest
    • Query sulle operazioni degli ospiti
  • Credenziali utente per la VM:
    • Su Windows, devi disporre dei privilegi amministrativi.
    • Su Linux, l'accesso root non è obbligatorio, ma consente all'interfaccia a riga di comando mcdc di raccogliere i dati necessari per una valutazione completa.

Per raccogliere i dati utilizzando gli strumenti VMware:

  1. Accedi alla VM Linux che ospita la CLI mcdc.
  2. Passa alla directory in cui hai scaricato la CLI mcdc.
  3. Assicurati che la VM sia accesa.
  4. Esegui il rilevamento degli ospiti:

    Linux

    ./mcdc discover vsphere guest --url https://VSPHERE_URL -u VCENTER_USER --vm-user VM_USER VM_ID

    Windows

    mcdc.exe discover vsphere guest --url https://VSPHERE_URL -u VCENTER_USER --vm-user VM_USER VM_ID

    Sostituisci quanto segue:

    • VCENTER_USER: l'utente del server vCenter
    • VM_USER: l'utente VM
    • VM_ID: il nome della VM o di MOREF
  5. Quando richiesto, inserisci la password per VCENTER_USER e VM_USER.

Per raccogliere i dati da più VM vSphere in parallelo utilizzando VMware Tools, segui questi passaggi:

  1. Accedi alla VM Linux che ospita la CLI mcdc.
  2. Passa alla directory in cui hai scaricato la CLI mcdc.
  3. Assicurati che tutte le VM siano accese.
  4. Esegui il rilevamento degli ospiti:

    Linux

    ./mcdc discover vsphere guest all --url https://VSPHERE_URL -u VCENTER_USER --vm-user VM_USER --timeout TIMEOUT_IN_SECONDS

    Windows

    mcdc.exe discover vsphere guest all --url https://VSPHERE_URL -u VCENTER_USER --vm-user VM_USER --timeout TIMEOUT_IN_SECONDS

    Sostituisci TIMEOUT_IN_SECONDS con il timeout in secondi.

    (Facoltativo) Limita l'individuazione alle sole VM Windows o Linux utilizzando il flag --os-family o modifica il livello di parallelismo utilizzando il flag --max-parallelism.

  5. Quando richiesto, inserisci la password per VCENTER_USER e VM_USER.

  6. Puoi anche limitare l'individuazione a VM specifiche utilizzando il flag --path, come descritto per VMware in Esegui l'individuazione dell'inventario.

Puoi esportare e valutare questi dati raccolti online in Migration Center o eseguire una valutazione offline.

Raccogliere dati da remoto tramite SSH

Se la macchina che ospita la CLI mcdc ha accesso SSH alla macchina Linux di destinazione (le macchine Windows non sono supportate), la CLI mcdc può connettersi alla macchina di destinazione tramite SSH per raccogliere i dati.

Quando utilizzi SSH, la CLI mcdc esegue le seguenti operazioni:

  1. Carica lo script di raccolta sul computer.
  2. Esegue lo script sulla macchina con le credenziali utente della macchina passate all'interfaccia a riga di comando mcdc.

  3. Scarica e importa i risultati.

Modalità SSH supportate

Se utilizzi l'interfaccia a riga di comando mcdc su un computer Linux, puoi utilizzare due modalità per eseguire SSH:

  • Predefinito:utilizza il binario e le configurazioni ssh sulla macchina CLI mcdc. La modalità predefinita può utilizzare i file di configurazione SSH locali per impostazione predefinita, ad esempio ~/.ssh/config e ~/.ssh/known_hosts, della workstation che li ospita.

    Inserisci la password quando richiesto oppure utilizza sshpass per passare la password o la passphrase del file di chiavi private nella riga di comando. Ad esempio:

    sshpass -p password mcdc discover ssh IP_ADDRESS
    

    Sostituisci IP_ADDRESS con l'indirizzo IP della macchina.

  • Incorporato:utilizza la libreria SSH integrata. Questa modalità ti consente di utilizzare il client SSH incorporato se la modalità predefinita non funziona correttamente nel tuo ambiente. Tuttavia, per impostazione predefinita non utilizza i file di configurazione SSH locali. Puoi utilizzare il flag -i per specificare un file di chiave privata SSH.

Se utilizzi la CLI mcdc su una macchina Windows, è supportata solo la modalità incorporata.

Esegui la raccolta

Per raccogliere i dati tramite SSH:

  1. Accedi alla macchina Linux che ospita la CLI mcdc.
  2. Passa alla directory in cui hai scaricato la CLI mcdc.
  3. Raccogli i dati.

    Linux

    ./mcdc discover ssh IP_HOSTNAME

    Windows

    mcdc.exe discover ssh IP_HOSTNAME

    Per scoprire e raccogliere gli asset del database, utilizza il flag --db-engine:

    Linux

    ./mcdc discover ssh IP_HOSTNAME --db-engine=DB_ENGINE

    Windows

    mcdc.exe discover ssh IP_HOSTNAME --db-engine=DB_ENGINE

    Sostituisci quanto segue:

    • IP_HOSTNAME: il nome host IP della macchina.
    • DB_ENGINE: il motore del database da raccogliere. I valori supportati sono sqlserver, mysql, postgresql.
  4. Il file della chiave privata SSH dell'utente che richiama la CLI mcdc viene utilizzato per l'autenticazione SSH.

    Quando richiesto, inserisci il nome utente di un account sulla macchina Linux. Lo script di raccolta viene eseguito utilizzando queste credenziali. Se l'autenticazione della chiave privata SSH dell'utente che richiama la CLI mcdc non riesce alla macchina con il nome utente, ti viene richiesta anche una password.

Scenari aggiuntivi quando si utilizza SSH

Consulta gli scenari seguenti in cui potresti dover modificare il comando:

  • Per specificare l'utente della macchina con la modalità predefinita, utilizza il flag -u:

    Linux

    ./mcdc discover ssh -u USER IP_HOSTNAME

    Windows

    mcdc.exe discover ssh -u USER IP_HOSTNAME

    Sostituisci USER con l'utente della macchina.

    Quando richiesto, inserisci la password dell'utente.

  • Per specificare la modalità dettagliata, utilizza il flag -v:

    Linux

    ./mcdc discover ssh -u USER -v IP_HOSTNAME

    Windows

    mcdc.exe discover ssh -u USER -v IP_HOSTNAME

  • Per specificare il file della chiave privata SSH, utilizza il flag -i. Ad esempio, per specificare .ssh/my_private_key:

    Linux

    ./mcdc discover ssh -i ~/.ssh/my_private_key -u USER IP_HOSTNAME

    Windows

    mcdc.exe discover ssh -i ~/.ssh/my_private_key -u USER IP_HOSTNAME

  • Per specificare la password nella riga di comando, utilizza la modalità incorporata:

    Linux

    ./mcdc discover ssh --ssh-client embedded -u USER --passphrase PASSWORD IP_HOSTNAME

    Windows

    mcdc.exe discover ssh --ssh-client embedded -u USER --passphrase PASSWORD IP_HOSTNAME

    Poiché la forma incorporata del comando non utilizza i file di configurazione SSH locali per impostazione predefinita, assicurati che l'utente specificato nel comando possa accedere alla macchina tramite SSH e disponga dei privilegi sulla macchina per eseguire lo script di raccolta.

  • Per specificare il file della chiave privata SSH con la modalità incorporata, utilizza il flag -i:

    Linux

    ./mcdc discover ssh --ssh-client embedded -i ~/.ssh/id_rsa -u USER --password PASSWORD IP_HOSTNAME

    Windows

    mcdc.exe discover ssh --ssh-client embedded -i ~/.ssh/id_rsa -u USER --password PASSWORD IP_HOSTNAME

  • Il comando CLI mcdc ti consente di specificare la maggior parte dei flag SSH. Quindi, passa questi flag al comando ssh utilizzando il flag -a o --ssh-args. Ad esempio, per utilizzare un proxy SOCKS:

    Linux

    ./mcdc discover ssh -u USER -a '-o' -a 'ProxyCommand=nc -X 5 -x 127.0.0.1:proxy port %h %p' IP_HOSTNAME

    Windows

    mcdc.exe discover ssh -u USER -a '-o' -a 'ProxyCommand=nc -X 5 -x 127.0.0.1:proxy port %h %p' IP_HOSTNAME

Puoi esportare e valutare questi dati raccolti online in Migration Center o eseguire una valutazione offline.

Raccogliere i dati da remoto tramite WMI

Se vuoi eseguire una scoperta guest su una macchina Windows di destinazione con supporto WMI, puoi utilizzare il comando mcdc discover wmi sulla macchina Windows che ospita la CLI mcdc. La raccolta WMI è supportata solo nella versione Windows della CLI mcdc.

Per impostazione predefinita, la CLI mcdc raccoglie i dati utilizzando chiamate WMI remote, che è più veloce della raccolta basata su script. Tuttavia, le chiamate WMI remote non sono supportate su Windows Server 2008 e versioni precedenti. Se devi raccogliere dati da versioni precedenti di Windows o se riscontri problemi durante l'utilizzo di chiamate remote WMI, puoi utilizzare la raccolta basata su script aggiungendo il flag --script.

Quando utilizzi WMI, la CLI mcdc esegue le seguenti operazioni:

  1. Carica lo script di raccolta sul computer.
  2. Esegue lo script sulla macchina con le credenziali utente della macchina passate alla CLI mcdc.

  3. Scarica e importa i risultati in Migration Center.

Per raccogliere i dati tramite WMI:

  1. Accedi alla macchina Windows che ospita la CLI mcdc.
  2. Passa alla directory in cui hai scaricato la CLI mcdc.
  3. Raccogli i dati utilizzando uno dei seguenti metodi:

    • Per raccogliere dati con chiamate WMI remote, esegui questo comando:

      mcdc.exe discover wmi IP_HOSTNAME
      

      Sostituisci IP_HOSTNAME con il nome host IP del computer.

    • Per raccogliere i dati utilizzando la raccolta basata su script, utilizza il flag --script:

      mcdc.exe discover wmi --script IP_HOSTNAME
      
  4. Inserisci le tue credenziali quando richiesto.

Puoi esportare e valutare questi dati raccolti online in Migration Center o eseguire una valutazione offline.

Raccogliere dati su una singola macchina Linux

Per eseguire una raccolta guest localmente su una macchina Linux, puoi eseguire lo script mcdc-linux-collect.sh. Quindi, puoi copiare il file tar generato dallo script nella macchina che ospita la CLI mcdc e importarlo con il comando discover import.

In genere, lo script viene eseguito specificando l'opzione sudo. Se vuoi, puoi eseguire lo script utilizzando i privilegi dell'utente che esegue l'interfaccia a riga di comando mcdc. Tuttavia, lo script potrebbe non essere in grado di raccogliere tutti i dati richiesti.

  1. Accedi alla tua macchina.
  2. Passa alla directory in cui hai scaricato lo script di raccolta degli ospiti.
  3. Esegui lo script di raccolta sulla macchina:

    sudo ./mcdc-linux-collect.sh
    

    Lo script restituisce un file tar denominato mcdc-collect-MACHINE_NAME-TIMESTAMP.tar nella directory corrente. Il timestamp è nel formato YYYY-MM-DD-hh-mm.

    Fai clic per visualizzare il formato del file tar della raccolta ospite

    Il file tar ha il seguente formato:

    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 the version of the script
     

    (Facoltativo) Puoi passare l'argomento --output e specificare il percorso in cui vuoi salvare il file tar.

  4. Copia i dati raccolti dalla macchina di destinazione alla macchina host.

  5. Importa i dati raccolti sulla macchina host:

    Linux

    ./mcdc discover import PATH_TO_TAR

    Windows

    mcdc.exe discover import PATH_TO_TAR

    Sostituisci PATH_TO_TAR con il percorso del file tar.

Puoi esportare e valutare questi dati raccolti online in Migration Center o eseguire una valutazione offline.

Raccogliere dati su un singolo computer Windows

Per eseguire una raccolta guest localmente su una macchina Windows, puoi eseguire lo script mcdc-windows-collect.ps1. Dopodiché, puoi copiare il file ZIP generato dallo script nella macchina che ospita la CLI mcdc e importarlo con il comando discover import.

  1. Accedi alla tua macchina.
  2. Apri PowerShell utilizzando l'opzione Esegui come amministratore.
  3. Passa alla directory in cui hai scaricato la CLI mcdc.
  4. Esegui lo script di raccolta sulla macchina:

    powershell -ExecutionPolicy ByPass -File .\mcdc-windows-collect.ps1
    
  5. Lo script restituisce un file ZIP denominato mcdc-collect-MACHINE_NAME-TIMESTAMP.zip nella directory corrente.

    Se vuoi, puoi includere un percorso di output per specificare una posizione diversa:

    .\mcdc-windows-collect.ps1 PATH_FOR_OUTPUT.zip
    
  6. Importa i dati raccolti sulla macchina host:

    Linux

    ./mcdc discover import PATH_TO_TAR

    Windows

    mcdc.exe discover import PATH_TO_TAR

    Sostituisci PATH_TO_TAR con il percorso del file tar.

Puoi esportare i dati raccolti e valutarli online in Migration Center oppure eseguire una valutazione offline.

Passaggi successivi