Compartir vía


Uso de cloud-init para establecer el nombre de host para una máquina virtual Linux en Azure

Se aplica a: ✔️ máquinas virtuales Linux ✔️ conjuntos de escalado flexibles

En este artículo se muestra el uso de cloud-init para configurar un nombre de host específico en una máquina virtual o en conjuntos de escalado de máquinas virtuales en el momento del aprovisionamiento en Azure. Estos scripts de cloud-init se ejecutan durante el primer arranque una vez que Azure ha aprovisionado los recursos. Para obtener más información acerca del funcionamiento nativo de cloud-init en Azure y las distribuciones de Linux compatibles, consulte la introducción a cloud-init.

Establecimiento del nombre de host con cloud-init

De forma predeterminada, el nombre de host es el mismo que el de la máquina virtual al crear una en Azure. Para ejecutar un script cloud-init para cambiar el nombre de host predeterminado al crear una máquina virtual en Azure con az vm create, especifique el archivo cloud-init con el modificador --custom-data.

Para ver la actualización en proceso, cree un archivo en el shell actual denominado cloud_init_hostname.txt y pegue la configuración siguiente. Para este ejemplo, cree el archivo en Cloud Shell, no en la máquina local. Puede utilizar el editor que prefiera. Asegúrese de que todo el archivo cloud-init se copia correctamente, especialmente la primera línea.

#cloud-config
fqdn: myhostname

Antes de implementar esta imagen, debe crear un grupo de recursos con 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. En el ejemplo siguiente, se crea un grupo de recursos denominado myResourceGroup en la ubicación eastus.

az group create --name myResourceGroup --location eastus

Ahora, cree una máquina virtual con az vm create y especifique el archivo cloud-init con --custom-data cloud_init_hostname.txt como se indica a continuación:

az vm create \
  --resource-group myResourceGroup \
  --name vmName \
  --image imageCIURN \
  --custom-data cloud_init_hostname.txt \
  --generate-ssh-keys

Nota

Reemplace los valores myResourceGroup, vmName e imageCIURN según corresponda. Asegúrese de que se elige una imagen con Cloud-init.

Una vez que la crea, la CLI de Azure muestra información sobre la máquina virtual. Use publicIpAddress para usar un cliente SSH a la máquina virtual. Escriba su propia dirección, como se indica a continuación:

ssh <user>@<publicIpAddress>

Para ver el nombre de la máquina virtual, use el comando hostname de la siguiente manera:

sudo hostname

La máquina virtual debe informar el nombre de host como el valor establecido en el archivo cloud-init, como se muestra en la salida de ejemplo siguiente:

myhostname

Pasos siguientes

Para ejemplos de cloud-init de cambios de configuración adicionales, vea lo siguiente: