Esegui un rilevamento degli ospiti

Questo documento descrive i passaggi per eseguire i diversi metodi di rilevamento degli ospiti forniti dalla CLI mcdc.

Panoramica

La funzionalità di rilevamento degli ospiti ti consente di eseguire la scansione e raccogliere dati sulle applicazioni in esecuzione sulle tue macchine, inclusi sia le istanze di macchine virtuali (VM) sia i server fisici. Raccoglie inoltre dati sulla configurazione, sull'hardware e sulla rete del computer, nonché su file, servizi e processi aperti.

Per le macchine in esecuzione su piattaforme per le quali la CLI del client di rilevamento di Migration Center non supporta la ricerca dell'inventario, ad esempio le VM in esecuzione su Azure o le macchine on-premise, nonché per una valutazione completa delle VM in esecuzione su VMware e AWS, puoi eseguire una ricerca di guest. La funzionalità di rilevamento degli ospiti utilizza uno script di raccolta degli ospiti per raccogliere i dati sulla macchina e li scrive in un file tar di raccolta degli ospiti per le macchine Linux o in un file zip per le macchine Windows.

La macchina che ospita l'interfaccia a riga di comando mcdc carica lo script sulla macchina di destinazione, lo esegue e scarica i risultati. Puoi eseguire lo script localmente sulla macchina di destinazione o da remoto. A seconda della tua infrastruttura, puoi scegliere di utilizzare l'mcdc CLI 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 dall'interfaccia a riga di comando mcdc, puoi eseguire una ricerca remota utilizzando SSH con il comando discover ssh.
  • Per i computer Windows accessibili dall'interfaccia a riga di comando mcdc, puoi eseguire una ricerca 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 gli script di raccolta degli ospiti localmente, quindi importare manualmente i dati raccolti nella macchina che ospita l'interfaccia a riga di comando mcdc.

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

Prima di iniziare

  1. Esamina i requisiti per scaricare ed eseguire l'interfaccia a riga di comando mcdc.
  2. Esamina i requisiti per scaricare ed eseguire gli script di raccolta dei dati degli ospiti.
  3. Completa i passaggi per scaricare l'interfaccia a riga di comando mcdc.

Raccogliere i dati da remoto utilizzando gli strumenti VMware

Per le VM ospitate su vSphere, la CLI mcdc può utilizzare gli strumenti VMware per eseguire il deployment ed eseguire gli script di raccolta da remoto sia sulle VM Linux sia su quelle 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 necessari due set di credenziali:

  • Il nome utente del server vCenter passato all'interfaccia a riga di comando mcdc per collegarsi a vSphere, che deve disporre dei seguenti privilegi sulla VM:
    • Modifiche all'operazione ospite
    • Esecuzione del programma di operazioni ospite
    • Query sulle operazioni guest
  • Credenziali utente per la VM:
    • Su Windows, devi disporre dei privilegi di amministratore.
    • Su Linux, l'accesso root non è richiesto, ma consente alla CLI di 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 l'interfaccia a riga di comando mcdc.
  2. Passa alla directory in cui hai scaricato l'interfaccia a riga di comando 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 della VM
    • VM_ID: il nome della VM o del file MOREF
  5. Quando richiesto, inserisci la password per VCENTER_USER e VM_USER.

Per raccogliere dati da più VM vSphere in parallelo utilizzando gli strumenti VMware:

  1. Accedi alla VM Linux che ospita l'interfaccia a riga di comando mcdc.
  2. Passa alla directory in cui hai scaricato l'interfaccia a riga di comando 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.

    Se vuoi, limita la ricerca solo alle 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'ambito della scoperta a VM specifiche utilizzando il --path flag, come descritto per VMware in Eseguire una scoperta dell'inventario.

Puoi esportare e valutare questi dati raccolti online nel Centro di migrazione o eseguire una valutazione offline.

Raccogliere i dati da remoto tramite SSH

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

Quando utilizzi SSH, l'interfaccia a riga di comando mcdc esegue le seguenti operazioni:

  1. Carica lo script di raccolta sulla macchina.
  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 una macchina Linux, puoi utilizzare due modalità per eseguire SSH:

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

    Inserisci la password quando richiesto oppure utilizza sshpass per passare la password o la passphrase del file della chiave privata sulla 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 della chiave privata SSH.

Se utilizzi l'interfaccia a riga di comando 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 l'interfaccia a riga di comando mcdc.
  2. Passa alla directory in cui hai scaricato l'interfaccia a riga di comando mcdc.
  3. Raccogli i dati:

    Linux

    ./mcdc discover ssh IP_HOSTNAME

    Windows

    mcdc.exe discover ssh IP_HOSTNAME

    Sostituisci IP_HOSTNAME con il nome host IP della macchina.

  4. Il file della chiave privata SSH dell'utente che richiama l'interfaccia a riga di comando 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 la chiave privata SSH dell'utente che richiama l'interfaccia a riga di comando mcdc non riesce ad autenticarsi sulla macchina con il nome utente, ti viene chiesta anche una password.

Scenari aggiuntivi quando si utilizza SSH

Di seguito sono riportati gli scenari 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 sulla 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 mcdc CLI ti consente di specificare la maggior parte dei flag SSH. Poi li passa 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 nel Centro di migrazione o eseguire una valutazione offline.

Raccogliere i dati da remoto tramite WMI

Se vuoi eseguire una ricerca di guest su una macchina Windows di destinazione con il supporto di WMI, puoi utilizzare il comando mcdc discover wmi sulla macchina Windows che ospita l'interfaccia a riga di comando mcdc. La raccolta WMI è supportata solo sulla versione Windows dell'interfaccia a riga di comando mcdc.

Quando utilizzi WMI, l'interfaccia a riga di comando mcdc esegue le seguenti operazioni:

  1. Carica lo script di raccolta sulla macchina.
  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.

Per raccogliere i dati tramite WMI:

  1. Accedi alla macchina Windows che ospita l'interfaccia a riga di comando mcdc.
  2. Passa alla directory in cui hai scaricato l'interfaccia a riga di comando mcdc.
  3. Raccogli i dati:

    mcdc.exe discover wmi IP_HOSTNAME
    

    Sostituisci IP_HOSTNAME con il nome host IP della macchina.

  4. Inserisci le tue credenziali quando richiesto.

Raccogliere i dati su una singola macchina Linux

Per eseguire una raccolta di dati guest localmente su una macchina Linux, puoi eseguire lo scriptmcdc-linux-collect.sh. Poi, puoi copiare il file tar generato dallo script nella macchina che ospita l'interfaccia a riga di comando 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 al tuo computer.
  2. Vai alla directory in cui hai scaricato lo script della raccolta ospite.
  3. Esegui lo script di raccolta sulla macchina:

    sudo ./mcdc-linux-collect.sh
    

    Lo script genera 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 di ospiti

    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
     

    Se vuoi, 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 nel Centro di migrazione o eseguire una valutazione offline.

Raccogliere i dati su un singolo computer Windows

Per eseguire una raccolta ospite localmente su una macchina Windows, puoi eseguire lo scriptmcdc-windows-collect.ps1. Quindi, puoi copiare il file ZIP generato dallo script nella macchina che ospita l'interfaccia a riga di comando mcdc e importarlo con il comando discover import.

  1. Accedi al tuo computer.
  2. Apri PowerShell utilizzando l'opzione Esegui come amministratore.
  3. Passa alla directory in cui hai scaricato l'interfaccia a riga di comando mcdc.
  4. Esegui lo script di raccolta sulla macchina:

    powershell -ExecutionPolicy ByPass -File .\mcdc-windows-collect.ps1
    
  5. Lo script genera 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 nel Centro di migrazione oppure eseguire una valutazione offline.

Passaggi successivi