Для улучшения работы сайта мы используем файлы cookies. Оставаясь на сайте, вы соглашаетесь с политикой обработки персональных данных.

Установка виртуальных машин Linux

Установка виртуальных машин Linux проходит в четыре этапа:

  1. Создайте виртуальную машину. Необходимо добавить виртуальный диск для хранилища и сетевой интерфейс для подключения виртуальной машины к сети.

  2. Запустите виртуальную машину и установите операционную систему. Сверьтесь с инструкциями по установке вашей операционной системы.

  3. Включите необходимые репозитории для вашей операционной системы.

  4. Установите гостевые агенты и драйверы для дополнительных функций виртуальной машины.

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

При создании новой виртуальной машины необходимо задать её настройки. Позже можно будет изменить некоторые из них, в том числе тип чипсета и BIOS.

Можно изменить длину имени виртуальной машины, заданную по умолчанию, с помощью инструмента engine-config. Запустите следующую команду на машине с Менеджером управления:

engine-config --set MaxVmNameLength=integer
Процедура

Чтобы создать виртуальную машину:

  1. Нажмите Ресурсы (Compute)  Виртуальные машины (Virtual Machines).

  2. Нажмите Создать (New). Откроется окно Новая виртуальная машина (New Virtual Machine).

  3. Выберите Операционную систему (Operating System) в выпадающем списке.

  4. Укажите Имя (Name) виртуальной машины.

  5. Добавьте хранилище к виртуальной машине. В разделе Виртуальные диски (Instance Images) нажмите Прикрепить (Attach) или Создать (Create), чтобы выбрать или создать виртуальный диск:

  6. Подключите виртуальную машину к сети. Добавьте сетевой интерфейс, выбрав vNIC-профиль в выпадающем списке внизу на вкладке Общее (General).

  7. Задайте Оперативная память (Memory Size) виртуальной машины на вкладке Система (System).

  8. На вкладке Параметры загрузки (Boot Options) выберите Первое устройство (First Device), которое виртуальная машина будет использовать для начальной загрузки.

  9. В остальных полях можно принять настройки по умолчанию или изменить их при необходимости. Дополнительные сведения о всех полях в окне Новая виртуальная машина (New Virtual Machine) см. в разделе Описание настроек в окнах «Новая виртуальная машина (New Virtual Machine)» и «Изменить ВМ (Edit Virtual Machine)».

  10. Нажмите OK.

Новая виртуальная машина создана и отображается в списке виртуальных машин в состоянии Выключена (Down).

2. Запуск виртуальной машины

2.1. Запуск виртуальной машины

Процедура

Чтобы запустить виртуальную машину:

  1. Нажмите Ресурсы (Compute)  Виртуальные машины (Virtual Machines) и выберите виртуальную машину в состоянии Выключена (Down).

  2. Нажмите Запустить (Run).

Статус (Status) виртуальной машины поменяется на Включена (Up), и начнется установка операционной системы. Откройте консоль виртуальной машины, если та не откроется автоматически.

Виртуальная машина не запустится на хосте с перегруженным ЦП. По умолчанию ЦП хоста считается перегруженным, если нагрузка на него превышает 80% в течение 5 минут, но эти значения можно изменить с помощью политик планирования. Дополнительную информацию см. в разделе Политики планирования в Руководстве администратора.

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

Для подключения к виртуальной машине используйте инструмент удаленного просмотра (Remote Viewer).

Чтобы другие пользователи могли подключиться к виртуальной машине, обязательно выключите и перезапустите виртуальную машину после завершения работы с консолью. Либо администратор может Выключить строгую проверку пользователей (Disable strict user checking), чтобы исключить необходимость перезагрузки между сеансами пользователей. Дополнительную информацию см. в разделе Описание настроек консоли виртуальной машины.

Процедура

Чтобы открыть консоль виртуальной машины:

  1. Установите инструмент удаленного просмотра (Remote Viewer), если он еще не установлен. См. Установка компонентов консоли.

  2. Нажмите Ресурсы (Compute)  Виртуальные машины (Virtual Machines) и выберите виртуальную машину.

  3. Нажмите Консоль (Console). По умолчанию браузер предложит загрузить файл с именем console.vv. При открытии файла откроется окно консоли виртуальной машины. Браузер можно настроить на автоматическое открытие этих файлов, чтобы нажатие на Консоль (Console) просто открывало консоль.

Воспользоваться файлом console.vv можно в течение 120 секунд после загрузки. Если прошло больше времени, нажмите Консоль (Console) еще раз.

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

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

Для доступа к последовательной консоли виртуальной машины пользователь должен иметь разрешение UserVmManager, SuperUser или UserInstanceManager на этой виртуальной машине. Эти разрешения должны быть прямо заданы для каждого пользователя. Недостаточно просто назначить их Всем (Everyone).

Для доступа к последовательной консоли служит порт TCP 2222 в Менеджере управления. Этот порт открыт во время работы engine-setup на новых инсталляциях.

Для работы последовательной консоли необходимы пакеты ovirt-vmconsole и ovirt-vmconsole-proxy в Менеджере управления, а также пакеты ovirt-vmconsole и ovirt-vmconsole-host на хостах виртуализации.

При установке новых инсталляций эти пакеты устанавливаются по умолчанию.

Процедура

Чтобы включить последовательную консоль виртуальной машины:

  1. На виртуальной машине, к последовательной консоли которой вы обращаетесь, добавьте следующие строки в /etc/default/grub:

    GRUB_CMDLINE_LINUX_DEFAULT="console=tty0 console=ttyS0,115200n8"
    GRUB_TERMINAL="console serial"
    GRUB_SERIAL_COMMAND="serial --speed=115200 --unit=0 --word=8 --parity=no --stop=1"

    GRUB_CMDLINE_LINUX_DEFAULT применяет эту конфигурацию только к пункту меню по умолчанию. Используйте GRUB_CMDLINE_LINUX, чтобы применить конфигурацию ко всем пунктам меню.

    Если эти строки уже есть в /etc/default/grub, обновите их. Не дублируйте их.

  2. Пересоздайте /boot/grub2/grub.cfg:

    • Машины на основе BIOS:

      grub2-mkconfig -o /boot/grub2/grub.cfg
    • Машины на основе UEFI, на примере Red Hat Enterprise Linux:

      grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg
  3. На клиентской машине, с которой вы обращаетесь к последовательной консоли виртуальной машины, сгенерируйте пару SSH-ключей. Менеджер управления поддерживает стандартные типы SSH-ключей, например, RSA-ключ:

    ssh-keygen -t rsa -b 2048 -C "user@domain" -f .ssh/serialconsolekey

    Эта команда генерирует открытый ключ и закрытый ключ.

  4. На Портале администрирования или Пользовательском портале нажмите на имя авторизовавшегося пользователя в верхней панели, затем нажмите Настройки (Options). Откроется окно Настройки (Edit Options).

  5. В текстовое поле Публичный ключ пользователя (User’s Public Key) вставьте открытый ключ клиентской машины, который будет использоваться для доступа к последовательной консоли.

  6. Нажмите Ресурсы (Compute)  Виртуальные машины (Virtual Machines) и выберите виртуальную машину.

  7. Нажмите Изменить (Edit).

  8. На вкладке Консоль (Console) окна Изменить виртуальную машину (Edit Virtual Machine) установите флажок Консольный порт VirtIO-serial (Enable VirtIO serial console).

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

  • Если доступна одна виртуальная машина, то эта команда подключает пользователя к этой виртуальной машине:

    ssh -t -p 2222 ovirt-vmconsole@Manager_FQDN -i .ssh/serialconsolekey
    ...
    USER login:
  • Если доступно несколько виртуальных машин, то эта команда выводит список доступных виртуальных машин и их идентификаторов:

    ssh -t -p 2222 ovirt-vmconsole@Manager_FQDN -i .ssh/serialconsolekey list
    1. vm1 [vmid1]
    2. vm2 [vmid2]
    3. vm3 [vmid3]
    > 2
    ...
    USER login:

    Введите номер машины, к которой вы хотите подключиться, и нажмите Ввод (Enter).

    Либо подключитесь напрямую к виртуальной машине, используя её уникальный идентификатор или имя:

    ssh -t -p 2222 ovirt-vmconsole@Manager_FQDN connect --vm-id vmid1
    ssh -t -p 2222 ovirt-vmconsole@Manager_FQDN connect --vm-name vm1
    Отключение от последовательной консоли виртуальной машины

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

Если сеанс последовательной консоли завершается аварийно, возникает ситуация TCP-таймаута: повторно подключиться к последовательной консоли виртуальной машины будет невозможно, пока не истечёт время ожидания.

3. Установка гостевых агентов и драйверов

3.1. Гостевые агенты, инструменты и драйверы

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

  • Использование ресурсов,

  • IP-адреса.

Гостевые агенты, инструменты и драйверы распространяются в виде файла ISO, который можно подключить к виртуальным машинам.

Для включения этой функциональности на виртуальной машине установите на ней гостевые агенты и драйверы.

Таблица 1. Гостевые драйверы
Драйвер Описание Работает на

virtio-net

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

сервере и настольном ПК

virtio-block

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

сервере и настольном ПК

virtio-scsi

Паравиртуализированный драйвер жесткого диска iSCSI предлагает похожую функциональность, что и устройство virtio-block, с некоторыми дополнительными улучшениями. В частности, этот драйвер поддерживает добавление сотен устройств и именует устройства согласно стандартной схеме именования устройств SCSI

сервере и настольном ПК

virtio-serial

Драйвер virtio-serial обеспечивает поддержку нескольких последовательных портов. Повышенная производительность используется для организации быстрой связи между виртуальной машиной и хостом, на которую не влияют проблемы в сети. Быстрая связь требуется для гостевых агентов и других функций (таких, как копирование и вставка через буфер обмена между виртуальной машиной и хостом и журналирование)

сервере и настольном ПК

virtio-balloon

Драйвер virtio-balloon используется для управления размером памяти, фактически доступной виртуальной машине. Он обеспечивает улучшенное перераспределение памяти

сервере и настольном ПК

qxl

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

сервере и настольном ПК

Таблица 2. Гостевые агенты и инструменты
Гостевой агент/инструмент Описание Работает на

qemu-guest-agent

Используется вместо ovirt-guest-agent-common на виртуальных машинах Red Hat Enterprise Linux 8. Устанавливается и включается по умолчанию

сервере и настольном ПК

spice-agent

SPICE-агент поддерживает несколько мониторов и отвечает за поддержку режима «клиент-мышь», тем самым повышая удобство работы и скорость отклика по сравнению с эмуляцией QEMU. Захват курсора не требуется в режиме «клиент-мышь». SPICE-агент уменьшает использование полосы пропускания при использовании глобальной сети за счет снижения уровня отображения (в том числе глубину цвета), отключения обоев, сглаживания шрифтов и анимации. SPICE-агент включает поддержку буфера обмена (что позволяет вырезать и вставлять текст и изображения между клиентом и виртуальной машиной) и автоматическую настройку гостевого дисплея в соответствии с настройками на стороне клиента. На виртуальных машинах на Windows SPICE-агент состоит из vdservice и vdagent

сервере и настольном ПК

3.2. Установка гостевых агентов и драйверов на Linux машины

Гостевые агенты и драйверы предоставляются репозиторием соответствующего Linux-дистрибьютора.

Виртуальные машины CentOS 8 используют службу qemu-guest-agent, установленную и включенную по умолчанию, вместо службы ovirt-guest-agent. Если необходимо вручную установить гостевой агент, следуйте указаниям ниже.

Процедура

Чтобы установить гостевые агенты и драйверы:

  1. Авторизуйтесь на виртуальной машине с Linux.

  2. Установите гостевые агенты и зависимости:

    • Для CentOS 6 или 7 установите гостевой агент ovirt:

      yum install ovirt-guest-agent-common
    • Для CentOS 8 и новее установите гостевой агент qemu:

      yum install qemu-guest-agent
    • Для Debian-подобных систем установите гостевой агент qemu:

      apt install qemu-guest-agent
  3. Запустите и включите службу ovirt-guest-agent:

    • Для CentOS 6:

      service ovirt-guest-agent start
      chkconfig ovirt-guest-agent on
    • Для CentOS 7 и новее, Debian-подобных систем:

      systemctl start ovirt-guest-agent
      systemctl enable ovirt-guest-agent
  4. Запустите и включите службу qemu-guest-agent:

    • Для CentOS 6:

      service qemu-ga start
      chkconfig qemu-ga on
    • Для CentOS 7 и новее, Debian-подобных систем:

      systemctl start qemu-guest-agent
      systemctl enable qemu-guest-agent

Гостевой агент теперь передает информацию об использовании в Менеджер управления. Гостевой агент можно сконфигурировать в файле /etc/ovirt-guest-agent.conf.