En este documento se describen los pasos para ejecutar los diferentes métodos de detección de invitados que proporciona la CLI de mcdc.
Información general
La detección de invitados te permite analizar y recoger datos sobre las aplicaciones que se están ejecutando en tus máquinas, lo que incluye tanto instancias de máquinas virtuales como servidores físicos. También recoge datos sobre la configuración, el hardware y la red del equipo, así como sobre los archivos, servicios y procesos abiertos.
En el caso de las máquinas que se ejecutan en plataformas para las que la CLI del cliente de descubrimiento de Migration Center no admite el descubrimiento de inventario, como las máquinas virtuales que se ejecutan en Azure o las máquinas que se ejecutan de forma local, así como para realizar una evaluación completa de las máquinas virtuales que se ejecutan en VMware y AWS, puedes ejecutar un descubrimiento de invitado. El descubrimiento de invitados usa una secuencia de comandos de colección de invitados para recoger datos sobre la máquina y escribe esos datos en un archivo tar de colección de invitados para máquinas Linux o en un archivo zip para máquinas Windows.
La máquina que aloja la CLI de mcdc sube la secuencia de comandos a la máquina de destino, la ejecuta y, a continuación, descarga los resultados. Puedes ejecutar la secuencia de comandos de forma local en la máquina de destino o de forma remota. En función de tu infraestructura, puedes usar la CLI de mcdc de las siguientes formas:
- En el caso de las VMs Linux y Windows implementadas en VMware, la
mcdcCLI admite la ejecución remota con el comandodiscover vsphere. - En los equipos Linux a los que se puede acceder mediante la CLI de
mcdc, puedes realizar una detección remota mediante SSH con el comandodiscover ssh. - En los equipos Windows a los que se puede acceder mediante la CLI de
mcdc, puedes realizar una detección remota con la instrumentación de gestión de Windows (WMI) mediante el comandodiscover wmi. - En el caso de las máquinas Linux y Windows que no tengan conexión con la CLI de
mcdc, puedes descargar y ejecutar las secuencias de comandos de recogida de invitados de forma local y, a continuación, importar manualmente los datos recogidos a la máquina que aloja la CLI demcdc.
La secuencia de comandos de recogida de invitado ejecuta una serie de comandos para recoger información sobre la máquina de origen y también recoge información de varios archivos de la máquina.
Antes de empezar
- Consulta los requisitos para descargar y ejecutar la CLI de
mcdc. - Consulta los requisitos para descargar y ejecutar las secuencias de comandos de recogida de invitados.
- Sigue los pasos para descargar la CLI de
mcdc.
Recopilar datos de forma remota con las herramientas de VMware
En el caso de las VMs alojadas en vSphere, la CLI de mcdc puede usar VMware Tools para implementar y ejecutar las secuencias de comandos de recogida de forma remota en VMs Linux y Windows. Cuando se usan las herramientas de VMware, la herramienta de línea de comandos mcdc hace lo siguiente:
- Sube la secuencia de comandos de la colección a la VM.
- Ejecuta la secuencia de comandos en la VM.
- Descarga e importa los resultados.
Para recoger datos de forma remota, se necesitan dos conjuntos de credenciales:
- Nombre de usuario del servidor vCenter que se ha transferido a la interfaz de línea de comandos
mcdcpara conectarse a vSphere. Debe tener los siguientes privilegios en la máquina virtual:- Modificaciones de operaciones de invitados
- Ejecución del programa de operaciones de invitado
- Consultas de operaciones de invitado
- Credenciales de usuario de la VM:
- En Windows, debes tener privilegios de administrador.
- En Linux, no es necesario tener acceso de superusuario, pero este acceso permite que la CLI de
mcdcrecoja los datos necesarios para realizar una evaluación completa.
Para recoger datos con las herramientas de VMware, sigue estos pasos:
- Inicia sesión en tu máquina virtual Linux que aloja la interfaz de línea de comandos de
mcdc. - Cambia al directorio en el que has descargado la CLI
mcdc. - Comprueba que la máquina virtual esté encendida.
Ejecuta el descubrimiento de invitados:
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
Haz los cambios siguientes:
- VCENTER_USER: el usuario del servidor de vCenter
- VM_USER: el usuario de la VM
- VM_ID: el nombre de la VM o MOREF
Cuando se te pida, introduce la contraseña de VCENTER_USER y VM_USER.
Para recoger datos de varias máquinas virtuales de vSphere en paralelo mediante las herramientas de VMware, sigue estos pasos:
- Inicia sesión en tu máquina virtual Linux que aloja la interfaz de línea de comandos de
mcdc. - Cambia al directorio en el que has descargado la CLI
mcdc. - Asegúrate de que todas las máquinas virtuales estén encendidas.
Ejecuta el descubrimiento de invitados:
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
Sustituye TIMEOUT_IN_SECONDS por el tiempo de espera en segundos.
Opcionalmente, puedes limitar la detección a solo VMs de Windows o Linux mediante la marca
--os-familyo cambiar el nivel de paralelismo mediante la marca--max-parallelism.Cuando se te solicite, introduce la contraseña de VCENTER_USER y VM_USER.
También puedes limitar el descubrimiento a máquinas virtuales específicas con la marca
--path, tal como se describe en Ejecutar un descubrimiento de inventario para VMware.
Puede exportar y evaluar estos datos recogidos online en Migration Center o realizar una evaluación offline.
Recoger datos de forma remota a través de SSH
Si la máquina que aloja la CLI de mcdc tiene acceso SSH a la máquina Linux de destino (no se admiten máquinas Windows), la CLI de mcdc puede conectarse a la máquina de destino a través de SSH para recoger datos.
Cuando se usa SSH, la CLI mcdc hace lo siguiente:
- Sube la secuencia de comandos de la colección al equipo.
Ejecuta la secuencia de comandos en la máquina con las credenciales de usuario de la máquina transferidas a la CLI de
mcdc.Descarga e importa los resultados.
Modos SSH admitidos
Si usas la CLI de mcdc en un equipo Linux, puedes usar dos modos para ejecutar SSH:
Predeterminado: usa el archivo binario
sshy las configuraciones de la máquina de la CLImcdc. El modo predeterminado puede usar los archivos de configuración SSH locales de forma predeterminada, como~/.ssh/configy~/.ssh/known_hosts, de la estación de trabajo que lo aloja.Introduce la contraseña cuando se te solicite o usa
sshpasspara transferir la contraseña o la contraseña del archivo de clave privada en la línea de comandos. Por ejemplo:sshpass -p password mcdc discover ssh IP_ADDRESSSustituye IP_ADDRESS por la dirección IP del ordenador.
Insertado: usa la biblioteca SSH integrada. Este modo te permite usar el cliente SSH integrado si el modo predeterminado no funciona correctamente en tu entorno. Sin embargo, no usa los archivos de configuración SSH locales de forma predeterminada. Puedes usar la marca
-ipara especificar un archivo de clave privada SSH.
Si usas la CLI de mcdc en un ordenador Windows, solo se admite el modo insertado.
Ejecutar la colección
Para recoger datos a través de SSH, sigue estos pasos:
- Inicia sesión en el equipo Linux que aloja la CLI de
mcdc. - Cambia al directorio en el que has descargado la CLI
mcdc. Recoge datos.
Linux
./mcdc discover ssh IP_HOSTNAME
Windows
mcdc.exe discover ssh IP_HOSTNAME
Para descubrir y recoger recursos de bases de datos, usa la marca
--db-engine:Linux
./mcdc discover ssh IP_HOSTNAME --db-engine=DB_ENGINE
Windows
mcdc.exe discover ssh IP_HOSTNAME --db-engine=DB_ENGINE
Haz los cambios siguientes:
- IP_HOSTNAME: el nombre de host IP del equipo.
- DB_ENGINE: el motor de la base de datos que se va a recoger. Los valores admitidos son
sqlserver,mysqlypostgresql.
El archivo de clave privada SSH del usuario que invoca la CLI
mcdcse usa para la autenticación SSH.Cuando se te pida, introduce el nombre de usuario de una cuenta en el ordenador Linux. La secuencia de comandos de la colección se ejecuta con estas credenciales. Si la clave privada SSH del usuario que invoca la CLI de
mcdcno se autentica en la máquina con el nombre de usuario, también se te pedirá una contraseña.
Otros casos en los que se usa SSH
Consulta los siguientes casos en los que puede que tengas que modificar el comando:
Para especificar el usuario de la máquina con el modo predeterminado, usa la marca
-u:Linux
./mcdc discover ssh -u USER IP_HOSTNAME
Windows
mcdc.exe discover ssh -u USER IP_HOSTNAME
Sustituye USER por el usuario de la máquina.
Cuando se te pida, introduce la contraseña del usuario.
Para especificar el modo detallado, usa la marca
-v:Linux
./mcdc discover ssh -u USER -v IP_HOSTNAME
Windows
mcdc.exe discover ssh -u USER -v IP_HOSTNAME
Para especificar el archivo de clave privada SSH, usa la marca
-i. Por ejemplo, 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 la contraseña en la línea de comandos, usa el modo insertado:
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 la forma insertada del comando no usa los archivos de configuración SSH locales de forma predeterminada, asegúrate de que el usuario que especifiques en el comando pueda acceder a la máquina a través de SSH y tenga privilegios en la máquina para ejecutar la secuencia de comandos de recogida.
Para especificar el archivo de clave privada SSH con el modo insertado, usa la marca
-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
El comando de la CLI
mcdcte permite especificar la mayoría de las marcas de SSH. A continuación, pasa estas marcas al comandosshmediante la marca-ao--ssh-args. Por ejemplo, para usar un proxy SOCKS, haz lo siguiente: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
Puede exportar y evaluar estos datos recogidos online en Migration Center o realizar una evaluación offline.
Recoger datos de forma remota a través de WMI
Si quieres realizar una detección de invitado en un equipo Windows de destino con compatibilidad con WMI, puedes usar el comando mcdc discover wmi en el equipo Windows que aloja la CLI mcdc. La colección de WMI solo se admite en la versión de Windows de la CLI de mcdc.
De forma predeterminada, la CLI de mcdc recoge datos mediante llamadas WMI remotas, lo que es más rápido que la recogida basada en secuencias de comandos. Sin embargo, las llamadas WMI remotas no se admiten en Windows Server 2008 ni en versiones anteriores.
Si necesitas recoger datos de versiones anteriores de Windows o tienes problemas al usar llamadas remotas de WMI, puedes usar la recogida basada en secuencias de comandos añadiendo la marca --script.
Cuando se usa WMI, la CLI de mcdc hace lo siguiente:
- Sube la secuencia de comandos de la colección al equipo.
Ejecuta la secuencia de comandos en la máquina con las credenciales de usuario de la máquina que se han transferido a la CLI de
mcdc.Descarga e importa los resultados al Centro de migración.
Para recoger datos a través de WMI, sigue estos pasos:
- Inicia sesión en el equipo Windows que aloja la CLI de
mcdc. - Cambia al directorio en el que has descargado la CLI
mcdc. Recopila datos con uno de los siguientes métodos:
Para recoger datos con llamadas WMI remotas, ejecuta el siguiente comando:
mcdc.exe discover wmi IP_HOSTNAMESustituye IP_HOSTNAME por el nombre de host IP de la máquina.
Para recoger datos mediante la recogida basada en secuencias de comandos, usa la marca
--script:mcdc.exe discover wmi --script IP_HOSTNAME
Introduce tus credenciales cuando se te solicite.
Puede exportar y evaluar estos datos recogidos online en Migration Center o realizar una evaluación offline.
Recoger datos en un ordenador Linux concreto
Para realizar una recogida de invitado de forma local en una máquina Linux, puedes ejecutar la secuencia de comandos mcdc-linux-collect.sh.
A continuación, puedes copiar el archivo tar generado por la secuencia de comandos en la máquina que aloja la CLI de mcdc e importarlo con el comando discover import.
Normalmente, el script se ejecuta especificando la opción sudo.
También puedes ejecutar la secuencia de comandos con los privilegios del usuario que ejecuta la CLI de mcdc. Sin embargo, es posible que la secuencia de comandos no pueda recoger todos los datos necesarios.
- Inicia sesión en tu máquina.
- Cambia al directorio en el que has descargado la secuencia de comandos de la colección de invitados.
Ejecuta la secuencia de comandos de recogida en el equipo:
sudo ./mcdc-linux-collect.shLa secuencia de comandos genera un archivo tar llamado
mcdc-collect-MACHINE_NAME-TIMESTAMP.taren el directorio actual. La marca de tiempo tiene el formatoYYYY-MM-DD-hh-mm.Haz clic para ver el formato del archivo tar de la colección de invitados
El archivo tar tiene el siguiente 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
También puedes pasar el argumento
--outputy especificar la ruta en la que quieres guardar el archivo tar.Copia los datos recogidos del equipo de destino al equipo host.
Importa los datos recogidos en el equipo host:
Linux
./mcdc discover import PATH_TO_TAR
Windows
mcdc.exe discover import PATH_TO_TAR
Sustituye PATH_TO_TAR por la ruta al archivo tar.
Puede exportar y evaluar estos datos recogidos online en Migration Center o realizar una evaluación offline.
Recoger datos en un equipo Windows concreto
Para realizar una recogida de invitado de forma local en un equipo Windows, puedes ejecutar la secuencia de comandos mcdc-windows-collect.ps1.
A continuación, puedes copiar el archivo ZIP generado por la secuencia de comandos en la máquina que aloja la CLI de mcdc e importarlo con el comando discover import.
- Inicia sesión en tu máquina.
- Abre PowerShell con la opción Ejecutar como administrador.
- Cambia al directorio en el que has descargado la CLI
mcdc. Ejecuta la secuencia de comandos de recogida en el equipo:
powershell -ExecutionPolicy ByPass -File .\mcdc-windows-collect.ps1La secuencia de comandos genera un archivo ZIP llamado
mcdc-collect-MACHINE_NAME-TIMESTAMP.zipen el directorio actual.También puede incluir una ruta de salida para especificar otra ubicación:
.\mcdc-windows-collect.ps1 PATH_FOR_OUTPUT.zipImporta los datos recogidos en el equipo host:
Linux
./mcdc discover import PATH_TO_TAR
Windows
mcdc.exe discover import PATH_TO_TAR
Sustituye PATH_TO_TAR por la ruta al archivo tar.
Puede exportar los datos recogidos y evaluarlos online en Migration Center o realizar una evaluación sin conexión.
Siguientes pasos
- Consulta cómo ejecutar un análisis de intervalo de IP.
- Consulta cómo exportar datos recogidos al Centro de Migración.