Eseguire un rilevamento degli invitati

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 consente di analizzare e raccogliere dati sulle applicazioni in esecuzione sulle tue macchine, inclusi istanze di macchine virtuali (VM) e server fisici. Raccoglie inoltre dati su configurazione, hardware, rete e file aperti, servizi e processi.

Per le macchine in esecuzione su piattaforme per cui l'interfaccia a riga di comando del client predittiva del Centro di migrazione non supporta il rilevamento dell'inventario, come VM in esecuzione su Azure o macchine in esecuzione on-premise, nonché per una valutazione completa delle VM in esecuzione su VMware e AWS, puoi eseguire un rilevamento guest. Il rilevamento guest utilizza uno script di raccolta guest per raccogliere dati sulla macchina e li scrive in un file tar di raccolta guest per i computer Linux o in un file ZIP per i computer Windows.

La macchina che ospita l'interfaccia a riga di comando mcdc carica lo script sulla macchina di destinazione, lo esegue e poi scarica i risultati. Puoi eseguire lo script in locale sul computer di destinazione o in remoto. A seconda dell'infrastruttura, puoi scegliere di utilizzare l'interfaccia a riga di comando mcdc nei seguenti modi:

  • Per le VM Linux e Windows di cui è stato eseguito il deployment su VMware, l'interfaccia a riga di comando mcdc supporta l'esecuzione remota con il comando discover vsphere.
  • Per le macchine Linux accessibili tramite l'interfaccia a riga di comando mcdc, puoi eseguire un rilevamento remoto utilizzando SSH con il comando discover ssh.
  • Per i computer Windows accessibili dall'interfaccia a riga di comando mcdc, puoi eseguire un rilevamento remoto utilizzando la strumentazione di gestione di Windows (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 guest localmente, quindi 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 il download e l'esecuzione dell'interfaccia a riga di comando mcdc.
  2. Esamina i requisiti per scaricare ed eseguire gli script per la raccolta di invitati.
  3. Completa i passaggi per scaricare l'interfaccia a riga di comando mcdc.

Raccogli dati da remoto utilizzando gli strumenti VMware

Per le VM ospitate su vSphere, l'interfaccia a riga di comando mcdc può utilizzare gli strumenti VMware per eseguire il deployment e l'esecuzione degli script di raccolta da remoto sulle VM Linux e Windows. Quando utilizzi gli strumenti VMware, lo strumento dell'interfaccia a riga di comando mcdc esegue 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 la connessione a vSphere, che deve disporre dei seguenti privilegi sulla VM:
    • Modifiche alle operazioni guest
    • Esecuzione del programma per le operazioni guest
    • 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 l'accesso root consente all'interfaccia a riga di comando mcdc di raccogliere i dati richiesti per una valutazione completa.

Per raccogliere i dati utilizzando VMware Tools, segui questi passaggi:

  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 dei guest:

    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 MOREF
  5. Quando richiesto, inserisci la password per VCENTER_USER e VM_USER.

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

  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 dei guest:

    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 il rilevamento solo alle VM Windows o Linux utilizzando il flag --os-family oppure 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 il rilevamento a VM specifiche utilizzando il flag --path, come descritto per VMware in Eseguire un rilevamento dell'inventario.

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

Raccogli dati da remoto tramite SSH

Se la macchina che ospita l'interfaccia a riga di comando mcdc ha accesso SSH alla macchina Linux di destinazione (i computer Windows non sono supportati), l'interfaccia a riga di comando mcdc può connettersi alla macchina di destinazione tramite SSH per raccogliere i dati.

Quando utilizzi SSH, l'interfaccia a riga di comando mcdc esegue quanto segue:

  1. Carica lo script di raccolta sulla macchina.
  2. Esegue lo script sulla macchina con le credenziali dell'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:

  • Predefinito: utilizza il programma binario e le configurazioni ssh sulla macchina dell'interfaccia a riga di comando 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 la ospita.

    Inserisci la password quando richiesto o usa sshpass per inserire la password o la passphrase del file della chiave privata 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à consente di utilizzare il client SSH incorporato in caso di malfunzionamenti della modalità predefinita nel tuo ambiente. Tuttavia, non utilizza i file di configurazione SSH locali per impostazione predefinita. Puoi utilizzare il flag -i per specificare un file di chiave privata SSH.

Se utilizzi l'interfaccia a riga di comando mcdc su un computer 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 sul computer 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 a eseguire l'autenticazione sulla macchina con il nome utente, ti viene richiesta anche una password.

Scenari aggiuntivi relativi all'utilizzo di SSH

Guarda i seguenti scenari in cui potrebbe essere necessario 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 di 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é per impostazione predefinita la forma incorporata del comando non utilizza i file di configurazione SSH locali, assicurati che l'utente specificato nel comando sia in grado di accedere alla macchina tramite SSH e disponga dei privilegi della 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 dell'interfaccia a riga di comando mcdc 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 calze:

    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 oppure eseguire una valutazione offline.

Raccogli dati da remoto tramite WMI

Se vuoi eseguire un rilevamento guest su un computer Windows di destinazione con supporto WMI, puoi utilizzare il comando mcdc discover wmi sul computer Windows che ospita l'interfaccia a riga di comando mcdc. La raccolta WMI è supportata solo nella versione Windows dell'interfaccia a riga di comando mcdc.

Quando utilizzi WMI, l'interfaccia a riga di comando mcdc esegue quanto segue:

  1. Carica lo script di raccolta sulla macchina.
  2. Esegue lo script sulla macchina con le credenziali dell'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 al computer 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.

Raccolta di dati su singole macchine Linux

Per eseguire una raccolta guest in locale 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 l'interfaccia a riga di comando mcdc e importarlo con il comando discover import.

In genere, lo script viene eseguito specificando l'opzione sudo. Facoltativamente, 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 computer.
  2. Passa alla directory in cui hai scaricato lo script per la raccolta degli invitati.
  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 file tar per la 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 dal computer 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 oppure eseguire una valutazione offline.

Raccogli dati su un singolo computer Windows

Per eseguire una raccolta guest in locale su una macchina Windows, puoi eseguire lo script mcdc-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 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.

    Facoltativamente, 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