Установка и настройка VMmanager на Linux

Обновлено и опубликовано Опубликовано:

В данной инструкции мы развернем хостинг VPS/VDS на основе системы управления VMmanager. VMmanager — это веб-панель управления кластером хостов виртуальных машин. Данная инструкция подходит для любых дистрибутивов Linux, которые поддерживаются VMmanager.

Подготовка сервера

Желательно, чтобы сервер был чистый — без установленных программных продуктов и измененных репозиториев. Установщик VMmanager сам развернет все необходимые пакеты и внесет настройки в систему.

Для подготовки мы выполним два действия — проверим, что наш сервер поддерживает технологию виртуализации и отключим SELinux.

Поддержка виртуализации

Для установка VMmanager для KVM проверяем, что на нашем сервере включена поддержка виртуализации:

cat /proc/cpuinfo | egrep "(vmx|svm)"

Мы должны получить что-то на подобие:

flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch ssbd ibrs ibpb stibp tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 invpcid rtm mpx avx512f avx512dq rdseed adx smap clflushopt clwb avx512cd avx512bw avx512vl xsaveopt xsavec arat pku ospke spec_ctrl intel_stibp flush_l1d arch_capabilities

Если команда ввела пустую строку, необходимо в БИОС в настройках процессора активировать технологию виртуализации (Intel Virtualization Technology или AMD Virtualization).

SELinux

Для VMmanager также рекомендуется отключить SELinux. Если в нашей системе он используется, выполняем команду:

sed -i 's/^SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config

... и перезагружаем сервер:

shutdown -r now

Установка VMmanager

Устанавливаем утилиту для загрузки файлов:

yum install wget

После скачиваем установщик продуктов ispsystem:

wget http://cdn.ispsystem.com/install.sh

Запускаем установку:

sh install.sh --release 5.221.0 VMmanager

* где release указывает на конкретную версию релиза, который мы будем устанавливать на сервер. Узнать текущую стабильную версию релиза можно на странице ChangeLog официального сайта.

Нам зададут вопрос, какую версию VMmanager мы будем ставить — KVM или OVZ. Делаем выбор и вводим свой ответ:

What version do you want to install
1) VMmanager-KVM
2) VMmanager-OVZ

Choose version: 1

* в данном примере мы выбрали KVM для возможности развертывания полностью изолированных виртуальных машин. Подробнее про KVM и OpenVZ.

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

После установки открываем браузер и переходим по адресу https://<IP-адрес>:1500/vmmgr — мы увидим ошибку сертификата (это нормально, просто игнорируем ее и продолжаем загрузку).

Откроется страница ввода лицензии — необходимо активировать продукт или получить временную лицензию:

Выбор варианта активации VMmanager

При получении временной лицензии также нужно ввести пароль от личного кабинета my.isplicense.ru:

Вводим пароль от личного кабинета ISPsystem

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

На адрес почты зарегистрированного пользователя придет временная лицензия. Вводим ключ для активации VMmanager:

Вводим ключ для активации продукта

Программа установлена. Входим в панель управления, использую учетную запись root.

Некоторые системы Linux не имеют пароля для учетной записи root — его необходимо задать командой:

passwd root

После можно заходить в VMmanager.

Начальная настройка

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

1. Политики

Переходим в раздел Настройки кластера - Политики:

Переходим к настройкам политик

а) настраиваем основные параметры политик:

Настройка политик — основные настройки

* где:

  • IP-адрес основного узла — адрес из сети, в которой будут работать все узлы кластера (если он будет).
  • Величина оверселлинга — процент от свободной памяти на сервере, который будет доступен для выделения виртуальным машинам. Если на сервере могут быть запущены другие службы, помимо хоста виртуальных машин, стоит сократить данный процент, например, до 80%.
  • Часовой пояс VM — с каким часовым поясом будут создаваться новые виртуальные машины.
  • Регион VM — регион часового пояса.
  • Местоположение VM — географическое положение виртуальных машин.

б) сетевые настройки:

Настройка политик — сеть

* где:

  • Отключить антиспуфинг — отключает возможность создания правил антиспуфинга (блокировки сообщений, отправленных от локального домена, но неавторизованного IP-адреса).
  • Префикс MAC-адреса — первые 2 байта, которые будут во всех MAC-адресах, сгенерированных для виртуальных машин.
  • Сетевой интерфейс VNC — к какому интерфейсу будут подключены виртуальные машины для доступа по VNC. Если указать «автоматически», то будет выбран тот bridge-интерфейс, к которому подключена виртуалка.
  • Использовать HTTPS для VNC — консоль VNC должна работать по защищенному протоколу HTTPS.
  • Проверять уникальность IP-адресов — при создании виртуальной машины проверять IP адреса на уникальность.
  • Серверы имен — серверы DNS, которые будут прописаны в сетевые настройки после развертывания операционной системы.
  • HTTP proxy для IPv4 (IPv6) — если для HTTP-запросов необходимо использовать прокси, вводим его адрес в соответствующие поля.

в) ограничение на количество образов ISO:

Настройка политик — ограничения на количество ISO

* где:

  • Время жизни ISO, час — через какое количество часов удалить пользовательские образы ISO.
  • Глобальный лимит размера, MiB — максимальный размер всех образов ISO всех пользователей.
  • Глобальный лимит количества — максимальное количество образов, которые могут быть созданы в системе.
  • Пользовательский лимит размера, MiB — максимальный размер всех образов ISO одного пользователя. Указывается данное значение, если не задается явно при создании пользователя.
  • Пользовательский лимит количества — количество образов, которые может создать пользователь.

г) виртуальные машины:

Настройка политик — виртуальные машины

* где:

  • Просмотр истории — разрешить ли пользователю смотреть историю по действиям над виртуальной машиной.
  • Рецепт — после установки виртуальной машины ее можно сразу настроить для выполнения какого либо сервиса.
  • Разрешить пользователям редактировать рецепты — дать ли возможность пользователю самому менять рецепты.
  • Таймаут при создании снапшота — время в секундах, в течение которых должен создаться снапшот. В противном случае, система вернет ошибку.
  • Максимальное количество снапшотов — сколько можно создать снапшотов.
  • Проверять активность VM — система может время от времени проверять активность виртуальной машины и отмечать состояния. 
  • Отключить принудительную перезагрузку — отключить перезагрузку, которая должна произойти в течение 24 часов после изменения конфигурации виртуальной машины.
  • Лимит групповых операций — ограничить количество одинаковых операций над виртуальной машиной.

2. Узел кластера

Переходим в раздел Настройки кластера - Узлы кластера. Кликаем по Добавить:

Создаем узел кластера

В открывшемся окне вносим настройки:

Настройка ноды кластера

* где:

  • Наименование — имя ноды.
  • Добавить локальный узел — говорит о том, что добавляется локальный сервер.
  • Адрес для доступа VMmanager — IP-адрес, по которому будет доступен сервер.
  • Порт ihttpd — порт для управления.
  • Максимальное количество VM — какое количество машин может быть создано на сервере.
  • Автоматическое размещение VM — способ автоматического размещения виртуальных машин на сервере.
  • Примечание — произвольный текст.

Нажимаем OK - система выполнит установку необходимых пакетов и добавит узел к кластеру.

3. Шаблоны операционных систем

Добавим в систему шаблоны для операционных систем. Для этого переходим в раздел Настройки кластера - Шаблоны ОС. Кликаем по нужному шаблону, например, CentOS 8, Ubuntu 18.04 или Windows Server 2019 - кликаем по Установить:

Добавить шаблон операционной системы

... и подтверждаем желание установить шаблон, нажав на OK.

Повторяем действия для всех образов, которые хотим использовать.

4. Пользователь

Создаем пользователя. Переходим в раздел Управление - Пользователи. Кликаем по Создать:

Создание нового пользователя

Заполняем поля для создаваемого пользователя:

Создание нового пользователя

* где:

  • Уровень доступа — права для нового пользователя. Это может быть администратор или обычный пользователь.
  • Логин — имя учетной записи.
  • Пароль / Подтверждение пароля — пароль для учетной записи.
  • Может создавать виртуальные машины — разрешено ли пользователю создавать виртуальные машины.
  • Объем ISO, MiB — объем дискового пространства под образы. Можно не задавать, если задан в настройках политик.
  • Количество ISO — количество образов, которые может добавить пользователь. Можно не задавать, если задан в настройках политик.

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

Теперь можно создать нашу первую виртуальную машину. Переходим в Управление - Виртуальные машины. Кликаем по Создать:

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

Заполняем поля для создания новой виртуальной машины:

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

* где:

  • Наименование — название для виртуальной машины.
  • Владелец — пользователь, которому будет принадлежать создаваемая машина.
  • Узел кластера — серверная нода кластера, на котором будет создана виртуалка.
  • Шаблон VM — шаблон с заготовленными настройками. В данном примере мы не создавали шаблон, но если он есть, его можно выбрать.
  • Тип установки — как именно устанавливать систему — из готового шаблона или своего образа ISO.
  • Шаблон ОС — шаблон системы (если мы выбрали соответствующий тип установки).
  • Рецепт — после установки системы ее можно сразу настроить для выполнения какого либо сервиса.
  • Операционная система — устанавливаемая операционная система. Соответствует выбранному шаблону ОС.
  • Тип IP-адреса — тип адреса. В нашем случае доступен только один тип. Всего их может быть 3 — приватный, публичный и NAT. Возможность выбора зависит от созданных сетей.
  • IP-адрес — способ назначения адреса. Автоматически позволит получить адрес по DHCP.
  • Домен — доменное имя для создаваемой машины.
  • Размер основного диска — объем дискового пространства, который будет выделен виртуальной машине.
  • Оперативная память — объем памяти, выделенной виртуалке.
  • Количество процессоров — количество процессоров для создаваемой машины.
  • Пароль / Подтверждение пароля — пароль для доступа по VNC и пользователя root.

Также внисим дополнительные настройки:

Дополнительные настройки при создании новой виртуальной машины

* где:

  • Режим эмуляции процессора — эмуляция процессора. По умолчанию используется виртуальный процессор QEMU. При эмуляции в режиме host-model используется описание процессора, определенное libvirt на основе процессора узла кластера. В режиме host-passthrough в точности эмулируется процессор узла кластера. Пользовательский позволит задать свои данные о процессоре.
  • MAC-адрес — физический сетевой адрес, который будет выделен для виртуальной машины.
  • Отключить антиспуфинг — отключает возможность создания правил антиспуфинга (блокировки сообщений, отправленных от локального домена, но неавторизованного IP-адреса).
  • Установка времени — способ синхронизации часов виртуальной машины с часами сервера.
  • Вес CPU — относительный вес для процессора. В случае нехватки ресурсов, предпочтение будет отдано той машине, у которой больше вес CPU.
  • Вес использования I/O — относительный вес для дискового хранилища. В случае нехватки ресурсов, предпочтение будет отдано той машине, у которой больше вес I/O.
  • Входящий трафик, KiB/sec — ограничение скорости входящего трафика.
  • Исходящий трафик, KiB/sec — ограничение скорости исходящего трафика.
  • Количество снимков — максимально возможное количество снапшотов, которое можно сделать для виртуалки.
  • Публичные SSH ключи — если есть ключи для беспарольного доступа по SSH, нужно их занести в данное поле.

Создаем виртуальную машину. Процесс может занять пару минут.

# Управление # Серверы # Интернет # Виртуализация # Linux
Дмитрий Моск — частный мастер
Была ли полезна вам эта инструкция?

Да            Нет