Я хочу подготовить виртуальную машину Azure с помощью Terraform и настроить ее с помощью настраиваемого AMI, созданного Packer.
Мне нужен прикрепленный управляемый диск с данными со снимками.
Я хочу использовать Oracle Linux 7.4
Какой лучший способ
Скорее всего, я собираюсь создать кластер из идентичных машин, к каждой из которых подключены диски с данными, поэтому использование ssh-in постфактум невозможно.
Во-первых, вы не могли прикрепить снимок к виртуальной машине, 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}"
}
Скорее всего, я собираюсь создать кластер из идентичных машин, к каждой из которых подключены диски с данными, поэтому использование ssh-in постфактум невозможно.
Для этого вы можете использовать расширение пользовательского сценария Azure, вам нужно написать сценарий для монтирования диска на виртуальной машине, а затем использовать расширение настраиваемого сценария для выполнения этого сценария.
Другой способ использовать remote-exec
чтобы сделать это, проверьте это ответ.
Создать диск и подключить его к виртуальной машине можно с помощью Terraform.
Для фактического монтирования и форматирования это должно происходить внутри виртуальной машины, чтобы вы могли посмотреть, как запустить что-то, используя расширение пользовательского скрипта или вы можете посмотреть на инструменты управления конфигурацией, такие как Puppet, Chef, Ansible и т. д.