Usare cloud-init per impostare il nome host per una macchina virtuale Linux in Azure
Si applica a: ✔️ macchine virtuali di Linux ✔️ set di scalabilità flessibili
Questo articolo descrive come usare cloud-init per configurare un nome host specifico in una macchina virtuale o un set di scalabilità di macchine virtuali Linux in fase di provisioning in Azure. Questi script cloud-init vengono eseguiti al primo avvio dopo il provisioning delle risorse da parte di Azure. Per altre informazioni sul funzionamento di cloud-init in modo nativo in Azure e sulle distribuzioni Linux supportate, vedere la panoramica di cloud-init
Impostare il nome host con cloud-init
Per impostazione predefinita, il nome host corrisponde al nome della macchina virtuale quando si crea una nuova macchina virtuale in Azure. Per eseguire uno script cloud-init in modo da modificare il nome host predefinito durante la creazione di una macchina virtuale in Azure con az vm create, specificare il file cloud-init con l'opzione --custom-data
.
Per osservare il processo di aggiornamento in azione, nella shell corrente creare un file denominato cloud_init_hostname.txt e incollare la configurazione seguente. Per questo esempio, creare il file in Cloud Shell anziché nel computer locale. È possibile usare qualsiasi editor. Assicurarsi che l'intero file cloud-init venga copiato correttamente, in particolare la prima riga.
#cloud-config
fqdn: myhostname
Prima di distribuire l'immagine, è necessario creare un gruppo di risorse con il comando az group create. Un gruppo di risorse di Azure è un contenitore logico in cui le risorse di Azure vengono distribuite e gestite. L'esempio seguente crea un gruppo di risorse denominato myResourceGroup nella località stati uniti orientali.
az group create --name myResourceGroup --location eastus
Creare ora una VM con az vm create e specificare il file cloud-init con --custom-data cloud_init_hostname.txt
come segue:
az vm create \
--resource-group myResourceGroup \
--name vmName \
--image imageCIURN \
--custom-data cloud_init_hostname.txt \
--generate-ssh-keys
Nota
Sostituire i valori myResourceGroup, vmNamee imageCIURN di conseguenza. Assicurarsi che sia selezionata un'immagine con Cloud-init.
Dopo la creazione della VM, l'interfaccia della riga di comando di Azure visualizza le relative informazioni. Usare publicIpAddress
per stabilire una connessione SSH alla VM. Immettere il proprio indirizzo come di seguito:
ssh <user>@<publicIpAddress>
Per visualizzare il nome della VM, usare il comando hostname
come segue:
sudo hostname
La VM segnalerà il nome host come il valore impostato nel file cloud-init, come illustrato nell'output di esempio seguente:
myhostname
Passaggi successivi
Per altri esempi cloud-init di modifiche di configurazione, vedere i documenti seguenti: