Condividi tramite


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 illustra come usare cloud-init per configurare un nome host specifico in una macchina virtuale (VM) o in set di scalabilità di macchine virtuali (VMSS) 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 per modificare questo nome host predefinito quando si crea una macchina virtuale in Azure con az vm create, specificare il file cloud-init con il --custom-data commutatore.

Per visualizzare il processo di aggiornamento in azione, creare un file nella shell corrente denominata 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

Annotazioni

Sostituire i valori myResourceGroup, vmNamee imageCIURN di conseguenza. Assicurarsi che sia selezionata un'immagine con Cloud-init.

Dopo la creazione, l'interfaccia della riga di comando di Azure mostra informazioni sulla macchina virtuale. Usare publicIpAddress per connettersi tramite SSH alla macchina virtuale. Immettere il proprio indirizzo come indicato di seguito:

ssh <user>@<publicIpAddress>

Per visualizzare il nome della macchina virtuale, usare il hostname comando come indicato di seguito:

sudo hostname

La macchina virtuale deve segnalare il nome host 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: