Загрузить свой образ диска в Яндекс.Облако

Эта инструкция описывает, как загрузить файл с образом диска в Object Storage и создать из него образ в сервисе Compute Cloud.

1. Подготовьте файл с образом

Поддерживаемые форматы образов: Qcow2, VMDK и VHD.

Если вы загружаете образ загрузочного диска, то должны выполняться следующие требования:

  • ОС на базе Linux.
  • Установлены последние обновления ОС.
  • Диск смонтирован по UUID, а не по имени.
  • Ядро Linux запущено с параметром console=ttyS0.
  • SSH-сервер запускается автоматически при запуске ВМ.
  • Сетевой интерфейс получает IP-адрес по DHCP.

Рекомендации:

  • Рекомендуется загружать 64-битные системы с установленным пакетом cloud-init, а также драйверами virtio-net и virtio-blk.

  • Образы рекомендуется оптимизировать перед загрузкой с помощью утилиты qemu-img, чтобы ускорить импорт:

    qemu-img convert -p -O qcow2 -o cluster_size=2M <имя вашего файла образа> <имя нового файла образа>
    

2. Загрузите файл образа в Object Storage

Загрузите файл с образом в сервис Yandex Object Storage и получите ссылку на загруженный образ:

  1. Если у вас еще нет бакета в Object Storage, создайте его.
  2. Загрузите образ в ваш бакет. В терминах Object Storage загружаемый файл образа будет называться объектом.
  3. Получите ссылку на загруженный образ. Используйте эту ссылку при создании образа в Compute Cloud.

3. Создайте образ в Compute Cloud

Создайте новый образ по ссылке, полученной в Object Storage:

  1. В консоли управления выберите каталог, в котором нужно создать образ.

  2. Выберите сервис Compute Cloud.

  3. На странице Виртуальные машины перейдите на вкладку Образы.

  4. Нажмите кнопку Загрузить образ.

  5. Введите имя образа.

    • Длина — от 3 до 63 символов.
    • Может содержать строчные буквы латинского алфавита, цифры и дефисы.
    • Первый символ — буква. Последний символ — не дефис.
  6. Если требуется, добавьте произвольное описание образа.

  7. Вставьте ссылку на образ, полученную в Object Storage.

  8. Нажмите кнопку Загрузить.

Чтобы создать новый образ по ссылке, воспользуйтесь флагом --source-uri.

$ yc compute image create --name <IMAGE-NAME> --source-uri <IMAGE-URL>

где:

  • <IMAGE-NAME> — имя, которое будет присвоено образу.
  • <IMAGE-URL> — ссылка на образ, полученная в Object Storage.

Если необходимо, добавьте описание и укажите семейство, к которому относится этот образ:

$ yc compute image create  \
    --name ubuntu-cosmic \
    --description "Ubuntu Server 18.10 (Cosmic Cuttlefish)" \
    --family ubuntu \
    --source-uri "https://storage.yandexcloud.net/mybucket/cosmic-server-cloudimg-amd64.vmdk"

Если вы знаете минимальные требования к размеру диска, который будет создан из этого образа, укажите размер в гигабайтах:

$ yc compute image create  \
    --name big-image \
    --min-disk-size 20 \
    --source-uri "https://storage.yandexcloud.net/mybucket/cosmic-server-cloudimg-amd64.vmdk"

Примечание

Значение min-disk-size должно быть больше объема исходных данных в образе и больше размера виртуального диска, указанного в образе.

Если указать значение min-disk-size меньше допустимого, то произойдет ошибка и образ не будет создан. В описании ошибки будет указано минимальное значение в байтах, например Minimal disk size should be greater or equal than 10737418240.

Если не указать min-disk-size, будет использовано минимальное значение.

Чтобы создать новый образ по ссылке, воспользуйтесь методом Create для ресурса Image. Ссылку на образ передайте в элементе uri.

После создания образ перейдет в статус CREATING. Дождитесь, когда образ перейдет в статус READY, прежде чем его использовать.

4. Удалите образ из Object Storage

Если образ был успешно создан, вы можете удалить файл образа из сервиса Object Storage. Также можно удалить бакет, если в нем не осталось объектов.

О стоимости использования Object Storage читайте в разделе Правила тарификации для Object Storage.