Поделиться через


Задание имени узла с помощью cloud-init для виртуальной машины Linux в Azure

Область применения: ✔️ Виртуальные машины Linux ✔️ Гибкие масштабируемые наборы

В этой статье показано, как с помощью cloud-init настроить определенное имя узла на виртуальной машине или в масштабируемом наборе виртуальных машин при подготовке в Azure. Эти скрипты cloud-init выполняются при первой загрузке, если в Azure подготовлены все нужные ресурсы. Дополнительные сведения о встроенной поддержке cloud-init в Azure и поддерживаемых дистрибутивах Linux см. в обзоре cloud-init.

Указание имени узла с помощью cloud-init

По умолчанию имя узла совпадает с именем виртуальной машины при ее создании в Azure. Для выполнения скрипта cloud-init, чтобы изменить имя узла по умолчанию при создании виртуальной машины в Azure с помощью команды az vm create, укажите файл cloud-init с параметром --custom-data.

Чтобы увидеть процесс обновления в действии, создайте файл с именем cloud_init_hostname.txt в текущей оболочке и вставьте в него конфигурацию, приведенную ниже. Для этого примера создайте файл в Cloud Shell (не на локальном компьютере). Вы можете использовать любой редактор. Убедитесь, что весь файл cloud-init скопирован правильно, особенно первая строка.

#cloud-config
fqdn: myhostname

Прежде чем развернуть этот образ, необходимо создать группу ресурсов с помощью команды az group create. Группа ресурсов Azure является логическим контейнером, в котором происходит развертывание ресурсов Azure и управление ими. В следующем примере создается группа ресурсов с именем myResourceGroup в расположении eastus.

az group create --name myResourceGroup --location eastus

Теперь создайте виртуальную машину с помощью команды az vm create и укажите файл cloud-init с помощью --custom-data cloud_init_hostname.txt, как показано ниже.

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

Примечание.

Замените значения myResourceGroup, vmName и imageCIURN соответствующим образом. Убедитесь, что выбран образ с помощью Cloud-init.

Когда создание завершится, в Azure CLI отобразятся сведения о виртуальной машине. Используйте publicIpAddress, чтобы подключиться к виртуальной машине по протоколу SSH. Введите свой адрес, как показано здесь:

ssh <user>@<publicIpAddress>

Чтобы увидеть имя виртуальной машины, используйте команду hostname следующим образом:

sudo hostname

Виртуальная машина должна вернуть имя узла, заданное в файле cloud-init, как показано в этом примере выходных данных:

myhostname

Следующие шаги

Дополнительные примеры изменения конфигурации с помощью cloud-init см. в следующих статьях: