Облачные технологии дают возможность развертывать на одном физическом сервере несколько полноценных виртуальных машин и использовать на них любую операционную систему без каких-либо ограничений. Значительно упростить централизованное управление виртуализацией позволяют программные продукты вроде Proxmox. Заодно подобные решения экономят ресурсы компании, ведь системный администратор видит все VM с единого рабочего места.
Сегодня речь пойдет о том, как быстро и достаточно просто на одном физическом сервере развернуть несколько виртуальных серверов с разными операционными системами. Любому системному администратору это позволит централизованно управлять всей IT-инфраструктурой компании и экономить огромное количество ресурсов.
Использование виртуализации помогает максимально абстрагироваться от физического серверного оборудования, защитить критичные сервисы и легко восстановить их работу даже в случае очень серьезных сбоев.
Без всякого сомнения, большинству системных администраторов знакомы приемы работы с виртуальной средой и для них эта статья не станет каким-либо открытием. Несмотря на это, есть компании, которые не используют гибкость и скорость работы виртуальных решений из-за недостатка точной информации о них. Мы надеемся, что наша статья поможет на примере понять, что гораздо проще один раз начать использовать виртуализацию, чем испытывать неудобства и недостатки физической инфраструктуры.
К счастью, попробовать как работает виртуализация достаточно просто. Мы покажем, как создать сервер в виртуальной среде, например, для переноса CRM-системы, используемой в компании. Практически любой физический сервер можно превратить в виртуальный, но вначале необходимо освоить базовые приемы работы. Об этом и пойдет речь ниже.
- Основная информация
- Начало работы
- Настроить дисковые накопители
- Добавить новое хранилище в Proxmox
- Создать виртуальную машину
- Настроить автозапуск
- Начало работы
- Настройка дисковых накопителей
- Подключение нового хранилища данных
- Создание виртуальной машины
- Схема развертываемой системы
- Настройка дополнительного RAID массива
- Что нужно сделать после установки
- Обновить систему до актуальной версии
- Позаботиться о безопасности
- Организация High Availability
- Присоединяем общее хранилище
- Настраиваем HA
- Устроим сбой
- Настройка сети
- Первые действия после установки
- Безопасность сетевого соединения
- Как это работает
- Присоединение к кластеру
- Возможности решения
- Создание кластера
- Как это устроено
- Расширенные возможности
- Подводим итоги
- Заключение
- Заключение
Основная информация
В случае небольшого опыта, как подобрать сервер для виртуализации и настроить его, объяснят специалисты технической поддержки провайдера timeweb.cloud. Но и самому желательно разбираться в терминах и технологиях, применяемых на удаленных серверах. Это упростит задачу перехода с физической на облачную IT-инфраструктуру или изначально развернуть мощности на базе удаленного ЦОД. Плюс позволит общаться с технарями провайдера на «одном языке».
- Гипервизор. Специальные программы, предназначенные для создания виртуальных машин, их настройки, запуска, резервного копирования, восстановления, переноса на другой сервер. В качестве гипервизора Proxmox использует KVM и LXC.
- Виртуальная машина. Система, представляющая собой программный сервер с собственным набором «железа» (процессором, оперативной памятью, накопителем, сетевой картой и т.д.). При функционировании занимает часть реальных мощностей физического сервера. Такие системы принято сокращенно называть VM.
- Хост виртуализации. Непосредственно тот самый физический сервер, на базе которого будет проведено развертывание виртуальной машины или нескольких VM. От его параметров зависит, насколько мощными станут логические компьютеры. Например, если на нем стоит 24-ядерный процессор, есть возможность создания такого же количества 1-ядерных систем.
Обязательное требование к хостам — их процессор должен поддерживать хотя бы одну технологию виртуализации: Intel VT или AMD-V (это аппаратная поддержка выделения ресурсов на логические компьютеры). Интересная особенность такой системы заключается в прямом доступе ко всему имеющемуся «железу» из любой VM. При этом они остаются изолированными друг от друга, имеют индивидуальные настройки.
В прошлых статьях мы начали рассказывать о том, что такое Proxmox VE и как он работает. Сегодня мы расскажем о том, как можно использовать возможность кластеризации и покажем какие преимущества это дает.
Что же такое кластер и зачем он нужен? Кластер (от англ. cluster) — это группа серверов, объединенных скоростными каналами связи, работающая и представляющаяся пользователю как единое целое. Существует несколько основных сценариев использования кластера:
- Обеспечение отказоустойчивости (High-availability).
- Балансировка нагрузки (Load Balancing).
- Увеличение производительности (High Performance).
- Выполнение распределенных вычислений (Distributed computing).
Каждый сценарий предъявляет свои собственные требования к составляющим кластера. Например, для кластера, выполняющего распределенные вычисления, основным требованием является высокая скорость выполнения операций с плавающей запятой и низкая латентность сети. Подобные кластеры часто используются в научно-исследовательских целях.
Раз уж мы коснулись темы распределенных вычислений, то хочется отметить, что существует еще такое понятие как грид-система (от англ. grid — решетка, сеть). Несмотря на общую схожесть, не стоит путать грид-систему и кластер. Грид не является кластером в привычном понимании. В отличие от кластера, входящие в грид узлы чаще всего разнородны и отличаются низкой доступностью. Такой подход упрощает решение задач распределенных вычислений, однако не позволяет создать из узлов единое целое.
Начало работы
Хочется обратить внимание на то, что Proxmox готов к созданию новых машин сразу после установки. Тем не менее, рекомендуем выполнить предварительные настройки, чтобы в дальнейшем системой было легко управлять. Практика показывает, что гипервизор и виртуальные машины стоит разнести по разным физическим носителям. О том, как это сделать и пойдет речь ниже.
Настроить дисковые накопители
Следующим этапом следует настроить хранилище, которое можно будет использовать для сохранения данных виртуальных машин и резервных копий.
ВНИМАНИЕ! Приведенный ниже пример дисковой разметки можно использовать только для тестовых целей. Для эксплуатации в реальных условиях мы настоятельно рекомендуем использовать программный или аппаратный RAID-массив, чтобы исключить потерю данных при выходе дисков из строя. О том, как правильно приготовить дисковый массив к работе и как действовать в случае аварийной ситуации мы расскажем в одной из следующих статей.
Предположим, что физический сервер имеет два диска — /dev/sda, на который установлен гипервизор и пустой диск /dev/sdb, который планируется использовать для хранения данных виртуальных машин. Чтобы система смогла увидеть новое хранилище, можно воспользоваться самым простым и эффективным методом — подключить его как обычную директорию. Но перед этим следует выполнить некоторые подготовительные действия. В качестве примера посмотрим, как подключить новый диск /dev/sdb, любого размера, отформатировав его в файловую систему ext4.
1. Размечаем диск, создавая новый раздел:
fdisk /dev/sdb2. Нажимаем клавишу o или g (разметить диск в MBR или GPT).
3. Далее нажимаем клавишу n (создать новый раздел).
4. И наконец w (для сохранения изменений).
5. Создаем файловую систему ext4:
mkfs.ext4 /dev/sdb16. Создаем директорию, куда будем монтировать раздел:
mkdir /mnt/storage7. Открываем конфигурационный файл на редактирование:
nano /etc/fstab8. Добавляем туда новую строку:
/dev/sdb1 /mnt/storage ext4 defaults 0 09. После внесения изменений сохраняем их сочетанием клавиш Ctrl + X, отвечая «Y» на вопрос редактора.
10. Для проверки, что все работает, отправляем сервер в перезагрузку:
shutdown -r now11. После перезагрузки проверяем смонтированные разделы:
df -HВывод команды должен показать, что /dev/sdb1 смонтирован в директорию /mnt/storage. Это значит, что наш накопитель готов к работе.
Добавить новое хранилище в Proxmox
Авторизуемся в панели управления и заходим в разделы «Датацентр» ➝ «Хранилище» ➝ «Добавить» ➝ «Директория».
В открывшемся окне заполняем следующие поля:
- ID — название будущего хранилища;
- Директория — /mnt/storage;
- Содержимое — выделяем все варианты (поочередно щелкая на каждом варианте).

После этого нажимаем кнопку «Добавить». На этом настройка завершена.
Создать виртуальную машину
Для создания виртуальной машины выполняем следующую последовательность действий:
1. Определяемся с версией операционной системы.
2. Заранее закачиваем ISO-образ.
3. Выбираем в меню «Хранилище» только что созданное хранилище.
4. Нажимаем «Содержимое» ➝ «Загрузить».
5. Выбираем из списка ISO-образ и подтверждаем выбор нажатием кнопки «Загрузить».
После завершения операции образ будет отображен в списке доступных.
Создаем нашу первую виртуальную машину:
1. Нажимаем «Создать VM».
2. Заполняем поочередно параметры: «Имя» ➝ «ISO-Image» ➝ Размер и тип жесткого диска ➝ Количество процессоров ➝ Объем оперативной памяти ➝ Сетевой адаптер.
3. Выбрав все желаемые параметры нажимаем «Завершить». Созданная машина будет отображена в меню панели управления.
4. Выбираем ее и нажимаем «Запуск».
5. Переходим в пункт «Консоль» и выполняем установку операционной системы точно таким же образом, как и на обычный физический сервер.
Если необходимо создать еще одну машину — повторяем вышеуказанные операции. После того как все они будут готовы, с ними можно работать одновременно, открывая несколько окон консоли.
Настроить автозапуск
По умолчанию Proxmox автоматически не запускает машины, но это легко решается буквально двумя щелчками мыши:
1. Щелкаем по названию нужной машины.
2. Выбираем вкладку «Опции» ➝ «Запуск при загрузке».
3. Ставим галочку напротив одноименной надписи.
Теперь, в случае перезагрузки физического сервера, VM будет запущена автоматически.

Для продвинутых администраторов имеется еще и возможность указать дополнительные параметры запуска в разделе «Start/Shutdown order». Можно явным образом указать в каком порядке следует запускать машины. Также можно указать время, которое должно пройти до старта следующей VM и время задержки выключения (если операционная система не успеет завершить работу, гипервизор принудительно ее выключит через определенное количество секунд).
Начало работы
Proxmox сразу готово к виртуализации машин на базе Windows ServerUbuntu, CentOS 8 или других платформ. Но ряд настроек рекомендуется все-таки сделать до того, как будет развернута первая VM. Например, рационально саму программу и созданные виртуальные машины хранить на разных накопителях. Такой шаг повышает отказоустойчивость системы, дает возможность немного увеличить производительность комплекса.
Настройка дисковых накопителей
То же относится к хранению резервных копий. Их важно размещать отдельно от других файлов, это позволит оперативно восстанавливать VM даже при серьезных аппаратных сбоях на физическом сервере. Таковые практически исключены благодаря использованию дисковых массивов типа RAID 5 и 10, но лучше предусмотреть дополнительную защиту от рисков потери данных. Тестировать нижеприведенные команды лучше на платформе, где еще нет важной информации.
В качестве примера возьмем систему с двумя дисками. Пусть на /dev/sda будет установлен гипервизор Proxmox, а /dev/sdb останется пустым, на нем пользователь развернет виртуальные машины. При настройке разделения рекомендуется подключить хранилище в виде обычной директории.
1. Разметить диск созданием на нем нового раздела:
2. Нажать клавишу O для его разметки в систему MBR или G для выбора GBT.
3. Нажатием кнопки N создать новый раздел.
4. Кнопкой W сохранить внесенные изменения.
5. Создать файловую систему ext4:
6. Сгенерировать директорию, куда будет смонтирован раздел:
7. Открыть конфигурацию для изменения содержимого редактором:
8. Внести в него новую строчку со следующим содержимым:
9. Сохранить изменения нажатием комбинации <CTRL + X> с подтверждением операции за счет клика по Y.
10. Отправить сервер на перезагрузку для принятия новых настроек:
shutdown -r now11. Проверить ранее подключенные разделы:
Последняя команда должна отобразить информацию, что /dev/sdb1 был смонтирован в директорию /mnt/storage. Если все нормально, можно продолжать работу.
Подключение нового хранилища данных
Теперь новое хранилище нужно подключить к программе Proxmox. Процедура выполняется через панель управления. В ней нужно зайти в раздел «Директория», он находится по пути Датацентр» – «Хранилище – «Добавить
После открытия окна нужно заполнить несколько полей:
- ID – наименование подключаемого хранилища.
- Директория – внести значение /mnt/storage.
- Содержимое – выделить все предлагаемые варианты, последовательно кликнув на каждый из них.
Завершающий шаг включает нажатие на кнопку . Теперь можно приступать к развертыванию виртуалки с выбранной операционной системой.
Создание виртуальной машины
- Нажать «Создать VM».
- Заполнить параметры: имя, ISO-Image, размер и тип жесткого диска, количество процессоров, объем оперативной памяти, сетевой адаптер.
- После заполнения указанных полей нужно нажать на «Завершить» и убедиться в том, что после этого в списке появилась только что созданная виртуальная машина.
- Выбрать ее и нажать «Запуск».
- Перейти в пункт «Консоль» и выполнить инсталляцию операционной системы в такой же последовательности, как при установке на физический сервер.
Процедуру можно повторить сколько угодно раз и создать необходимое количество VM с нужными операционными системами. После запуска любой из них будет возможность установить требуемые прикладные программы, загружать на внутренние накопители пользовательские файлы.
По умолчанию гипервизор Proxmox не запускает VM автоматически, а это желательно, чтобы при перезапуске сервера виртуальная машина стартовала вместе с другим установленным софтом. Сделать это легко – достаточно выбрать виртуальную машину из списка, выбрать вкладку «Опции», а в ней «Запуск при загрузке». В открывшемся окне нужно поставить галочку напротив соответствующей надписи. Это включит автозагрузку, перезапуск программы или сервера не требуется.
Если в гипервизоре установлено несколько виртуальных машин, есть возможность указать, в какой последовательности их запускать после перезагрузки сервера (эти настройки скрыты в разделе Start/Shutdown). Например, программа позволяет указать время задержки в секундах между стартом каждой следующей VM. То же относится к выключению систем, потому что операционка не всегда успевает корректно завершить все процессы, и требуется чуть продлить время отключения.
Proxmox – это система виртуализации от австрийской компании Server Solutions. Proxmox относится к гипервизорам типа 1. Я не буду вдаваться в детали общего описания Proxmox, т.к. цель данной статьи показать как выполняется установка Proxmox. Единственное, что мы рассмотрим детальнее – это предварительные требования для установки Proxmox.
С более подробным описанием системы Proxmox вы можете ознакомиться в официальной документации по продукту.
Proxmox поддерживает как локально подключенные диски (DAS – Direct Attached Storage), так и SAN и NAS хранилища. Так же есть поддержка распределенного хранилища Ceph RBD.
Минимальные системные требования рассчитаны для сценариев тестирования и знакомства с системой Proxmox. Крайне не рекомендуется использовать такую систему в производственной среде.
- 64-битный процессор Intel EMT64 или AMD64.
- Поддержка процессором инструкций Intel VT/AMD-V.
- 1 ГБ оперативной памяти для системы Proxmox + оперативная память для гостевых систем (размер зависит от гостевых ОС).
- Как минимум один жесткий диск. Он будет использован в качестве системного диска. В официальной документации размер не оговорен, но 20 ГБ будет достаточно.
- Одного сетевого адаптера будет достаточно.
Для использования системы Proxmox в производственной среде рекомендуемые требования следующие:
- 64-битный процессор Intel EMT64 или AMD64.
- Поддержка процессором инструкций Intel VT/AMD-V.
- 2 ГБ оперативной памяти для системы Proxmox + оперативная память для гостевых систем (размер зависит от гостевых ОС). Если вы используете хранилище Ceph или ZFS, то на каждый 1 ТБ объема хранилища должен быть выделен дополнительный 1 ГБ оперативной памяти.
- Производительные диски для системы Proxmox и хранилища виртуальных машин. Рекомендуется SSD.
- При использовании файловой системы ZFS наличие рейд контроллера не обязательно. В остальных случаях рекомендуется использование аппаратного RAID-контроллера с BBU.
- Несколько сетевых адаптеров для разделения трафика виртуальных машин и трафика кластерных служб.
Дистрибутив Proxmox VE можно загрузить на соответствующей странице официального сайта.
Схема развертываемой системы
Общие параметры нашего развертываемого сервера изображены на схеме ниже:

Суммарная информация представлена в таблице ниже.
Поскольку я использую VMware Workstation, то для корректной работы вложенной виртуализации мне необходимо в vmx файле конфигурации виртуальной машины добавить строчку:
hypervisor.cpuid.v0 = "FALSE"
Так же в настройках виртуально машины необходимо отметить опцию “Virtualize Intel VT-x/EPT or AMD-V/RVI”:

Опять же для того чтобы вложенная виртуализация работала корректною.
Установка Proxmox выполняется относительно просто:
1. Запускаем физический или виртуальный сервер и выполняет загрузку с ISO образа или физического DVD/USB устройства.
2. На этапе выбора опции загрузки выбираем пункт “Install Proxmox VE”.

3. Дожидаемся запуска мастера установки.
4. В случае согласия принимаем лицензионное соглашение:

5. Теперь необходимо собрать зеркальный RAID 1 из двух дисков для системного раздела (в случае использования аппаратного RAID вы можете выполнять установку на RAID том). К счастью, мастер установки может помочь нам в этом. Нажимаем кнопку “Option”.

6. Указываем, что мы будем использовать ZFS RAID1 и выбираем два наших диска на 60 ГБ:

7. Нажимаем кнопку “OK” и “Next”.
8. Указываем настройки локали и временной зоны:

9. Теперь необходимо указать пароль и email администратора:

10. Теперь необходимо настроить интерфейс управления. Поскольку у нас один сетевой адаптер, то выбирать нам особо не из чего. Укажите имя хоста и параметры конфигурации IP для интерйеса:

11. На заключительном этапе мастер установки Proxmox VE покажем сводку по итоговым параметрам установки:

12. Нажмите кнопку “Install”.
13. Дождитесь окончания процесса установки.
14. В случае успешной установки мы должны увидеть следующее сообщение на консоле:

Теперь попробуем перейти в графический интерфейс управления:
https://10.10.10.24:8006/Мы должны увидеть окно аутентификации:

Указываем учетную запись (root) и пароль, который вы задали в процессе установки. На вкладке “Summary” вы должны увидеть примерно следующую информацию:

После того, как мы выполнили установку Proxmox VE нам с вами нужно выполнить еще пару задач:
1. Настроить репозитории для обновления.
2. Создать RAID массив для хранения файлов виртуальных машин и контейнеров.
При использовании графической консоли администрирования, думаю, вы обратили внимание на вот такое предупреждение:

Оно не говорит о том, что вы не можете использовать Proxmox. Она лишь говорит о том, что у вас нет платной подписки и вы не можете использовать платные репозитории для обновления. Однако, вы можете использовать бесплатные репозитории.
Для настройки бесплатных репозиториев выполните следующие действия:
1. Перейдите в графический интерфейс управления:
https://10.10.10.24:8006/2. Запустите консоль:

3. В консоли выполните следующие команды:
nano /etc/apt/sources.list.d/pve-enterprise.listУдалите или закомментируйте все прежнее содержимое файла и убедитесь, что новое содержимое файла выглядит следующим образом:
# PVE pve-no-subscription repository provided by proxmox.com,
# NOT recommended for production use
deb http://download.proxmox.com/debian/pve bullseye pve-no-subscription
4. Выполняем следующие команды:
apt update
apt upgrade5. Дождитесь окончания выполнения операции.
6. Перезагрузите гипервизор командой:
systemctl rebootНастройка дополнительного RAID массива
Последний шаг – настройка тома для хранения файлов виртуальных машин и контейнеров. Если у вас уже собран аппаратный RAID, то можете пропустить этот шаг.
Мы уже настроили RAID 1 для системного раздела, но у нас еще есть четыре диска, из которых мы планировали собрать RAID 10.
Так выполним же настройку массива:
1. Перейдите в графический интерфейс управления:
https://10.10.10.24:8006/2. Перейдите в раздел “Disks” – “ZFS”:

3. Нажмите кнопку “Create: ZFS”.
4. В появившемся диалоговом окне выберите тип RAID и укажите диски, которые необходимо добавить в RAID:

5. Нажмите кнопку “Create”.
6. Теперь мы должны увидеть дополнительный том в соответствующем разделе графического интерфейса:

Proxmox Virtual Environment (Proxmox VE) — система виртуализации с открытым исходным кодом на базе Debian, использующая в качестве гипервизора KVM для виртуальных машин и LXC для контейнеров. Это позволяет запускать в виртуальной среде Linux-системы без потери производительности и остальные, поддерживаемые KVM ОС с минимальными потерями. Кроме того, Proxmox VE позволяет создавать высокодоступные конфигурации с несколькими серверами и распределенными системами хранения.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Получить Proxmox VE можно на официальном сайте, сейчас доступна новая версия 6.0, которую мы и будем устанавливать. Да, это действительно open-source и это бесплатно, корпоративная подписка предоставляет доступ к закрытому репозиторию Proxmox VE Enterprise, который содержит стабильные обновления ПО и обновления безопасности, а также техническую помощь и поддержку. Никаких ограничений функциональности, если вы откажетесь от подписки, нет.
Для установки используется собственный инсталлятор и весь процесс предельно прост, от вас потребуется указать конфигурацию дисковой подсистемы:
А также пароль суперпользователя, настройки сети, страну и часовой пояс. Потом останется только откинуться в кресле и немного подождать, пока система установится на ваш компьютер. По завершении процесса установки вас встретит приглашение входа в систему, над которым будет указан адрес, который следует набрать в браузере для доступа к консоли управления.
Но не будем спешить. Прежде всего отключим корпоративный репозиторий, на который у нас все равно нет подписки, и подключим вместо него некоммерческий репозиторий Proxmox. Для отключения просто удалим файл репозитория из источников apt:
rm -f /etc/apt/sources.list.d/pve-enterprise.listЗатем создадим свой список:
touch /etc/apt/sources.list.d/pve-no-subscription.listВ который внесем следующие строки:
deb http://download.proxmox.com/debian/pve buster pve-no-subscriptionТеперь можно переходить к консоли управления, откроем браузер и наберем предложенный адрес, консоль управления продуктами Proxmox работает на порту 8006, что следует помнить.
Структура Proxmox VE иерархична, высший уровень составляет Датацентр, здесь есть настройки, применяемые сразу ко всем узлам, например, управление пользователями или хранилищами, настройки резервного копирования и т.д.
Следующий уровень — настройки узла, здесь доступна подробная статистика и большое количество настроек, которые относятся именно к этому серверу. Мы не будем останавливаться на них подробно, для администратора с достаточным уровнем подготовки разобраться с ними не составит труда.
Но есть и «сложности перевода», так в разделе Обновления, нас ждут две одинаковые кнопки Обновить.
В английской версии это были Update и Upgrade, а вот здесь перевели как перевели. Первая из них запускает обновление списка пакетов, а вторая запускает само обновление, открывая в отдельном окне консоль сервера.
Если вам нужно просто попасть в консоль сервера, можно нажать кнопку Оболочка и перед вами в отдельном окне браузера откроется noVNC-сессия, при этом не требуется ни Flash, ни Java, что позволяет подключаться как к серверу, так и к виртуальным машинам с любого устройства, был бы браузер.
Перед тем, как создавать виртуальные машины и контейнеры, обратимся к Хранилищам, по умолчанию создается два хранилища: local и local-lvm.
Первое предназначено для хранения ISO-образов и шаблонов контейнеров, а во втором хранятся сами виртуальные машины. Поэтому перед тем, как создать виртуальную машину или контейнер, нам нужно загрузить в хранилище нужный образ диска или шаблон. С образами все просто, нажимаем кнопку Загрузить и указываем нужный нам ISO-образ.
Для получения шаблонов следует нажать кнопку Шаблоны и мы попадем в официальное хранилище шаблонов, здесь мы может сразу загрузить шаблон другого продукта Proxmox — Mail Gateway или шаблоны стандартных Linux-систем.
Прокрутив ниже, мы обнаружим шаблоны предварительно настроенных систем практически на все случаи жизни. Использовать их, либо настраивать все самостоятельно — решать вам, в ряде случаев такие шаблоны способны хорошо сэкономить время, особенно при развертывании большого количества однотипных систем.
Чтобы загрузить выбранный шаблон достаточно нажать кнопку Загрузка внизу окна.
Для создания виртуальной машины нажмем Создать VM. На первом экране укажем имя виртуальной машины:
Затем укажем тип и версию гостевой ОС и подключим нужный образ из хранилища.
![]()
После чего, последовательно перемещаясь по пунктам следует настроить все остальные параметры виртуалки, особых сложностей это составить не должно. Но создав виртуальную машину не спешите ее запускать. Прежде всего перейдем в раздел Оборудование. Здесь можно не только настроить уже подключенное оборудование, но и добавить новое. В отличие от Hyper-V, Proxmoх позволяет пробрасывать внутрь виртуальных машин USB-устройства, что может быть полезным, если вам нужно работать с ключами защиты или USB-токенами.
Также не забудьте заглянуть в Параметры, где стоит включить Запуск при загрузке и Агент QEMU. И если с первым пунктом все понятно, то Агент позволяет управлять системой со стороны гипервизора, без него вы, например, не сможете сделать резервную копию без остановки работы машины.
Итак, все настройки закончены, включаем виртуальную машину и переключаемся в консоль. Да, прямо в браузере вы увидите экран вашей виртуалки, при этом ничего не тормозит, работать с системой достаточно комфортно.
Пока идет установка системы создадим еще новый контейнер, для этого следует нажать кнопку Создать CT в правом верхнем углу консоли управления. В качестве контейнеров могут быть только Linux-системы, на первом экране укажите имя контейнера и задайте пароль root или загрузите публичный SSH-ключ.
Затем укажите шаблон и следующими шагами сконфигурируйте виртуальное железо.
Доступных настроек у контейнеров гораздо меньше, зато они гораздо более экономно расходуют ресурсы.
Обратите внимание, что запущенный контейнер с Debian 10 потребляет всего лишь 55,46 МБ оперативной памяти.
Тем временем, пока мы создавали контейнер, должна была установиться наша виртуальная машина. После установки ВМ потребуется установить в нее QEMU-агента для полноценного взаимодействия с гипервизором. Для Linux систем все просто, на deb-based системах достаточно выполнить:
apt install qemu-guest-agentДля других дистрибутивов следует установить пакет qemu-guest-agent штатным пакетным менеджером.
С Windows все несколько сложнее, прежде всего скачаем и поместим в хранилище Proxmox ISO-образ с virtIO драйверами. Получить его можно со страницы Fedora Project. Затем подключим скачанный образ к виртуальной машине.
При включенном QEMU-агенте мы увидим три неустановленных устройства.
Начнем с последнего, для Драйвера прерываний кнопок HID перейдем в выбор из списка уже установленных драйверов и укажем драйвер Универсальной шины.
Для двух оставшихся выполним поиск драйверов на смонтированном диске и устанавливаем драйвер VirtIO Serial Driver, который отвечает за работу QEMU-агента:
Также вы можете теперь включить для виртуальной машины динамическую память, для этого установите флаг Раздувание памяти и укажите минимальный размер оперативки, с которой начнет работу виртуалка:
Но придерживайтесь при этом разумных пределов, так вы можете столкнуться с невозможностью запустить современные версии Windows если укажете минимальный размер памяти менее 1 ГБ.
Еще одна важная функция, которая доступна в Proxmox VE — это резервное копирование. Существует хорошая практика — хранить резервные копии за пределами хоста. Поэтому подключим к Proxmox сетевое хранилище, для этого перейдем в Датацентр — Хранилище. Выбор здесь достаточно богатый: iSCSI, NFS, CIFS и прочее.
В нашем случае мы подключим CIFS (SMB) хранилище.
Затем перейдем в раздел Резервная копия и создадим новый сценарий резервного копирования:
Особых сложностей там нет, выбираете нужные виртуальные машины или контейнеры и задаете расписание копирования. После чего вам только останется проверить, что резервные копии действительно создаются.
Как видим, Proxmox представляет собой вполне серьезный и самодостаточный продукт, способный стать основой вашей системы виртуализации, предоставляя возможности на уровне дорогих коммерческих гипервизоров.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Что нужно сделать после установки
Есть несколько важных вещей, которые следует выполнить после установки Proxmox. Расскажем о каждой из них подробнее.
Обновить систему до актуальной версии
Для этого зайдем в консоль нашего сервера и отключим платный репозиторий (доступен только тем, кто купил платную поддержку). Если этого не сделать — apt сообщит об ошибке при обновлении источников пакетов.
1. Открываем консоль и редактируем конфигурационный файл apt:
nano /etc/apt/sources.list.d/pve-enterprise.list2. В этом файле будет всего одна строка. Ставим перед ней символ «#», чтобы отключить получение обновлений из платного репозитория:
#deb https://enterprise.proxmox.com/debian/pve stretch pve-enterprise3. Сочетанием клавиш Ctrl+X выполняем выход из редактора, отвечая «Y» на вопрос системы о сохранении файла.
4. Выполняем команду обновления источников пакетов:
apt update5. Обновляем все пакеты:
apt -y upgradeПозаботиться о безопасности
Исходя из практического опыта, за неделю работы сервера с открытым ssh-портом 22 и внешним статическим IPv4 адресом, было более 5000 попыток подобрать пароль. И около 1500 адресов утилита успешно заблокировала. Для выполнения установки приводим небольшую инструкцию:
1. Открываем консоль сервера через веб-интерфейс или SSH.
2. Обновляем источники пакетов:
apt update3. Устанавливаем Fail2Ban:
apt install fail2ban4. Открываем конфигурацию утилиты на редактирование:
nano /etc/fail2ban/jail.conf6. Сочетанием клавиш Ctrl+X выполняем выход из редактора, отвечая «Y» на вопрос системы о сохранении файла.
7. Перезапускаем службу:
systemctl restart fail2banfail2ban-client -v status sshdОтвет утилиты будет выглядеть примерно так:
root@hypervisor:~# fail2ban-client -v status sshd
INFO Loading configs for fail2ban under /etc/fail2ban
INFO Loading files: ['/etc/fail2ban/fail2ban.conf']
INFO Loading files: ['/etc/fail2ban/fail2ban.conf']
INFO Using socket file /var/run/fail2ban/fail2ban.sock
Status for the jail: sshd
|- Filter
| |- Currently failed: 3
| |- Total failed: 4249
| `- File list: /var/log/auth.log
`- Actions
|- Currently banned: 0
|- Total banned: 410
`- Banned IP list:Аналогичным способом можно закрыть от подобных атак Web-интерфейс, создав соответствующее правило. Пример такого правила для Fail2Ban можно найти в официальном руководстве.
Организация High Availability
Proxmox «из коробки» поддерживает функционал организации HA как для виртуальных машин, так и для LXC-контейнеров. Утилита ha-manager обнаруживает и отрабатывает ошибки и отказы, выполняя аварийное переключение с отказавшей ноды на рабочую. Чтобы механизм работал корректно необходимо, чтобы виртуальные машины и контейнеры имели общее файловое хранилище.
После активации функционала High Availability, программный стек ha-manager начнет непрерывно отслеживать состояние работы виртуальной машины или контейнера и асинхронно взаимодействовать с другими нодами кластера.
Присоединяем общее хранилище
Для примера мы развернули небольшое файловое хранилище NFS по адресу 192.168.88.18. Чтобы все ноды кластера могли его использовать нужно проделать следующие манипуляции.
Выбираем в меню веб-интерфейса Datacenter — Storage — Add — NFS.

Заполняем поля ID и Server. В выпадающем списке Export выбираем нужную директорию из доступных и в списке Content — необходимые типы данных. После нажатия кнопки Add хранилище будет подключено ко всем нодам кластера.

При создании виртуальных машин и контейнеров на любом из узлов указываем наш storage в качестве хранилища.
Настраиваем HA
Для примера создадим контейнер с Ubuntu 18.04 и настроим для него High Availability. После создания и запуска контейнера заходим в раздел Datacenter — HA — Add. В открывшемся поле указываем ID виртуальной машины/контейнера и максимальное количество попыток рестарта и перемещения между нодами.
Если это количество будет превышено, гипервизор пометит VM как сбойную и переведет в состояние Error, после чего прекратит выполнять с ней какие-либо действия.

После нажатия кнопки Add утилита ha-manager оповестит все ноды кластера о том, что теперь VM с указанным ID контролируется и в случае падения ее необходимо перезапустить на другой ноде.

Устроим сбой
Чтобы посмотреть, как именно отрабатывает механизм переключения, погасим нештатно node1 по питанию. Смотрим с другой ноды, что происходит с кластером. Видим, что система зафиксировала сбой.

Работа механизма HA не означает непрерывность работы VM. Как только нода «упала», работа VM временно останавливается до момента автоматического перезапуска на другой ноде.
И вот тут начинается «магия» — кластер автоматически переназначил ноду для выполнения нашей VM и в течение 120 секунд работа была автоматически восстановлена.

Гасим node2 по питанию. Посмотрим, выдержит ли кластер и вернется ли VM в рабочее состояние автоматически.

Увы, как видим, у нас возникла проблема с тем, что на единственной, оставшейся в живых, ноде больше нет кворума, что автоматически отключает работу HA. Даем в консоли команду принудительной установки кворума.
pvecm expected 1
Спустя 2 минуты механизм HA отработал корректно и не найдя node2 запустил нашу VM на node3.

Как только мы включили обратно node1 и node2, работа кластера была полностью восстановлена. Обратите внимание, что обратно на node1 VM самостоятельно не мигрирует, но это можно сделать вручную.
Настройка сети
В официальной документации к Proxmoxнастройка сети виртуальных машин в двух вариантах: с использованием моста и маршрутизации. Все сетевые параметры настраиваются на уровне ноды, для этого нужно перейти на нужный сервер, открыть меню «Система» – «Сеть». Именно там и скрыты сетевые параметры. По умолчанию в VM используется конфигурация «Внешняя сеть», и она оправдывает свое применение.
Пользователь обращается к виртуальным машинам как к самому обычному узлу локальной сети – от просмотра содержимого дисков до копирования, создания, удаления и редактирования файлов. База всех виртуальных сетей в Proxmox — сетевой мост (Linux Bridge) vmbr. Он допускает создание до 4095 таких устройств, подключение физических и виртуальных адаптеров. Все сетевые настройки осуществляются внутри VM, как будто на физическом сервере.
Первые действия после установки
Перед эксплуатацией продукта рекомендуется провести обновление до актуальной версии и внести настройки безопасности. Это обеспечит наличие всех предусмотренных разработчиком функций и отсутствие проблем (релизы как раз и обновляют ради добавления новых возможностей, устранения выявленных ошибок в коде).
Первое, что рекомендуется сделать — это отключить от системы платный репозиторий. Он установлен по умолчанию, но требует приобретения платной подписки. Без нее пользователь увидит ошибку при скачивании новых источников пакетов. Выполнить отключение можно действиями:
1. Открыть консольное окно и следом файл конфигурации apt на редактирование:
2. Поставить символ # перед единственной строчкой, внесенной в него:
#deb https://enterprise.proxmox.com/debian/pve stretch pve-enterprise3. Выйти из редактора комбинацией клавиш <CTRL + X>, ответив Y на запрос о принятии изменений.
Теперь можно выполнить обновление источников пакетов:
Рекомендуется скачивать новые версии всех имеющихся пакетов:
apt -y upgradeБезопасность сетевого соединения
Шаг следующий — позаботиться о безопасности Proxmox Virtualization Environment. Все-таки VM чаще всего используют юридические лица, а у них масса информации, которую желательно хранить вне публичного доступа (коммерческие, персональные данные клиентов и т.д.). Как минимум нужно обезопасить систему от взлома путем перебора паролей, так называемого брутфорса. Эту задачу решит популярная утилита Fail2Ban.
Последовательность действий при установке Fail2Ban:
1. Открыть серверную консоль в браузере или в приложении SSH.
2. Обновить источники пакетов:
3. Инсталлировать саму программу:
apt install fail2ban4. Открыть файл конфигурации для изменения содержимого:
6. Выйти из редактора с сохранением изменений. Выполняется операция нажатием клавиш <CTRL + X> и подтверждением кнопкой Y.
7. Перезапустить службу:
systemctl restart fail2banfail2ban-client -v status sshdОтвет выглядит следующим образом:
Как это работает
Теперь, когда у нас есть четкое понимание того, что такое кластер, предлагаем рассмотреть каким образом его можно создать и задействовать. Будем использовать систему виртуализации с открытым исходным кодом Proxmox VE.
Особенно важно перед тем, как приступать к созданию кластера четко понимать ограничения и системные требования Proxmox, а именно:
- максимальное количество нод в кластере — 32;
- все ноды должны иметь одинаковую версию Proxmox (есть исключения, но для production они не рекомендуются);
- если в дальнейшем планируется задействовать функционал High Availability, то в кластере должно быть как минимум 3 ноды;
- для взаимодействия нод друг с другом должны быть открыты порты UDP/5404, UDP/5405 для corosync и TCP/22 для SSH;
- задержка в сети между нодами не должна превышать 2 мс.
Присоединение к кластеру
Прежде чем подключаться к созданному кластеру нам необходимо получить информацию для выполнения подключения. Для этого заходим в раздел Cluster и нажимаем кнопку Join Information.

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

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

Поля Peer Address и Fingerprint будут заполнены автоматически. Вводим пароль root от ноды номер 1, выбираем сетевое подключение и нажимаем кнопку Join.

В процессе присоединения к кластеру веб-страница GUI может перестать обновляться. Это нормально, просто перезагружаем страницу. Точно таким же образом добавляем еще одну ноду и в итоге получаем полноценный кластер из 3-х работающих узлов.

Теперь мы можем контролировать все узлы кластера из одного GUI.

Возможности решения
виртуализациюдля чайников, то стоит упомянуть, что гипервизор играет роль «контроллера». Программа распределяет аппаратные ресурсы, приоритеты между VM, эмулирует необходимое с учетом стандартов, принятых в установленной операционной системе. Никаких ограничений по выбору операционной системы с Proxmox VEWindows 7/10, Linux и т.д.).
Особенности виртуальных машин:
- Критический сбой, ошибки в работе одной VM никак не влияют на остальные.
- Масштабирование осуществляется простым копированием виртуального сервера
- Поломка «железа» не влияет на сохранность системы, главное — иметь резервную копию.
- Одну и ту же VM легко развернуть на сервере любого производителя.
Последнее заметно упрощает задачу по модернизации оборудования ЦОД. Провайдер меняет любое «железо» на более современное без необходимости учитывать совместимость с ПО. За счет применения тех же дисковых массивов вроде RAID 5, Proxmox вообще не заметит замену одного или несколько накопителей. Виртуализация физических серверов работает бесшовно, чтобы обеспечить заявленную доступность уровня Tier 3 (не менее 99,9%).
Пользуются популярностью несколько гипервизоров: VMware ESXi, Microsoft Hyper-V, Oracle VM VirtualBox, Open Virtualization Alliance KVM. Каждый продукт имеет свои особенности и различную стоимость. При сравнении цена играет важную роль, здесь однозначно выигрывает KVM в составе готового решения на базе Debian Linux — это Proxmox Virtual Environment или Proxmox VE. Отчасти потому, что оно полностью бесплатно, да еще и имеет открытый исходный код.
Процедура установки продукта Proxmox обычно не вызывает вопросов. Инсталлятор работает через стандартный графический интерфейс, и пользователю остается лишь выбирать нужные настройки из выпадающих списков или вручную вносить наименования, пароли и т.д. Скачивать образ диска с новой версией программы рекомендуется с официальной страницы разработчика. Затем его или монтируют из консоли KVM, или развертывают на любой внешний диск.
- Заказать аренду выделенного сервера у провайдера.
- Смонтировать скачанный образ в качестве сменного диска.
- Выбрать диск, куда будет произведена установка продукта.
- В разделе Option задать дополнительные параметры (по необходимости).
- Внести региональные настройки, в нашем случае – Russia.
- Задать пароль для авторизации суперпользователя, указать email.
- Перезагрузить компьютер кликом на кнопку Reboot.
Если речь идет о развертывании системы из ISO-образа на базе Debian, а не инсталляции файлом Proxmox Debian Install, последний пункт обязателен. В любом случае лучше это сделать, чтобы исключить вероятные сбои из-за другого софта, который пользователь ставил в ту же сессию. Остается запустить Proxmoxнастройкой виртуальной машины. Адрес веб-интерфейса выглядит следующим образом:
Создание кластера
Важно! Нижеприведенная конфигурация является тестовой. Не забудьте свериться с официальной документацией Proxmox VE.
Для того, чтобы запустить тестовый кластер, мы взяли три сервера с установленным гипервизором Proxmox одинаковой конфигурации (2 ядра, 2 Гб оперативной памяти).
Изначально, после установки ОС, единичный сервер работает в Standalone-mode.

Создадим кластер, нажав кнопку Create Cluster в соответствующем разделе.

Задаем имя будущему кластеру и выбираем активное сетевое соединение.

Нажимаем кнопку Create. Сервер сгенерирует 2048-битный ключ и запишет его вместе с параметрами нового кластера в конфигурационные файлы.

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

Как это устроено
Когда речь идет о виртуализации, многим начинающим специалистам сложно разобраться в терминологии, поэтому поясним несколько базовых понятий:
- Гипервизор – специальное программное обеспечение, которое позволяет создавать виртуальные машины и управлять ими;
- Виртуальная машина (далее VM) – это система, представляющая собой логический сервер внутри физического со своим набором характеристик, накопителями и операционной системой;
- Хост виртуализации — физический сервер с запущенным на нем гипервизором.
Для того чтобы сервер мог работать полноценным хостом виртуализации, его процессор должен поддерживать одну из двух технологий – либо Intel VT, либо AMD-V. Обе технологии выполняют важнейшую задачу — предоставление аппаратных ресурсов сервера виртуальным машинам.
Ключевой особенностью является то, что любые действия виртуальных машин исполняются напрямую на уровне оборудования. При этом они друг от друга изолированы, что достаточно легко позволяет управлять ими по отдельности. Сам же гипервизор играет роль контролирующего органа, распределяя ресурсы, роли и приоритеты между ними. Также гипервизор занимается эмуляцией той части аппаратного обеспечения, которая необходима для корректной работы операционной системы.
Расширенные возможности
Внедрение виртуализации дает возможность иметь в наличии несколько запущенных копий одного сервера. Критический сбой или ошибка, в процессе внесения изменений в такую копию, никак не повлияет на работу текущего сервиса или приложения. При этом также снимаются две основные проблемы – масштабирование и возможность держать «зоопарк» разных операционных систем на одном оборудовании. Это идеальная возможность совмещения самых разных сервисов без необходимости приобретения отдельного оборудования для каждого из них.
Виртуализация повышает отказоустойчивость сервисов и развернутых приложений. Даже если физический сервер вышел из строя и его необходимо заменить на другой, то вся виртуальная инфраструктура останется полностью работоспособной, при условии сохранности дисковых носителей. При этом физический сервер может быть вообще другого производителя. Это особенно актуально для компаний, которые используют серверы, производство которых прекращено и потребуется осуществить переход на другие модели.
Теперь перечислим самые популярные гипервизоры, существующие на текущий день:
- VMware ESXi
- Microsoft Hyper-V
- Open Virtualization Alliance KVM
- Oracle VM VirtualBox
Они все достаточно универсальны, однако, у каждого из них имеются определенные особенности, которые следует всегда учитывать на этапе выбора: стоимость развёртывания/обслуживания и технические характеристики. Стоимость коммерческих лицензий VMware и Hyper-V весьма высока, а в случае возникновения сбоев, решить проблему с этими системами собственными силами очень непросто.
KVM же напротив, полностью бесплатен и достаточно прост в работе, особенно в составе готового решения на базе Debian Linux под названием Proxmox Virtual Environment. Именно эту систему мы можем порекомендовать для первоначального знакомства с миром виртуальной инфраструктуры.
Данная процедура чаще всего не вызывает никаких вопросов. Скачиваем актуальную версию образа с официального сайта и записываем его на любой внешний носитель с помощью утилиты Win32DiskImager (в Linux используется команда dd), после чего загружаем сервер непосредственно с этого носителя. Наши клиенты, арендующие у нас выделенные серверы, могут воспользоваться двумя еще более простыми путями – просто смонтировав нужный образ непосредственно из KVM-консоли, либо используя наш PXE-сервер.
Программа установки имеет графический интерфейс и задаст всего лишь несколько вопросов.
1. Выбираем диск, на который будет выполнена установка. В разделе «Options» можно также задать дополнительные параметры разметки.

2. Указываем региональные настройки.

3. Указываем пароль, который будет использоваться для авторизации суперпользователя root и E-mail адрес администратора.

4. Указываем сетевые настройки. FQDN обозначает полностью определенное имя домена, например, node01.yourcompany.com.

5. После завершения установки, сервер можно отправить в перезагрузку с помощью кнопки Reboot.

Веб-интерфейс управления станет доступен по адресу:
https://IP_адрес_сервера:8006
Подводим итоги
Мы рассказали вам про то, как устроен механизм кластеризации в Proxmox, а также показали, как настраивается HA для виртуальных машин и контейнеров. Грамотное использование кластеризации и HA значительно повышает надежность инфраструктуры, а также обеспечивает восстановление после сбоев.
Перед тем как создавать кластер, нужно сразу планировать для каких целей он будет использоваться и насколько его потребуется масштабировать в будущем. Также нужно проверить сетевую инфраструктуру на готовность работы с минимальными задержками, чтобы будущий кластер работал без сбоев.
Расскажите нам — используете ли вы возможности кластеризации в Proxmox? Ждем вас в комментариях.
Заключение
Вот и все основы работы с гипервизором Proxmox VE. Их достаточно начинающим специалистам, чтобы опробовать технологию виртуализации на практике. На первый взгляд, технология может показаться сложной, и, конечно, всегда можно купить виртуальную машину или несколько у провайдера и объединить их в локальную сеть. Однако развертывание VM на собственном арендуемом сервере даст вам больше свободы в управлении.
Proxmox VE, несмотря на бесплатность, считается довольно мощным и удобным инструментом. Главное, самому разобраться во всех тонкостях настройки системы и не бояться экспериментировать (естественно, на тестовой платформе, с обязательным резервированием основных VM).
Заключение
В этой статье были изложены основы того, как можно начать работать с Proxmox VE и мы надеемся, что она поможет начинающим специалистам сделать первый шаг и попробовать виртуализацию в действии.
Proxmox VE — это действительно очень мощный и удобный инструмент для любого системного администратора; главное не бояться экспериментировать и понять, как это действительно работает.

