Создание виртуальных машин

Создание виртуальных машин#

Ограничения

Предварительные требования

Создание виртуальной машины

  1. На экране Виртуальные машины нажмите Создать виртуальную машину. Откроется окно, где нужно будет указать параметры ВМ.

  2. Укажите имя новой ВМ.

  3. Выберите загрузочный носитель ВМ.

    • Если у вас есть ISO-образ или шаблон.

      1. Выберите Образ В разделе Развернуть из, а затем нажмите Указать В разделе Образ.

      2. В окне Образы выберите ISO-образ или шаблон и нажмите Готово.

        _images/compute_vms2_ac.png
    • Если у вас есть вычислительный загрузочный том.

      1. Выберите Том В разделе Развернуть из, а затем нажмите Указать В разделе Тома.

      2. В окне Тома нажмите Присоединить.

      3. В окне Присоединить том найдите и выберите том и нажмите Присоединить.

        image2

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

    Примечание

    Если выбрать образ или том с назначенным размещением, то созданная ВМ унаследует это размещение.

    После выбора загрузочного носителя необходимые для загрузки тома будут автоматически добавлены в раздел Тома.

  4. Настройте диски ВМ.

    1. В окне Тома убедитесь, что загрузочный том по умолчанию достаточно большой для размещения гостевой ОС. В противном случае нажмите значок многоточия и выберите Изменить. Измените размер тома и нажмите Сохранить.

    2. [Необязательно] Добавьте дополнительные диски в ВМ путем создания или присоединения томов. Для этого щелкните по значку карандаша В разделе Тома, а затем нажмите Добавить или Присоединить в окне Тома.

    3. Выберите тома, которые будут удалены при удалении ВМ. Для этого щелкните по значку карандаша В разделе Тома, нажмите значок многоточия напротив нужного тома и выберите Изменить. Включите параметр Удалить по завершении и нажмите Сохранить.

    4. Завершив настройку дисков ВМ, нажмите Готово.

  5. Выберите объем ОЗУ и ресурсов ЦП, которые будут выделены ВМ, В разделе Тип ВМ. В окне Тип ВМ выберите тип и нажмите Готово.

    Важно

    При выборе типа для ВМ убедитесь, что он удовлетворяет требованиям к оборудованию гостевой ОС.

    Примечание

    Если выбрать тип ВМ с назначенным размещением, то созданная ВМ унаследует это размещение.

    image3

  6. Добавьте сетевые интерфейсы для ВМ В разделе Сети.

    1. В окне Сетевые интерфейсы нажмите Добавить, чтобы присоединить сетевой интерфейс.

    2. В окне Добавить сетевой интерфейс выберите вычислительную сеть, к которой следует подключиться, и укажите MAC-адрес, адреса IPv4 и/или IPv6 и группы безопасности. По умолчанию MAC-адрес и основной IP-адрес назначаются автоматически. Чтобы указать их вручную, снимите флажки Назначить автоматически и введите нужные адреса. При необходимости можно назначить сетевому интерфейсу дополнительные IP-адреса в разделе Вторичные IP-адреса. Учтите, что вторичный адрес IPv6 недоступен для подсети IPv6, которая работает в режиме SLAAC или DHCPv6 без отслеживания состояния.

      Примечание

      Вторичные IP-адреса, в отличие от основного, не будут автоматически назначены сетевому интерфейсу внутри гостевой ОС виртуальной машины. Их следует назначать вручную.

      • Если выбрана виртуальная сеть со включенным управлением IP-адресами.

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

        Чтобы отключить защиту от спуфинга, снимите все флажки и установите переключатель в положение "выкл". С отключенной защитой от спуфинга нельзя настроить группы безопасности.

      • Если выбрана виртуальная сеть с отключенным управлением IP-адресами.

        В этом случае защита от спуфинга отключена по умолчанию и ее нельзя включить. Для такой сети нельзя настроить группы безопасности.

      image4

      Указав параметры сетевого интерфейса, нажмите Добавить. Интерфейс появится в списке Сетевые интерфейсы.

    3. [Необязательно] При необходимости измените IP-адреса и группы безопасности добавленных сетевых интерфейсов. Для этого щелкните по значку многоточия, выберите Изменить и задайте нужные параметры.

    4. Завершив настройку сетевых интерфейсов ВМ, нажмите Готово.

      Примечание

      Включите EUI-64 в сетевых настройках ВМ для корректного назначения IP-адреса.

  7. [Необязательно] Если вы выбрали загрузку из шаблона или тома, на котором установлены cloud-init и OpenSSH:

    Важно

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

    • Добавьте SSH-ключ в ВМ, чтобы она была доступна через SSH без пароля.

      В окне Выберите SSH-ключ выберите ключ и нажмите Готово.

      image5

    • Добавьте пользовательские данные для настройки ВМ после запуска, например, для изменения пароля пользователя.

      Введите скрипт cloud-config или скрипт оболочки в поле Скрипт настройки или укажите файл на локальном сервере, из которого следует загрузить скрипт.

      image6

      Чтобы внедрить скрипт в виртуальную машину Windows, см. документацию по Cloudbase-Init. Например, можно задать новый пароль для учетной записи с помощью следующего скрипта:

      #ps1
      net user <username> <new_password>
      
  8. [Необязательно] Задайте режим эмуляции ЦП виртуальной машины.

    Режим эмуляции ЦП определяет, какая модель будет назначена и какие дополнительные функции будут доступны виртуальному ЦП. По умолчанию используется режим, заданный на уровне вычислительного кластера. Чтобы использовать другой режим, выполните следующее:

    1. Нажмите на значок карандаша В разделе Режим эмуляции ЦП.

    2. В окне Режим эмуляции ЦП установите переключатель Использовать персональные настройки в положение "вкл" и выберите нужный режим:

      • Host-model (по умолчанию) — модель и набор дополнительных функций виртуального ЦП подбираются таким образом, чтобы они наиболее точно соответствовали модели и дополнительным функциям ЦП вычислительного сервера, на котором размещена виртуальная машина (полное соответствие не гарантируется). Этот режим обеспечивает меньший уровень производительности и безопасности, чем режим host-passthrough, но предоставляет большую степень работоспособности горячих миграций виртуальных машин в случае, когда на вычислительных серверах используются незначительно отличающиеся модели ЦП.

      • Host-passthrough — виртуальной машине предоставляется виртуальный ЦП такой же модели и с такими же дополнительными функциями, как у ЦП вычислительного сервера, на котором размещена виртуальная машина. Этот режим обеспечивает наибольший уровень производительности и безопасности, но не гарантирует работоспособность горячих миграций виртуальных машин при использовании разных моделей ЦП на вычислительных серверах.

      • Custom — виртуальной машине предоставляется виртуальный ЦП указанной модели с указанными дополнительными функциями. Модель ЦП выбирается из списка моделей ЦП, совместимых со всеми вычислительными серверами (аналогично для дополнительных функций). Этот режим обеспечивает наименьший уровень производительности и безопасности, но гарантирует работоспособность горячих миграций виртуальных машин, даже если на вычислительных серверах используются разные модели ЦП.

      Модели ЦП в списке отсортированы по новизне в порядке убывания. По умолчанию все дополнительные функции выбранной модели ЦП отключены.

      Некоторые модели ЦП представлены в двух вариантах (например, Skylake-Server и Skylake-Server-IBRS). Наличие строки "IBRS" в названии модели ЦП означает, что включена защита от аппаратных уязвимостей Spectre и Meltdown. Хотя наличие этой защиты снижает производительность ЦП, в целях безопасности рекомендуется использовать модели ЦП с включенной защитой. Для доверенных приложений возможно использование моделей ЦП с отключенной защитой.

      image1

    3. Нажмите Применить.

  9. [Необязательно] В разделе Расширенные параметры выполните следующее:

    • Разрешите горячее подключение ресурсов ЦП и ОЗУ для ВМ, чтобы можно было изменить тип работающей ВМ. Горячее подключение также можно разрешить после создания ВМ.

    • Запретите автоматические перемещения ВМ, связанные с работой DRS, сняв установленный по умолчанию флажок Разрешить автоматические миграции для этой виртуальной машины. Снять флажок также можно после создания ВМ.

  10. Настроив все параметры ВМ, нажмите Развернуть, чтобы создать и загрузить ВМ.

Если вы развертываете ВМ из ISO-образа, потребуется установить гостевую ОС внутри ВМ с помощью встроенной консоли VNC. Виртуальные машины, созданные из шаблона или загрузочного тома, уже имеют предустановленную гостевую ОС.

Используйте следующую команду:

vinfra service compute server create [--description <description>]
                                     [--metadata <metadata>]
                                     [--user-data <user-data>]
                                     [--key-name <key-name>]
                                     [--config-drive] [--count <count>]
                                     [--ha-enabled {true,false}]
                                     [--placements <placements>]
                                     [--allow-live-resize]
                                     [--allow-auto-migration <allow_auto_migration>]
                                     [--cpu-emulation-mode <[key=value,…]>]
                                     --network id|<id=id[,key=value,…]>
                                     --volume <source=source[,key=value,…]>
                                     --flavor <flavor> <server-name>
--description <description>

Описание виртуальной машины.

--metadata <metadata>

Метаданные виртуальной машины.

--user-data <user-data>

Файл пользовательских данных.

--key-name <key-name>

Пара ключей для внедрения.

--config-drive

Использовать временный (эфемерный) диск.

--count <count>

Если указано число и оно больше 1, то аргумент имя рассматривается как шаблон присвоения имен.

--ha-enabled {true,false}

Включение или отключение высокой доступности для виртуальной машины.

--placements <placements>

Имена или идентификаторы размещений, в которые следует добавить виртуальную машину.

--allow-live-resize

Разрешает изменение размера виртуальной машины в онлайн-режиме.

--allow-auto-migration <allow_auto_migration>

Разрешает или запрещает автоматические перемещения ВМ, связанные с работой DRS (true — разрешить или false — запретить).

--cpu-emulation-mode <[key=value,…]>

Режим эмуляции ЦП виртуальных машин. Определяет, какая модель будет назначена и какие дополнительные функции будут доступны виртуальному ЦП.

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

  • custom_cpu_settings: переопределить режим эмуляции ЦП на уровне ВМ (yes или no).

  • cpu_mode: режим эмуляции ЦП.

    • host-model — модель и набор дополнительных функций виртуального ЦП подбираются таким образом, чтобы они наиболее точно соответствовали модели и дополнительным функциям ЦП вычислительного сервера, на котором размещена виртуальная машина (полное соответствие не гарантируется). Этот режим обеспечивает меньший уровень производительности и безопасности, чем режим host-passthrough, но предоставляет большую степень работоспособности горячих миграций виртуальных машин в случае, когда на вычислительных серверах используются незначительно отличающиеся модели ЦП.

    • host-passthrough — виртуальной машине предоставляется виртуальный ЦП такой же модели и с такими же дополнительными функциями, как у ЦП вычислительного сервера, на котором размещена виртуальная машина. Этот режим обеспечивает наибольший уровень производительности и безопасности, но не гарантирует работоспособность горячих миграций виртуальных машин при использовании разных моделей ЦП на вычислительных серверах.

    • custom — виртуальной машине предоставляется виртуальный ЦП указанной модели с указанными дополнительными функциями. Модель ЦП выбирается из списка моделей ЦП, совместимых со всеми вычислительными серверами (аналогично для дополнительных функций). Этот режим обеспечивает наименьший уровень производительности и безопасности, но гарантирует работоспособность горячих миграций виртуальных машин, даже если на вычислительных серверах используются разные модели ЦП.

  • cpu_model: модель ЦП. Параметр можно указать для режима эмуляции ЦП custom. Список моделей ЦП, совместимых со всеми вычислительными серверами, можно получить с помощью команды vinfra service compute baseline-cpu. По умолчанию используется наиболее новая модель ЦП, совместимая со всеми вычислительными серверами.

  • cpu_features: заключенный в одинарные кавычки список дополнительных функций ЦП через пробел. Параметр можно указать для режима эмуляции ЦП custom, чтобы включить дополнительные функции для выбранной модели ЦП (по умолчанию все дополнительные функции отключены). Список дополнительных функций каждой модели ЦП можно получить с помощью команды vinfra service compute additional-cpu-features.

--network id|<id=id[,key=value,…]>

Создает виртуальную машину с заданной сетью. Укажите этот параметр несколько раз, чтобы создать несколько сетей.

  • id: присоединить сетевой интерфейс к указанной (по идентификатору или имени) сети

  • разделенные запятыми пары key=value с ключами (необязательно):

    • mac: MAC-адрес для сетевого интерфейса

    • fixed-ip: фиксированный IP-адрес или None для автоматического выделения IP-адреса. Этот параметр можно использовать несколько раз.

    • spoofing-protection-enable:: включение защиты от спуфинга пакетов на сетевом интерфейсе

    • spoofing-protection-disable:: отключение защиты от спуфинга пакетов на сетевом интерфейсе

    • security-group: имя или идентификатор группы безопасности. Этот параметр можно использовать несколько раз.

    • no-security-group: не использовать группу безопасности

--volume <source=source[,key=value,…]>

Создает виртуальную машину с заданным томом. Укажите этот параметр несколько раз, чтобы создать несколько томов.

  • source: тип источника (volume для тома, image для образа, snapshot для снимка или blank — пустой)

  • разделенные запятыми пары key=value с ключами (необязательно):

    • id: идентификатор или имя ресурса для указанного типа источника (требуется для источников типа volume — том, image — образ и snapshot — снимок)

    • size: размер блочного устройства в гигабайтах (требуется для источников типа image — образ и blank — пустой)

    • boot-index: загрузочный индекс блочного устройства (требуется при наличии нескольких томов с типом источника volume)

    • bus: тип контроллера блочного устройства (scsi)

    • type: тип блочного устройства (disk или cdrom)

    • rm: удалить блочное устройство по завершении работы виртуальной машины (yes или no)

    • storage-policy: политика хранилища блочного устройства

--flavor <flavor>

Идентификатор или имя типа ВМ.

<server-name>

Имя для виртуальной машины.

Например, чтобы создать виртуальную машину myvm, основанную на образе cirros и типе ВМ tiny, и подключить ее к виртуальной сети private с фиксированным IP-адресом 192.168.128.100, выполните:

# vinfra service compute server create myvm --network id=private,fixed-ip=192.168.128.100 \
--volume source=image,id=cirros,size=1 --flavor tiny
+----------------------+--------------------------------------+
| Field                | Value                                |
+----------------------+--------------------------------------+
| allow_auto_migration | True                                 |
| config_drive         |                                      |
| cpu_settings         | custom_cpu_settings: false           |
| created              | 2024-06-07T08:10:06Z                 |
| description          |                                      |
| fault                |                                      |
| flavor               | disk: 0                              |
|                      | ephemeral: 0                         |
|                      | extra_specs: {}                      |
|                      | original_name: tiny                  |
|                      | ram: 512                             |
|                      | swap: 0                              |
|                      | vcpus: 1                             |
| ha_enabled           | True                                 |
| host                 |                                      |
| host_status          |                                      |
| id                   | cb0c9268-e10c-46c4-a359-aaa1110f647e |
| key_name             |                                      |
| metadata             | {}                                   |
| name                 | myvm                                 |
| networks             | []                                   |
| placements           | []                                   |
| power_state          | NOSTATE                              |
| project_id           | 7015a1fff4074eb38e2dd1fec9a0ebde     |
| status               | BUILD                                |
| task_state           | scheduling                           |
| updated              | 2024-06-07T08:10:07Z                 |
| user_data            |                                      |
| vm_state             | building                             |
| volumes              | []                                   |
+----------------------+--------------------------------------+

Новая виртуальная машина появится в выводе команды vinfra service compute server list:

# vinfra service compute server list
+--------------------------------------+------+-------------------+------------------------+
| id                                   | name | status            | host                   |
+--------------------------------------+------+-------------------+------------------------+
| cb0c9268-e10c-46c4-a359-aaa1110f647e | myvm | ACTIVE            | node002.vstoragedomain |
+--------------------------------------+------+-------------------+------------------------+