Inicio rápido: Creación de una máquina virtual Linux con la CLI de Azure
Se aplica a: ✔️ Máquinas virtuales Linux
En esta guía de inicio rápido se muestra como usar la CLI de Azure para implementar una máquina virtual (VM) Linux en Azure. La CLI de Azure se usa para crear y administrar recursos de Azure mediante la línea de comandos o scripts.
En este tutorial instalaremos la última imagen Debian. Para mostrar la máquina virtual en acción, se conectará a ella mediante SSH e instalará al servidor web de NGINX.
Si no tiene una suscripción a Azure, cree una cuenta gratuita antes de empezar.
Inicio de Azure Cloud Shell
Azure Cloud Shell es un shell interactivo gratuito que puede usar para ejecutar los pasos de este artículo. Tiene las herramientas comunes de Azure preinstaladas y configuradas para usarlas en la cuenta.
Para abrir Cloud Shell, seleccione Pruébelo en la esquina superior derecha de un bloque de código. También puede abrir Cloud Shell en una pestaña independiente acudiendo a https://shell.azure.com/bash. Seleccione Copiar para copiar los bloques de código, péguelos en Cloud Shell y, después, seleccione Entrar para ejecutarlos.
Si prefiere instalar y usar la CLI en un entorno local, para esta guía de inicio rápido se requiere la versión 2.0.30 de la CLI de Azure o una versión posterior. Ejecute az --version
para encontrar la versión. Si necesita instalarla o actualizarla, vea Instalación de la CLI de Azure.
Definición de las variables de entorno
Las variables de entorno se usan normalmente en Linux para centralizar los datos de configuración para mejorar la coherencia y el mantenimiento del sistema. Cree las siguientes variables de entorno para especificar los nombres de los recursos que se crearán más adelante en este tutorial:
export RESOURCE_GROUP_NAME=myResourceGroup
export LOCATION=eastus
export VM_NAME=myVM
export VM_IMAGE=debian
export ADMIN_USERNAME=azureuser
Crear un grupo de recursos
Para crear un grupo de recursos, use el comando az group create. Un grupo de recursos de Azure es un contenedor lógico en el que se implementan y se administran los recursos de Azure.
az group create --name $RESOURCE_GROUP_NAME --location $LOCATION
Crear máquina virtual
Cree la máquina virtual con el comando az vm create.
En el ejemplo siguiente se crea una máquina virtual y se agrega una cuenta de usuario. El parámetro --generate-ssh-keys
se usa para generar automáticamente una clave SSH y colocarla en la ubicación de la clave predeterminada ( ~/.ssh). Para utilizar un conjunto de claves concreto, utilice la opción --ssh-key-values
.
az vm create \
--resource-group $RESOURCE_GROUP_NAME \
--name $VM_NAME \
--image $VM_IMAGE \
--admin-username $ADMIN_USERNAME \
--generate-ssh-keys \
--public-ip-sku Standard
La creación de la máquina virtual y los recursos auxiliares tarda unos minutos en realizarse. En la salida de ejemplo siguiente se muestra que la operación de creación de la máquina virtual se realizó correctamente.
{
"fqdns": "",
"id": "/subscriptions/<guid>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
"location": "eastus",
"macAddress": "00-0D-3A-23-9A-49",
"powerState": "VM running",
"privateIpAddress": "10.0.0.4",
"publicIpAddress": "40.68.254.142",
"resourceGroup": "myResourceGroup"
}
Anote el elemento publicIpAddress
que se va a usar más adelante.
Puede recuperar y almacenar la dirección IP en la variable IP_ADDRESS con el siguiente comando:
export IP_ADDRESS=$(az vm show --show-details --resource-group $RESOURCE_GROUP_NAME --name $VM_NAME --query publicIps --output tsv)
Nota
Azure proporciona una dirección IP de acceso de salida predeterminado para las máquinas virtuales que no tienen asignada una dirección IP pública o que se encuentran en el grupo de back-end de una instancia de Azure Load Balancer del nivel Básico interna. El mecanismo de dirección IP de acceso de salida predeterminado proporciona una dirección IP de salida que no se puede configurar.
La IP de acceso de salida predeterminada está deshabilitada cuando se asigna una IP pública a la máquina virtual, la máquina virtual se coloca en el grupo de back-end de un equilibrador de carga estándar (con o sin reglas de salida) o si se asigna un recurso de puerta de enlace de Azure Virtual Network NAT a la subred de la máquina virtual.
Las máquinas virtuales creadas por conjuntos de escalado de máquinas virtuales en modo de orquestación flexible no tienen acceso de salida predeterminado.
Para obtener más información sobre las conexiones de salida en Azure, vea Acceso de salida predeterminado y Uso de traducción de direcciones de red (SNAT) de origen para conexiones de salida.
Instalación del servidor web
Para ver la máquina virtual en acción, instale al servidor de web de NGINX. Actualice los orígenes de paquete y, después, instale el paquete NGINX más reciente. El comando siguiente usa run-command para ejecutar sudo apt-get update && sudo apt-get install -y nginx
en la máquina virtual:
az vm run-command invoke \
--resource-group $RESOURCE_GROUP_NAME \
--name $VM_NAME \
--command-id RunShellScript \
--scripts "sudo apt-get update && sudo apt-get install -y nginx"
Apertura del puerto 80 para el tráfico web
De forma predeterminada, solo las conexiones de SSH se abren cuando se crea una máquina virtual Linux en Azure. Use az vm open-port para abrir el puerto TCP 80 que se usará con el servidor web de NGINX:
az vm open-port --port 80 --resource-group $RESOURCE_GROUP_NAME --name $VM_NAME
Visualización del servidor web en acción
Use un explorador web de su elección para ver la página de bienvenida predeterminada de NGINX. Use la dirección IP pública de la máquina virtual como dirección web. En el ejemplo siguiente se muestra el sitio web de NGINX predeterminado:
Como alternativa, ejecute el siguiente comando para ver la página principal de NGINX en el terminal
curl $IP_ADDRESS
En el ejemplo siguiente se muestra el sitio web NGINX predeterminado en el terminal como salida correcta:
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
body {
width: 35em;
margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif;
}
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p>
<p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a>.<br/>
Commercial support is available at
<a href="http://nginx.com/">nginx.com</a>.</p>
<p><em>Thank you for using nginx.</em></p>
</body>
</html>
Limpieza de recursos
Cuando ya no se necesiten, puede usar el comando az group delete para quitar el grupo de recursos, la máquina virtual y todos los recursos relacionados.
az group delete --name $RESOURCE_GROUP_NAME --no-wait --yes --verbose
Pasos siguientes
En este inicio rápido, ha implementado una máquina virtual sencilla, ha abierto un puerto de red para el tráfico web y ha instalado un servidor web básico. Para más información acerca de las máquinas virtuales de Azure, continúe con el tutorial de máquinas virtuales Linux.