En este tutorial se explica cómo descubrir y recoger datos de un lote de instancias de máquina virtual (VM) de VMware mediante la CLI de Discovery Client de Migration Center. Puede ser difícil monitorizar y solucionar problemas de grandes lotes de máquinas virtuales. Te recomendamos que los agrupes en lotes más pequeños de menos de 1000.
Objetivos
En este tutorial aprenderás a:
- Descarga la CLI
mcdc
. - Ejecuta un descubrimiento de inventario de VMware.
- Genera un archivo CSV con todas las máquinas virtuales detectadas.
- Divide el archivo CSV en varios archivos CSV que contengan un subconjunto de las máquinas virtuales.
- Ejecuta la detección de invitados en todas las máquinas virtuales de un archivo CSV.
- Genera un informe de evaluación sin conexión.
Costes
En este tutorial se usan recursos locales y no se incurre en ningún coste. Google Cloud
Antes de empezar
Prepara un equipo Linux para instalar y ejecutar la CLI de
mcdc
. El dispositivo Linux debe cumplir los siguientes requisitos mínimos:glibc
versión 2.25 o posterior- 4 GB de RAM y 10 GB de espacio en disco
- Conectividad de red a vCenter y a los hosts ESX
Asegúrate de que tienes un usuario de vSphere con los permisos necesarios:
- Privilegios de lectura de las VMs
- Privilegios de lectura en todos los hosts ESX
- Modificaciones de operaciones de invitado
- Ejecución del programa de operaciones de invitado
- Consultas de operaciones de invitados
Descargar la CLI de mcdc
- Conéctate al equipo Linux:
ssh MACHINE_IP
Sustituye MACHINE_IP por la dirección IP de tu máquina Linux.
- Descarga la versión más reciente de la CLI de
mcdc
y haz que sea ejecutable:curl -O "https://mcdc-release.storage.googleapis.com/$(curl -s https://mcdc-release.storage.googleapis.com/latest)/mcdc" chmod +x mcdc
- Añade la CLI de
mcdc
a la ruta de tu shell:PATH=$PATH:`pwd`
Realizar un descubrimiento de inventario de VMware
Ejecuta el descubrimiento de inventario:
./mcdc discover vsphere -u USERNAME --url https://VSPHERE_URL
Haz los cambios siguientes:
- USERNAME: tu nombre de usuario de vCenter
- VSPHERE_URL: la URL de su instancia de vCenter Server o de vSphere Client.
El resultado del comando
discover
es similar al siguiente:[+] Found 528 VMs Collecting data... 528 / 528 [---------------------------------------------------] 100.00% 5 p/s [✓] Collection completed.
Generar un archivo CSV con todas las máquinas virtuales detectadas
Para generar un archivo CSV, usa la secuencia de comandos export
del repositorio Migrate to Containers en GitHub.
La secuencia de comandos usa el comando report
para generar un archivo CSV que contenga todas las máquinas virtuales que se han descubierto en el paso anterior.
Descarga la secuencia de comandos:
curl -O https://raw.githubusercontent.com/GoogleCloudPlatform/migrate-to-containers/main/scripts/mcdc/mcdc_discovery_export_guest_tools.sh chmod +x mcdc_discovery_export_guest_tools.sh
Ejecuta la secuencia de comandos y guarda el resultado en un archivo:
./mcdc_discovery_export_guest_tools.sh > VMS_CSV_FILE
Sustituye VMS_CSV_FILE por el nombre que quieras asignar al archivo CSV.
Divide el archivo CSV en varios archivos CSV con un subconjunto de las máquinas virtuales
Para dividir el archivo CSV de gran tamaño en archivos CSV más pequeños, usa la secuencia de comandos splitter
del repositorio Migrate to Containers en GitHub.
Descarga la secuencia de comandos:
curl -O https://raw.githubusercontent.com/GoogleCloudPlatform/migrate-to-containers/main/scripts/mcdc/csv_splitter.sh chmod +x csv_splitter.sh
Ejecuta la secuencia de comandos:
./csv_splitter.sh VMS_CSV_FILE CSV_FILES_PREFIX LINES_PER_FILE VMS_CSV_FILE CSV_FILES_PREFIX
Haz los cambios siguientes:
- VMS_CSV_FILE: el archivo CSV de entrada que se va a dividir.
- CSV_FILES_PREFIX: el prefijo de los archivos CSV generados.
- LINES_PER_FILE: número de líneas por archivo CSV generado. El valor predeterminado es
10
.
La secuencia de comandos genera varios archivos CSV.
Para ver la lista de archivos CSV generados, sigue estos pasos:
ls -lrt CSV_FILES_PREFIX*
Ejecutar la detección de invitados en todas las máquinas virtuales de un archivo CSV
Para ejecutar la detección de invitados en las VMs de un archivo CSV, usa la secuencia de comandos collection
del repositorio de GitHub de Migrate to Containers.
Repita este paso con cada archivo CSV generado en el paso anterior.
La secuencia de comandos usa el comando discover vsphere guest
para subir y ejecutar la secuencia de comandos de recogida de datos del invitado en la máquina virtual.
Es mejor ejecutar esta secuencia de comandos en segundo plano y dirigir la salida a un archivo de registro. Para ello, debes crear un archivo de texto que se transmita como entrada a la secuencia de comandos.
Crea el archivo de texto:
cat <<EOF >> INPUT_FILE CSV_FILES_PREFIXCSV_FILE_SUFFIX VSPHERE_URL VSPHERE_USER VSPHERE_PASSWORD VM_USER VM_PASSWORD EOF
Haz los cambios siguientes:
- INPUT_FILE: nombre del archivo de entrada
- CSV_FILES_PREFIX: prefijo del nombre de archivo CSV
- CSV_FILE_SUFFIX: sufijo del nombre de archivo CSV
- VSPHERE_URL: la URL de su instancia de vCenter Server o de vSphere Client.
- VSPHERE_USER: nombre de usuario de vCenter
- VSPHERE_PASSWORD: contraseña de vCenter
- VM_USER: nombre de usuario de la VM
- VM_PASSWORD: contraseña de la VM
Ejecuta la secuencia de comandos de la colección de invitados:
nohup ./mcdc_collect_vms_guest_tools.sh <INPUT_FILE > /tmp/mcdc.out 2>&1 &
Repite los pasos 1 y 2 con cada archivo CSV generado en el paso anterior.
Generar un informe de evaluación sin conexión
Una vez que se hayan recogido todos los datos, puede generar un informe HTML detallado:
./mcdc report --format html --full > REPORT_NAME.html