Я хочу подготовить виртуальную машину Azure с помощью Terraform и настроить ее с помощью настраиваемого AMI, созданного Packer.
Мне нужен прикрепленный управляемый диск с данными со снимками. .
Я хочу использовать Oracle Linux 7.4
Каков наилучший способ
Вероятно, я Будет создан кластер из идентичных машин, к каждой из которых будут подключены диски с данными, поэтому использование ssh-in постфактум невозможно.
Создание диска и его подключение к ВМ может быть достигнуто с помощью Terraform.
Для фактического монтирования и форматирования диска, это должно произойти внутри ВМ, так что вы можете посмотреть на выполнение чего-то, используя пользовательское расширение сценария или вы можете посмотреть на инструменты управления конфигурацией, такие как Puppet, Chef, Ansible и т.д.
.Во-первых, вы не смогли прикрепить снимок к ВМ, Azure этого не поддерживает.
Вы можете прикрепить существующий диск с управляемыми данными к ВМ, вы можете проверить этот пример.
storage_data_disk {
name = "${data.azurerm_managed_disk.datasourcemd.name}"
managed_disk_id = "${data.azurerm_managed_disk.datasourcemd.id}"
create_option = "Attach"
lun = 1
disk_size_gb = "${data.azurerm_managed_disk.datasourcemd.disk_size_gb}"
}
Скорее всего, я выведу кластер одинаковых машин на каждую. с прикрепленными дисками с данными, так что зашивание после факта не является выполнимо.
Вы можете использовать Azure Custom Script Extension для этого, вам нужно написать скрипт для монтирования диска на вашей ВМ, а затем использовать пользовательское расширение скрипта для выполнения этого скрипта.
Другим способом вы можете использовать remotee-exec
для этого, проверьте этот ответ .