Назад | Перейти на главную страницу

Azure: как подключить диски с данными при запуске ВМ, форматирование при необходимости

Я хочу подготовить виртуальную машину Azure с помощью Terraform и настроить ее с помощью настраиваемого AMI, созданного Packer.

Мне нужен прикрепленный управляемый диск с данными со снимками.

Я хочу использовать Oracle Linux 7.4

Какой лучший способ

  1. Обеспечение подключения диска с данными при запуске
  2. Убедитесь, что диск с данными отформатирован, прежде чем я попытаюсь его смонтировать, возможно, отформатировав его при запуске

Скорее всего, я собираюсь создать кластер из идентичных машин, к каждой из которых подключены диски с данными, поэтому использование 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 и т. д.