Задание имени узла с помощью 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 см. в следующих статьях: