Шаблон виртуальной машины

При создании группы необходимо описать шаблон виртуальной машины — конфигурацию базовой виртуальной машины, по которой будут развертываться все ВМ группы.

В CLI описание шаблона передается вместе с описанием политик в виде YAML-файла при создании или изменении группы ВМ с помощью флага --file. Таким образом, удобно передать значение из нескольких строк. Подробнее читайте в разделе Создать группу виртуальных машин фиксированного размера.

Вычислительные ресурсы

При описании шаблона, вы указываете, сколько вычислительных ресурсов будет выделено каждой виртуальной машине: количество и гарантированный уровень производительности ядер процессора (vCPU), количество памяти (RAM). Вы можете выбрать подходящее количество вычислительных ресурсов из расчета планируемой нагрузки. Подробнее читайте в разделе Уровни производительности vCPU.

Диски

К каждой виртуальной машине в группе должен быть подключен как минимум один диск — загрузочный. Каждый загрузочный диск создается автоматически и подключается только к одной виртуальной машине при создании группы ВМ.

Помимо этого, к каждой виртуальной машине можно подключить дополнительные диски. Вы можете создать дополнительный диск вместе с группой виртуальных машин. Новый диск можно создать пустым, восстановить из снимка или из образа. Подключать и отключать дополнительные диски можно только при создании или изменении группы. Подробнее читайте в разделе Диски.

Сеть

При создании группы вы можете:

  • задать сеть для самой группы;
  • задать подсети для каждой виртуальной машины группы.

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

Также для каждой виртуальной машины можно настроить публичный IP-адрес. Это позволит виртуальной машине взаимодействовать с другими сервисами в интернете. Подробнее читайте в разделе Сеть на виртуальной машине.

Описание шаблона в YAML-файле

Шаблон представляет собой описание конфигурации базовой виртуальной машины и определяется в YAML-файле, в ключе instance_template.

Пример записи в YAML-файле:

...
instance_template:
    platform_id: standard-v1
    resources_spec:
        memory: 4g
        cores: 1
        core_fraction: 5
    boot_disk_spec:
        mode: READ_WRITE
        disk_spec:
            image_id: fdvk34al8k5nltb58shr
            type_id: network-hdd
            size: 32g
    secondary_disk_specs:
        mode: READ_WRITE
        disk_spec:
            image_id: fdvk34al8k5nltb58shr
            type_id: network-hdd
            size: 32g
    network_interface_specs:
        - network_id: c64mknqgnd8avp6edhbt
          subnet_ids:
              - blt022m2diah5j3rcj8v
          primary_v4_address_spec: {
              one_to_one_nat_spec: {
                  ip_version: IPV4
              }
          }
...

По умолчанию размер диска указывается в байтах. Вы можете указать другую единицу измерения с помощью соответствующего суффикса.

Название Пример написания в YAML-файле
Килобайт 1073741824k
Мегабайт 1048576m
Гигабайт 1024g
Терабайт 1t

Ключи (в таблице приведены ключи, которые непосредственно определяют конфигурацию базовой виртуальной машины):

Ключ Значение
platform_id Идентификатор аппаратной платформы виртуальной машины.
memory Объем памяти в байтах, доступный виртуальной машине. Максимальное значение — 274877906944 (275 ГБ).
cores Количество ядер, доступных виртуальной машине. Значение должно быть равно 1, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30 или 32.
core_fraction Базовый уровень производительности CPU. Значение должно быть равно 0, 5 или 100.
mode Режим доступа к диску.
- READ_ONLY — доступ на чтение.
- READ_WRITE — доступ на чтение и запись.
image_id Идентификатор образа, из которого будет создан диск.
type_id Идентификатор типа диска. Чтобы получить список доступных типов дисков, используйте запрос yandex.cloud.compute.v1.diskTypes.
size Размер диска в байтах. Допустимые значения — от 4194304 (4 MБ) до 4398046511104 (4 ТБ) включительно.
network_id Идентификатор облачной сети.
subnet_ids Идентификаторы облачных подсетей.
ip_version Версия IP для публичного IP-адреса.

О технических ограничениях компонента Instance Groups читайте в разделе Квоты и лимиты.