VK Cloud logo
Обновлена 27 марта 2024 г. в 15:20

Создание образа с помощью Packer

Packer позволяет создавать образы виртуальных машин с нужными параметрами при помощи конфигурационного файла. В качестве примера будет использован образ ОС Alt Linux P9 в формате QCOW.

Подготовительные шаги

  1. Установите последнюю версию Packer.

  2. Убедитесь, что клиент OpenStack установлен, и пройдите аутентификацию в проекте.

  3. Загрузите образ ОС Alt Linux P9 локально (файл alt-p9-cloud-x86_64.qcow2).

1. Конвертируйте образ в формат RAW

Используйте утилиту qemu-img:

  1. Установите qemu-img, если этого не сделано ранее:

    sudo yum install qemu-img
  2. Запустите конвертацию файла с помощью команды:

    qemu-img convert -f qcow2 -O raw alt-p9-cloud-x86_64.qcow2 alt-p9-cloud-x86_64.raw

    Синтаксис команды конвертации приведен в официальной документации QEMU.

2. Загрузите базовый образ в облако

Импортируйте образ по инструкции.

3. Создайте конфигурационный Packer-файл

  1. Определите реквизиты сети и загруженного образа:

    1. Получите идентификатор внешней сети, к которой будет подключена создаваемая виртуальная машина.

    2. Скопируйте название загруженного образа, получив список образов с помощью команды openstack image list.

    3. Запишите полученные значения в переменные:

      export SOURCE_IMAGE=8b64c09b-7141-41ad-XXXX-9f5a8dbbd87eexport NETWORK_ID=f19e1e54-bce9-4c25-XXXX-e0f40e2cff14
  2. Создайте файл altlinux.pkr.hcl:

  3. Проверьте созданную конфигурацию с помощью команды:

    packer validate altlinux.pkr.hcl

4. Загрузите подготовленный образ в облако

  1. Запустите создание образа с помощью команды:

    packer build altlinux.pkr.hcl
  2. Дождитесь появления сообщения об успешной загрузке:

    ==> Builds finished. The artifacts of successful builds are:--> openstack.altlinux: An image was created: c6320138-035f-40d8-XXXX-e814edb2ce5f
  3. Запишите идентификатор c6320138-035f-40d8-XXXX-e814edb2ce5f — он понадобится на следующем шаге.

5. Завершите настройку образа

  1. Установите метатеги созданному образу с помощью команды:

    openstack image set \--property hw_video_model='qxl' \--property hw_watchdog_action='reset' \--property hw_vif_multiqueue_enabled='true' \--property hw_qemu_guest_agent='yes' \--property os_require_quiesce='yes' \--property mcs_name='Alt Linux P9 Starter Kit' \--property mcs_os_distro='debian' \--property mcs_os_type='linux' \--property mcs_os_version='P9' \--property os_admin_user='altlinux' \--property os_distro='altlinux-p9' \--property os_type='linux' \--property os_version='p9' \c6320138-035f-40d8-XXXX-e814edb2ce5f
  2. Убедитесь, что образ корректно отображается.

    1. Перейдите в личный кабинет VK Cloud.
    2. Перейдите в раздел Облачные вычисления → Образы.
    3. Найдите образ в списке и нажмите на него. Откроется страница образа.

    Образ также станет доступен при создании ВМ.

Удалите неиспользуемые ресурсы

Если образ вам больше не нужен, удалите его.