Utilizar o cloud-init para definir o nome do anfitrião para uma VM do Linux no Azure

Aplica-se a: ✔️ Conjuntos de dimensionamento flexíveis de VMs ✔️ do Linux

Este artigo mostra-lhe como utilizar o cloud-init para configurar um nome de anfitrião específico numa máquina virtual (VM) ou conjuntos de dimensionamento de máquinas virtuais (VMSS) no momento do aprovisionamento no Azure. Estes scripts do cloud-init são executados no primeiro arranque depois de os recursos terem sido aprovisionados pelo Azure. Para obter mais informações sobre como o cloud-init funciona nativamente no Azure e as distribuições do Linux suportadas, veja cloud-init overview (Descrição geral do cloud-init)

Definir o nome do anfitrião com o cloud-init

Por predefinição, o nome do anfitrião é o mesmo que o nome da VM quando cria uma nova máquina virtual no Azure. Para executar um script cloud-init para alterar este nome de anfitrião predefinido quando cria uma VM no Azure com az vm create, especifique o ficheiro cloud-init com o --custom-data comutador.

Para ver o processo de atualização em ação, crie um ficheiro na sua shell atual com o nome cloud_init_hostname.txt e cole a seguinte configuração. Neste exemplo, crie o ficheiro no Cloud Shell não no computador local. Pode utilizar qualquer editor que desejar. Certifique-se de que todo o ficheiro cloud-init é copiado corretamente, especialmente a primeira linha.

#cloud-config
fqdn: myhostname

Antes de implementar esta imagem, tem de criar um grupo de recursos com o comando az group create . Um grupo de recursos do Azure é um contentor lógico no qual os recursos do Azure são implementados e geridos. O exemplo seguinte cria um grupo de recursos com o nome myResourceGroup na localização eastus.

az group create --name myResourceGroup --location eastus

Agora, crie uma VM com az vm create e especifique o ficheiro cloud-init com --custom-data cloud_init_hostname.txt o seguinte:

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

Nota

Substitua os valores myResourceGroup, vmName e imageCIURN em conformidade. Certifique-se de que é escolhida uma imagem com o Cloud-init.

Depois de criada, a CLI do Azure mostra informações sobre a VM. Utilize o publicIpAddress SSH para a VM. Introduza o seu próprio endereço da seguinte forma:

ssh <user>@<publicIpAddress>

Para ver o nome da VM, utilize o comando da hostname seguinte forma:

sudo hostname

A VM deve comunicar o nome do anfitrião como esse valor definido no ficheiro cloud-init, conforme mostrado no seguinte exemplo de saída:

myhostname

Passos seguintes

Para obter exemplos adicionais de alterações de configuração na cloud, veja o seguinte: