Neste documento, descrevemos as etapas para executar os diferentes métodos de descoberta de convidados
fornecidos pela CLI mcdc
.
Informações gerais
A descoberta de convidado permite verificar e coletar dados sobre os aplicativos em execução nas máquinas, o que inclui instâncias de máquina virtual (VM) e servidores físicos. Ele também coleta dados sobre configuração da máquina, hardware, rede, arquivos abertos, serviços e processos.
Para máquinas em execução em plataformas em que a CLI de discovery client da Central de migração não oferece suporte à descoberta de inventário, como VMs em execução no Azure ou máquinas em execução no local, bem como para uma avaliação completa das VMs em execução no VMware e na AWS, é possível executar uma descoberta de convidado. A descoberta de convidados usa um script de coleta de convidados para coletar dados sobre a máquina e os grava em um arquivo .tar de coleta de convidados para máquinas Linux ou em um ZIP para máquinas Windows.
A máquina que hospeda a CLI mcdc
faz upload do script para a
máquina de destino, executa-o e faz o download dos resultados. Você pode executar o script localmente na máquina de destino ou remotamente. Dependendo da sua
infraestrutura, é possível usar a CLI mcdc
das seguintes maneiras:
- Para VMs do Linux e do Windows implantadas no VMware, a CLI
mcdc
oferece suporte à execução remota com o comandodiscover vsphere
. - Para máquinas Linux acessíveis pela CLI
mcdc
, é possível executar uma descoberta remota usando SSH com o comandodiscover ssh
. - Para máquinas Windows acessíveis pela CLI
mcdc
, é possível executar uma descoberta remota usando a Instrumentação de Gerenciamento do Windows (WMI, na sigla em inglês) com o comandodiscover wmi
. - Para máquinas Linux e Windows sem conexão com a CLI
mcdc
, é possível fazer o download e executar os scripts de coleta de convidados localmente e, em seguida, importar manualmente os dados coletados para a máquina que hospeda a CLImcdc
.
O script de coleta de convidados executa uma série de comandos para coletar informações sobre a máquina de origem, além de informações de vários arquivos na máquina.
Antes de começar
- Revise os requisitos para fazer o download e executar a CLI
mcdc
. - Revise os requisitos para fazer o download e executar os scripts da coleção de convidados.
- Conclua as etapas para fazer o download da CLI
mcdc
.
Coletar dados remotamente usando ferramentas VMware
Para VMs hospedadas no vSphere, a CLI mcdc
pode usar ferramentas
VMware para implantar e executar os scripts de coleta remotamente em VMs do Linux e
do Windows. Ao usar ferramentas da VMware, a ferramenta da CLI mcdc
faz o seguinte:
- Faz o upload do script de coleta para a VM.
- Executa o script na VM.
- Faz o download e importa os resultados.
Dois conjuntos de credenciais são necessários para coletar dados remotamente:
- O nome de usuário do servidor vCenter transmitido para a CLI
mcdc
para se conectar ao vSphere, que precisa ter os seguintes privilégios na VM:- Modificar operação de convidado
- Executar programa de operação de convidado
- Consultas de operação de convidado
- Credenciais de usuário para a VM:
- No Windows, você precisa ter privilégios de administrador.
- No Linux, o acesso raiz não é obrigatório, mas ele permite que a
CLI
mcdc
colete os dados necessários para uma avaliação completa.
Para coletar dados usando ferramentas VMware, siga estas etapas:
- Faça login na VM do Linux que hospeda a CLI
mcdc
. - Mude para o diretório em que você fez o download da CLI
mcdc
. - Verifique se a VM está ligada.
Execute a descoberta de convidado:
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
Substitua:
- VCENTER_USER: o usuário do servidor vCenter
- VM_USER: o usuário da VM
- VM_ID: o nome da VM ou MOREF.
Quando solicitado, insira a senha de VCENTER_USER e VM_USER.
Para coletar dados de várias VMs do vSphere em paralelo usando ferramentas da VMware, siga estas etapas:
- Faça login na VM do Linux que hospeda a CLI
mcdc
. - Mude para o diretório em que você fez o download da CLI
mcdc
. - Verifique se todas as VMs estão ligadas.
Execute a descoberta de convidado:
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
Substitua TIMEOUT_IN_SECONDS pelo tempo limite em segundos.
Opcionalmente, limite a descoberta apenas a VMs do Windows ou Linux usando a sinalização
--os-family
ou altere o nível de paralelismo usando a sinalização--max-parallelism
.Quando solicitado, insira a senha de VCENTER_USER e VM_USER.
Também é possível definir o escopo da descoberta para VMs específicas usando a sinalização
--path
, conforme descrito para o VMware em Executar uma descoberta de inventário.
É possível exportar e avaliar os dados coletados on-line na Central de migração ou executar uma avaliação off-line.
Coletar dados remotamente por SSH
Se a máquina que hospeda a CLI mcdc
tiver acesso SSH à
máquina Linux de destino (máquinas Windows não são compatíveis), a CLI mcdc
poderá se conectar à máquina de destino por SSH para coletar dados.
Ao usar SSH, a CLI mcdc
faz o seguinte:
- Faz upload do script de coleta na máquina.
Executa o script na máquina com as credenciais de usuário da máquina transmitidas para a CLI
mcdc
.Faz o download e importa os resultados.
Modos SSH compatíveis
Se você estiver usando a CLI mcdc
em uma máquina Linux,
poderá usar dois modos para executar o SSH:
Padrão:usa o binário
ssh
e as configurações na máquina da CLImcdc
. O modo padrão pode usar os arquivos de configuração SSH local por padrão, como~/.ssh/config
e~/.ssh/known_hosts
, da estação de trabalho que o hospeda.Insira a senha quando solicitado ou use
sshpass
para transmitir a senha ou a senha longa do arquivo da chave privada na linha de comando. Exemplo:sshpass -p password mcdc discover ssh IP_ADDRESS
Substitua IP_ADDRESS pelo endereço IP da máquina.
Embedded: usa a biblioteca SSH integrada. que permite usar o cliente SSH incorporado caso o modo padrão não funcione no ambiente. No entanto, ele não usa os arquivos de configuração SSH locais por padrão. É possível usar a sinalização
-i
para especificar um arquivo de chave privada SSH.
Se você estiver usando a CLI mcdc
em uma máquina Windows,
somente o modo incorporado será aceito.
Executar a coleção
Para coletar dados por SSH, siga estas etapas:
- Faça login na máquina Linux que hospeda a CLI
mcdc
. - Mude para o diretório em que você fez o download da CLI
mcdc
. Coletar dados:
Linux
./mcdc discover ssh IP_HOSTNAME
Windows
mcdc.exe discover ssh IP_HOSTNAME
Substitua IP_HOSTNAME pelo nome do host do IP da máquina.
O arquivo de chave privada SSH do usuário que invoca a CLI
mcdc
é usado para a autenticação SSH.Quando solicitado, digite o nome de usuário de uma conta na máquina Linux. O script de coleta é executado com essas credenciais. Se a chave privada SSH do usuário que invoca a CLI
mcdc
não for autenticada na máquina com o nome de usuário, você também precisará inserir uma senha.
Outros cenários ao usar o SSH
Confira os seguintes cenários em que pode ser necessário modificar o comando:
Para especificar o usuário da máquina com o modo padrão, use a sinalização
-u
:Linux
./mcdc discover ssh -u USER IP_HOSTNAME
Windows
mcdc.exe discover ssh -u USER IP_HOSTNAME
Substitua USER pelo usuário da máquina.
Quando solicitado, insira a senha do usuário.
Para especificar o modo detalhado, use a sinalização
-v
:Linux
./mcdc discover ssh -u USER -v IP_HOSTNAME
Windows
mcdc.exe discover ssh -u USER -v IP_HOSTNAME
Para especificar o arquivo de chave privada SSH, use a sinalização
-i
. Por exemplo, para especificar.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
Para especificar a senha na linha de comando, use o modo incorporado:
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
Como o formato incorporado do comando não usa os arquivos de configuração SSH locais por padrão, verifique se o usuário especificado no comando pode acessar a máquina por SSH e tem privilégios nela para executar o script de coleta.
Para especificar o arquivo de chave privada SSH com o modo incorporado, use a sinalização
-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
O comando
mcdc
da CLI permite especificar a maioria das sinalizações SSH. Em seguida, ele transmite essas sinalizações para o comandossh
usando a sinalização-a
ou--ssh-args
. Por exemplo, para usar um 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
É possível exportar e avaliar os dados coletados on-line na Central de migração ou executar uma avaliação off-line.
Coletar dados remotamente por WMI
Para realizar uma descoberta de convidado em uma máquina Windows de destino com suporte a
WMI, use o comando mcdc discover wmi
na máquina Windows
que hospeda a CLI mcdc
. A coleção de WMI só tem suporte
à versão do Windows da CLI mcdc
.
Ao usar a WMI, a CLI mcdc
faz o seguinte:
- Faz upload do script de coleta na máquina.
Executa o script na máquina com as credenciais de usuário da máquina transmitidas para a CLI
mcdc
.Faz o download e importa os resultados.
Para coletar dados pela WMI, siga estas etapas:
- Faça login na máquina Windows que hospeda a CLI
mcdc
. - Mude para o diretório em que você fez o download da
CLI
mcdc
. Coletar dados:
mcdc.exe discover wmi IP_HOSTNAME
Substitua IP_HOSTNAME pelo nome do host do IP da máquina.
Insira suas credenciais quando solicitado.
Coletar dados em máquinas Linux individuais
Para executar uma coleção de convidados localmente em uma máquina Linux, execute o script mcdc-linux-collect.sh
.
Em seguida, copie o arquivo tar gerado pelo script para a máquina que
hospeda a CLI mcdc
e importe-o com o
comando discover import
.
Normalmente, o script é executado especificando a opção sudo
.
Outra opção é executar o script usando os privilégios do usuário que executa
a CLI mcdc
. No entanto, talvez o script não seja capaz de coletar todos os dados necessários.
- Faça login na sua máquina.
- Mude para o diretório em que você fez o download do script de coleção de convidados.
Execute o script de coleta na máquina:
sudo ./mcdc-linux-collect.sh
O script gera um arquivo tar chamado
mcdc-collect-MACHINE_NAME-TIMESTAMP.tar
para o diretório atual. O carimbo de data/hora está no formatoYYYY-MM-DD-hh-mm
.Clique para conferir o formato do arquivo .tar da coleção de convidados
O arquivo tar tem o seguinte 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
Opcionalmente, transmita o argumento
--output
e especifique o caminho em que você quer salvar o arquivo tar.Copie os dados coletados da máquina de destino para a máquina host.
Importe os dados coletados na máquina host:
Linux
./mcdc discover import PATH_TO_TAR
Windows
mcdc.exe discover import PATH_TO_TAR
Substitua PATH_TO_TAR pelo caminho do arquivo tar.
É possível exportar e avaliar os dados coletados on-line na Central de migração ou executar uma avaliação off-line.
Coletar dados em uma máquina Windows individual
Para executar uma coleção de convidados localmente em uma máquina Windows, execute o script mcdc-windows-collect.ps1
.
Em seguida, é possível copiar o arquivo ZIP gerado pelo script para a máquina que
hospeda a CLI mcdc
e importá-lo com o
comando discover import
.
- Faça login na sua máquina.
- Abra o PowerShell usando a opção Executar como administrador.
- Mude para o diretório em que você fez o download da CLI
mcdc
. Execute o script de coleta na máquina:
powershell -ExecutionPolicy ByPass -File .\mcdc-windows-collect.ps1
O script gera um arquivo ZIP chamado
mcdc-collect-MACHINE_NAME-TIMESTAMP.zip
para o diretório atual.Também é possível incluir um caminho de saída para especificar um local diferente:
.\mcdc-windows-collect.ps1 PATH_FOR_OUTPUT.zip
Importe os dados coletados na máquina host:
Linux
./mcdc discover import PATH_TO_TAR
Windows
mcdc.exe discover import PATH_TO_TAR
Substitua PATH_TO_TAR pelo caminho do arquivo tar.
É possível exportar os dados coletados e avaliá-los on-line na Central de migração ou executar uma avaliação off-line.
A seguir
- Saiba como executar uma verificação de intervalo de IP.
- Saiba como exportar os dados coletados para a Central de migração.