Uso de VMware PowerCLI para escalar la incorporación de máquinas virtuales Linux de VMware vSphere a Azure Arc
En este artículo, se proporcionan instrucciones sobre el uso del script de VMware PowerCLI proporcionado para que pueda realizar una implementación escalada automatizada del agente de máquina conectada a Azure Arc en varias máquinas virtuales VMware vSphere y, como resultado, incorporar estas máquinas virtuales como servidores habilitados para Azure Arc.
En esta guía se da por supuesto que ya tiene un inventario de máquinas virtuales de VMware y que usará el módulo PowerCLI de PowerShell para automatizar el proceso de incorporación de las máquinas virtuales a Azure Arc.
Requisitos previos
Clone el repositorio Jumpstart de Azure Arc.
git clone https://github.com/microsoft/azure_arc.git
Instale o actualice la CLI de Azure a la versión 2.7 y superior. Use el siguiente comando para comprobar la versión instalada actual.
az --version
Instale VMware PowerCLI.
Nota:
Esta guía se probó con la versión más reciente de PowerCLI en la fecha de publicación (12.0.0), pero también se espera que funcione con versiones anteriores.
- Versiones compatibles de PowerShell: VMware PowerCLI 12.0.0 es compatible con las siguientes versiones de PowerShell:
Windows PowerShell 5.1
PowerShell 7
En Instalación de PowerCLI, encontrará instrucciones de instalación detalladas, pero la manera más fácil es usar el módulo
VMware.PowerCLI
de la galería de PowerShell mediante el siguiente comando.Install-Module -Name VMware.PowerCLI
- Versiones compatibles de PowerShell: VMware PowerCLI 12.0.0 es compatible con las siguientes versiones de PowerShell:
Para poder leer el inventario de máquinas virtuales desde vCenter, así como para invocar un script en el nivel de sistema operativo de la máquina virtual, se necesitan los siguientes permisos:
Cuenta de usuario de
VirtualMachine.GuestOperations
Usuario de VMware vCenter Server con el rol de solo lectura asignado
Cree una entidad de servicio de Azure.
Para conectar la máquina virtual de VMware vSphere a Azure Arc, se necesita una entidad de servicio de Azure que tenga asignado el rol de colaborador. Para crearla, inicie sesión en su cuenta de Azure y ejecute el siguiente comando. También puede ejecutar este comando en Azure Cloud Shell.
az login az account set -s <Your Subscription ID> az ad sp create-for-rbac -n "<Unique SP Name>" --role contributor --scopes "/subscriptions/<Your Subscription ID>"
Por ejemplo:
az ad sp create-for-rbac -n "http://AzureArcServers" --role contributor --scopes "/subscriptions/00000000-0000-0000-0000-000000000000"
El resultado debe ser similar al siguiente:
{ "appId": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX", "displayName": "http://AzureArcServers", "password": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX", "tenant": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX" }
Nota:
Se recomienda encarecidamente que el ámbito de la entidad de servicio se establezca en un grupo de recursos y una suscripción de Azure específicos.
Flujo de automatización
El flujo de automatización para este escenario incluye estos pasos:
Edite el script de PowerCLI
vars.ps1
.Tras la ejecución del script de PowerShell
scale-deploy.ps1
:El script generará automáticamente un script de shell
vars.sh
con las variables de entorno de Azure del usuario.La ejecución del script iniciará la autenticación en vCenter, examinará la carpeta de máquinas virtuales de destino en la que se encuentran las máquinas virtuales de Azure Arc candidatas y copiará los scripts de shell
vars.sh
yinstall_azure_arc_agent.sh
generados automáticamente en el sistema operativo Linux de máquina virtual ubicado en/vmware/scaled-deploy/powercli/linux
en cada máquina virtual de esa carpeta de máquinas virtuales.
El script de shell
install_azure_arc_agent.sh
se ejecutará en el sistema operativo invitado de la máquina virtual e instalará el agente de máquina conectada a Azure Arc para incorporar la máquina virtual a Azure Arc.
Antes de la implementación
Para demostrar el antes y el después de este escenario, en las capturas de pantalla siguientes se muestra un grupo de recursos de Azure dedicado y vacío, una carpeta de máquinas virtuales de vCenter con las máquinas virtuales candidatas y el directorio /var/opt/
, que muestra que no hay ningún agente instalado.
Implementación
Antes de ejecutar el script de PowerCLI, debe establecer las variables de entorno que usará el script install_azure_arc_agent.sh
. Estas variables se basan en la entidad de servicio de Azure que acaba de crear, en la suscripción y el inquilino de Azure y en las credenciales y los datos de VMware vSphere.
Recupere el identificador de suscripción y el identificador de inquilino de Azure mediante el comando
az account list
.Use el identificador y la contraseña de la entidad de servicio de Azure que creó en la sección de requisitos previos:
En la carpeta
azure_arc_servers_jumpstart\vmware\scaled-deploy\powercli\linux
, abra una sesión de PowerShell como administrador y ejecute el scriptscale-deploy.ps1
.Finalizado el proceso, la máquina virtual tendrá instalado el agente de máquina conectada de Azure Arc y el grupo de recursos de Azure se habrá rellenado con los nuevos servidores habilitados para Azure Arc.
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de