Implementación de un servidor Ubuntu local hospedado con Vagrant y su conexión a Azure Arc
En este artículo, se proporcionan instrucciones para implementar una máquina virtual Ubuntu local mediante Vagrant y conectarla como un recurso de servidor habilitado para 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
Vagrant se basa en un hipervisor subyacente. En esta guía, vamos a usar Oracle VM VirtualBox.
Instale VirtualBox.
- Si es usuario de macOS, ejecute
brew cask install virtualbox
. - Si es usuario de Windows, puede usar el paquete de Chocolatey.
- Si es usuario de Linux, puede encontrar todos los métodos de instalación de paquetes en Descarga de VirtualBox para hosts Linux.
- Si es usuario de macOS, ejecute
Instalación de Vagrant
- Si es usuario de macOS, ejecute
brew cask install vagrant
. - Si es usuario de Windows, puede usar el paquete de Chocolatey.
- Si es usuario de Linux, visite la página de descarga de Vagrant.
- Si es usuario de macOS, ejecute
Cree una entidad de servicio de Azure.
Para conectar la máquina virtual de Vagrant a Azure Arc, se requiere una entidad de servicio de Azure con 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:
Recomendamos encarecidamente que limite la entidad de servicio a un grupo de recursos y una suscripción de Azure específicos.
El archivo Vagrant ejecuta un script en el sistema operativo de la máquina virtual para instalar todos los artefactos necesarios e insertar variables de entorno. Edite el script de shell
scripts/vars.sh
para que coincida con la entidad de servicio de Azure que creó.subscriptionId
: identificador de la suscripción de AzureappId
: nombre de la entidad de servicio de Azure.password
: contraseña de la entidad de servicio de Azure.tenantId
: identificador del inquilino de Azure.resourceGroup
: nombre del grupo de recursos de Azure.location
: región de Azure
Implementación
Al igual que cualquier implementación de Vagrant, se necesita un archivo vagrantfile y un cuadro de Vagrant. En líneas generales, la implementación hará lo siguiente:
- Descargar el cuadro de Vagrant del archivo de imagen de Ubuntu 16.04.
- Ejecutar el script de instalación
Después de editar el script scripts/vars.sh
para que coincida con su entorno, en la carpeta Vagrantfile
, ejecute vagrant up
. Dado que esta es la primera vez que se crea la máquina virtual, la primera ejecución será mucho más lenta que las que siguen, ya que la implementación está descargando el cuadro de Ubuntu por primera vez.
Finalizada la descarga, comienza el aprovisionamiento. Como se muestra en la siguiente captura de pantalla, el proceso no tarda más de tres minutos.
Al finalizar, tendrá una máquina virtual Ubuntu local implementada, conectada como un nuevo servidor habilitado para Azure Arc, dentro de un nuevo grupo de recursos.
Implementación semiautomatizada (opcional)
El último paso es registrar la máquina virtual como un nuevo recurso de servidor habilitado para Azure Arc.
Si quiere demostrar o controlar el proceso de registro real, haga lo siguiente:
En el script de shell
install_arc_agent
, convierta en comentario la secciónrun connect command
y guarde el archivo. También puede convertir en comentario o cambiar la creación del grupo de recursos.Conéctese mediante SSH a la máquina virtual con el comando
vagrant ssh
.Ejecute el mismo comando
azcmagent connect
que ha convertido en comentado con las variables de entorno.
Eliminar la implementación
Para eliminar toda la implementación, ejecute el comando vagrant destroy -f
. El archivo vagrantfile incluye el desencadenador de Vagrant before: destroy
, que ejecutará un script para eliminar el grupo de recursos de Azure antes de destruir la máquina virtual real.
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