Глава 1. Основы Proxmox VE
Виртуальная среда Proxmox ( PVE, Proxmox Virtual Environment ) является зрелой, завершённой, хорошо сопровождаемой средой виртуализации для серверов корпоративного уровня. Она является инструментарием с открытым исходным кодом — основанном на дистрибутиве Debian GNU/Linux — который управляет контейнерами, виртуальными машинами, хранилищами, виртуализированными сетевыми средами, а также кластеризацией с высокой доступностью, с применением хорошо спроектированного интерфейса на веб- основе или через интерфейс командной строки.
Разработчики предоставили первую стабильную реализацию Proxmox VE в 2008; четыре года и восемь выпусков спустя Ken Hess, ZDNet, отважно, но однако совершенно разумно объявил Proxmox VE в качестве Proxmox: совершенный гипервизор http://www.zdnet.com/article/proxmox-the-ultimate-hypervisor/. Ещё спустя четыре года, PVE в версии 4.1 применяется по крайней мере на 90 000 хостах, и более чем 500 коммерческими потребителями в 140 странах; веб- интерфейс сам по себе переведён на 19 языков.
Данная глава изучает фундаментальные технологии, лежащие в основе функциональности гипервизора PVE: LXC , KVM и QEMU . Для этого мы будем развивать пригодное для работы понимание виртуальных машин, контейнеров и их надлежащего применения.
В данной главе мы обсудим:
- Proxmox VE вкратце
- Виртуализацию и контейнеризацию при помощи PVE
- Виртуальные машины Proxmox VE, KVM и QEMU
- Контейнеризацию посредством PVE и LXC
Содержание
Proxmox VE в двух словах
При помощи Proxmox VE, Proxmox Server Solutions GmbH (https://www.proxmox.com/en/about) снабжает нас готовым для применения на корпоративном уровне гипервизором 2 типа . Далее вы обнаружите свойства, которые делают Proxmox VE сильным претендентом для корпоративного уровня.
- Лицензирование Proxmox VE совершенно обдуманно осуществляется на условиях GNU Affero General Public License (V3) (https://www.gnu.org/licenses/agpl-3.0.html). Это показательный выбор из большого числа свободных совместимых лицензий и лицензий открытого исходного кода, так как оно «специально разработано для обеспечения взаимодействия с сообществом для варианта програмного обеспечения сетевых серверов».
- PVE главным образом администрируется через веб- интерфейс, при помощи командной строки локально и с использованием SSH. Следовательно, отсутствует потребность в отдельном сервере управления и связанных с этим расходах. Таким образом Proxmox VE значительно отличается от альтернативных решений виртуализации корпоративного уровня таких производителе как, например, VMWare.
- Экземпляры/ узлы Proxmox VE могут быть объединены в кластеры PVE и централизованно администрироваться посредством унифицированного веб- интерфейса.
- Proxmox VE предоставляет возможности миграции в реальном масштабе времени («вживую) — перемещение виртуальной машины или контейнера с одного узла кластера на другой без нарушения обслуживания. Это достаточно уникальная особенность PVE не являющаяся распространённой в конкурирующих продуктах.
Функциональное тестирование подобно приведенному не подменяет соответствующее тестирование блоков и интеграции, однако служит отправной точкой.
Требования к оборудованию
Строгое соответствие HCL (Hardware Compatibility List)
Встроенный интерфейс управления
На основе веб и оболочек (браузер и SSH)
Отсутствует. Требуется сервер управления за дополнительную плату.
Простая структура подписок
Присутствует; основана на числе оплачиваемых билетов (ticket) поддержки в году и числа ЦПУ.
Высокая доступность
Миграция ВМ в реальном масштабе времени
Поддержка контейнеров
Поддерживаемые ОС виртуальных машин
Windows и Linux
Windows, Linux и Unix
Поддержка сообщества
Снимки ВМ вреальном времени
Для полного каталога свойств ознакомьтесь со справочной таблицей по адресу https://www.proxmox.com/images/download/pve/docs/Proxmox-VE-Datasheet.pdf.
Как и его конкуренты, Proxmox VE является гипервизором: обычный гипервизор это программное обеспечение, которое создаёт, выполняет, настраивает и управляет виртуальными машинами на основе выборов администратора или инженера.
PVE называется гипервизором 2 типа, поскольку уровень виртуализации встроен в операционную систему.
Будучи гипервизором 2 типа, Proxmox VE собирается в рамках проекта Debian. Debian является дистрибутивом GNU/Linux, известный своей надёжноститью, приверженностью к безопасности а также своим процветанием и преданным сообществом содействующих разработчиков.
Рисунок 1.1.

Гипервизоры 2 типа, подобные PVE, выполняются непосредственно из операционной системы. В случае Proxmox VE операционной системой является Debian; начиная с версии PVE 4.0 лежащей в основе операционной системой была Debian «Jessie»
В противоположность ему, гипервизор 1 типа ()подобный VMware ESXi) работает напрямую на голом железе без посредства операционной системы. Он не имеет дополнительной функциональности между управлением виртуализацией и аппаратными средствами.
Рисунок 1.2.

Гипервизор 1 типа работает непосредственно на аппаратных средствах без посредства операционной системы
Дистрибуивы GNU/Linux на основе Debian возможно наиболее популярные дистрибутивы GNU/Linux для настольных приложений.
Одна из характеристик, которая отличает Debian от конкурирующих дистрибутивов заключается в её политике редакций: Debian выпускается только тогда, когда сообщество разработчиков может гарантировать его стабильность , безопасность и удобство в эксплуатации .
Debian не делает различий между выпусками сдлительной поддержкой (long-term support) и обычными версиями.
Вместо этого все выпуски Debian получают сильную поддержку и критически важные обновления на протяжении первого года, следующего за выпуском. (Начиная с 2007г основные выпуски Debian осуществлялись примерно каждые два года.) Debian 8, Jessie , был выпущен примерно по расписанию в 2015.
Уверенность Proxmox VE в Debian таким образом свидетельствует приверженности этим принципам: стабильность, безопасность, удобство в эксплуатации на протяжении запланированных выпусков, которые способствуют передовым функциям.
Proxmox VE предоставляет свою функциональность виртуализации посредством трёх открытых технологий, управляемых через унифицированный веб- интерфейс:
Чтобы понять как этот фундамент обслуживает Proxmox VE мы должны вначале быть способными ясно понимать связь между виртуализацией, (или, в особенности, аппаратной виртуализацией ) и контейнеризацией ( виртуализация ОС ). Когда мы разберёмся с этим, их соответствующие варианты применения должны стать совершенно ясными.
Виртуализация при помощи Proxmox VE
В конечном счёте будет правильно рассматривать контейнеризацию как некий тип виртуализации. Тем не менее, здесь мы вначале рассмотрим концептуальные отличия виртуальной машины от контейнера, сосредоточившись на противопоставлении характеристик.
Говоря без прикрас, виртуализация является техникой, посредством которой мы предоставляем полную функциональность вычислительных ресурсов без запроса на физическую организацию ресурсов, их размещения или относительной близости.
Технология виртуализации позволяет нам совместно использовать и распределять наши ресурсы физических компьютеров во множестве сред исполнения. Без контекста виртуализация является мутным термином. Она инкапсулирует абстракцию таких ресурсов как хранилище, сетевая среда, серверы, среды рабочих столов и даже приложений от их определённых аппаратных требований через решения программных реализаций, называемых гипервизорами .
Таким образом виртуализация предоставляет нам бОльшую гибкость, бОльшую функциональность и значительное положительное воздействие на бюджеты, которые часто реализуются только с имеющимися у нас в руках ресурсами.
С точки зрения PVE виртуализация чаще всего относится к абстрагированию всех аспектов отвлечённых вычислительных систем от их оборудования. Другими словами, в контексте виртуализация является созданием из виртуальной машины или ВМ (VM) своих собственных операционной системы и приложений.
Для начала можно представлять себе ВМ как компьютер, который имеет ту же функциональность, что и физическая машина. Точно так же он может объединяться и взаимодействовать через сетевую среду идентично тому как это могут делать машины с физическими аппаратными средствами. Проложив ещё один путь изнутри ВМ мы не будем ощущать никакой разницы при помощи которой мы могли бы отличить её от физического компьютера.
К тому же виртуальная машина не имеет физических следов своих материальных аналогов. Оборудование, на которое она полагается, на самом деле, является предоставляемым программным обеспечением и которое заимствует аппаратные ресурсы хоста, установленные на физической машине (или «голом железе», bare metal ).
Тем не менее, компоненты программного обеспечения виртуальной машины от приложений вплоть до операционной системы отчётливо отделяются от программных компонентов вашей машины хоста. Это преимущество реализуется когда идёт речь о распределении физического пространства для ресурсов.
Например, мы можем иметь сервер PVE, выполняющий веб- сервер, сервер базы данных, межсетевой экран и журналирование управления системой — всё в виде отдельных виртуальных машин. Вместо того чтобы потреблять физическое пространство, ресурсы и работу по сопровождению четырёх машин мы просто делаем физическое помещение для единственного сервера Proxmox VE и настраиваем по необходимости соответствующую виртуальную сетевую среду.
В белых страницах озаглавленных Продвижение виртуализации серверов в обработку ( Putting Server Virtualization to Work ), AMD ясно произносит преимущества виртуализации для коммерческой деятельности и разработчиков (https://www.amd.com/Documents/32951B_Virtual_WP.pdf):
5 главных преимуществ виртуализации для коммерческой деятельности:
- Увеличение использования сервера
- Улучшает уровни обслуживания
- Упрощает управляемость и безопасность
- Снижает стоимость аппаратных средств
- Сокращает затраты на объекте
Преимущества виртуализации при разработке и в средах тестирования:
- Снижает требования к капиталу и пространству
- Снижает стоимость электропитания и охлаждения
- Увеличивает эффективность за счёт сокращения сроков тестирования
- Более быстрый выход на рынок
К этим преимуществам давайте добавим переносимость и инкапсуляцию: уникальные возможности для миграции работающих ВМ с одного хоста PVE на другой — без претерпения каких- либо перерывов в обслуживании.
Proxmox VE делает возможным создание и управление виртуальными машинами посредством комбинации применения двух свободных технологий с открытым исходным кодом: Kernel-based Virtual Machine (или KVM ) и Quick Emulator ( QEMU ). При совместном применении мы будем ссылаться на эту интеграцию инструментов как на KVM-QEMU .
KVM
KVM вошёл в состав ядра Linux в феврале 2007. Этот модуль ядра позволяет пользователям и администраторам GNU/Linux получать преимущества от расширений аппаратной архитектуры виртуализации; для наших целей этими расширениями являются AMD-V компании AMD и VT-X компании Intel для архитектуры x86_64.
Чтобы получить большую часть набора функциональности Proxmox VE вам для этого потребуется установить любую машину x86_64 с имеющим интергррованные расширения виртуализации процессором. Для получения полного списка поддерживающих KVM процессоров посетите Intel по ссылке http://ark.intel.com/Products/VirtualizationTechnology или AMD по адресу http://support.amd.com/en-us/kb-articles/Pages/GPU120AMDRVICPUsHyperVWin8.aspx.
QEMU
QEMU предоставляет интерфейс эмуляции и виртуализации которые могут управляться пользователем через сценарии или другие способы.
Рисунок 1.3.

Визуализация взаимосвязей между KVM и QEMU
Не применяя Proxmox VE мы можем по существу определить аппаратные средства, создать виртуальный диск и запустить/ остановить виртуализированный сервер из командной строки с помощью QEMU.
В качестве альтернативы мы можем на любой один из имеющегося массива графических интерфейсов для QEMU (перечень доступных GUI для различных платформ можно найти по адресу http://wiki.qemu.org/Links#GUI_Front_Ends).
Конечно, работа с этими решениями является продуктивной только если вы заинтересованы в том, что происходит за кулисами в PVE, когда определяются виртуальные машины. Управление виртуальными машинами Proxmox VE само по себе, управляет QEMU посредством его API.
Управление QEMU из командной строки может быть утомительным. Ниже приводится строка из сценария, который запускает Raspbian, ремикс Debian для архитектуры Raspberry Pi на машине x86 Intel выполняющей Ubuntu. Когда мы увидим как легко можно управлять виртуальными машинами из административного интерфейса Proxmox VE, мы искренне оценим эту относительную простоту: qemu-system-arm -kernel kernel-qemu -cpu arm1176 -m 256 -M versatilepb -no-reboot -serial stdio -append «root=/dev/sda2 panic=1» -hda ./$raspbian_img -hdb swap .
Если вы знакомы с функциями эмуляции QEMU, вероятно, будет полезно заметить, что мы не можем управлять эмуляцией посредством инструментов и функций предоставляемых Proxmox VE — несмотря на его зависимость от QEMU. Из предоставлеямой Debian оболочки bash это возможно. Тем не менее, эмуляция не может управляться через интерфейсы администрирования и управления PVE.
Виртуализация ОС при помощи Proxmox VE
Контейнеры являются другим типом виртуализации. Являясь синонимом виртуализации операционной системы , контейнеры переживают в настоящее время возрождение. В противоположность ВМ, контейнеры совместно применяют компоненты операционной системы, такие как библиотеки и исполняемые файлы в операционной системе хоста; чего не могут делать виртуальные машины.
Рисунок 1.4.

Визуализальное сопоставление виртуальных машин и контейнеров
Преимущество контейнеров
Подобное положение потенциально позволяет котейнерам более компактный запуск при меньших заимствуемых у хоста аппаратных ресурсах. Многим авторам, учёным мужам и пользователям контейнеры также предлагают наглядные преимущества с точки зрения скорости и эффективности. (Тем не менее, здесь следует отметить, что такие ресурсы как оперативная память и мощные ЦПУ становятся дешевле и это преимущество будет уменьшаться, < Прим. пер.: пример подобной аргументации и реализация этого подхода>).
Контейнер Proxmox VE возможен благодаря LXC начиная с версии 4.0 (в предыдущих версиях они были возможны благодаря OpenVZ < Прим. пер.: Proxmox предоставляет инструменты для преобразования контейнеров OpenVZ в LXC, подробнее. >). LXC является третьей фундаментальной технологией, обслуживающей последние интересы Proxmox VE. Как и KVM и QEMU, LXC (или Linux Containers) является технологией с открытым исходным кодом. Она позволяет хосту выполнять, а администратору управлять множеством экземпляров операционной системы в виде изолированных контейнеров на отдельном физическом хосте. К тому же, концептуально контейнер очень чётко представляет некий класс виртуализации, а не противоположную идею. Тем не менее, полезно проводить чёткое различие между виртуальной машиной и контейнером, как мы это проводим в терминах PVE.
Идеальная реализация гостя Proxmox VE зависит от обстоятельств нашей дифференциации и выбора между решением виртуальной машины и решением контейнера.
Так как контейнеры Proxmox VE совместно используют компоненты в операционной системе хоста, что предлагает преимущества в смысле эффективности, данный текст будет направлять вас на создание вами контейнеров в том случае, когда гость может быть полностью реализован при помощи Debian Jessie , являющейся операционной системой нашего гипервизора без ущерба для функциональности.
Когда мы собираемся, например, выполнять операционную систему Microsoft Windows, контейнер Proxmox VE перестаёт быть решением. В этом случае мы вместо этого переходим к созданию виртуальной машины. < Прим. пер.: тем, кто всё-таки хочет применять контейнеризацию Windows , советуем обратиться к решениям, предлагаемых в рамках продукта Docker >. Мы должны применять ВМ именно потому, что компоненты операционной системы, которые Debian может предлагать для совместного использования с контейнерами Linux не являются теми компонентами, которые может применять операционная система Microsoft Windows.
Заключение
В данной главе мы приняли три технологии с открытым исходным кодом, которые обеспечивают функциональные особенности Proxmox VE: контейнеризацию и виртуализацию при помощи LXC, KVM и QEMU.
В этом пути мы пришли к пониманию, что контейнеры, будучи типом виртуализации, имеют свойства, отличающие их от виртуальных машин.
Эти различия будут иметь решающее значение когда мы определим на какие технологии будут полагаться решения виртуального сервера Proxmox VE.
Следующая глава будет вашим руководством по установке и настройке вашего первого сервера Proxmox VE. Таким образом, она предоставит описание аппаратных средств Proxmox VE и методы установки. Наконец, мы совершим прогулку по своему Proxmox Installer.
Давайте продвинемся вперёд и подготовим наш первый экземпляр PVE, который будет применять хост и для контейнеров, и для виртуальных машин.
Что такое Proxmox VE

Опубликовано: 21.02.2022
Proxmox VE —
(Proxmox Virtual Environment или PVE) программный продукт для реализации платформы виртуализации. Разработан компанией Proxmox Server Solutions GmbH в 2008 году.
PVE основан на операционной системе Debian, гипервизоре KVM и системе контейнеров LXC. Он распространяется в виде ISO-образа для инсталляции с диска или флешки, а также может быть установлен из репозитория (только в Debian). Скачать дистрибутив и документацию можно на официальном сайте. На момент обновления данных строк последняя версия была 7.
Управление гипервизором осуществляется с помощью графического веб-интерфейса и/или командной строки.
Программный продукт можно загрузить и использовать бесплатно. Также доступна платная подписка, которая дает следующие преимущества:
- Доступ к корпоративному репозиторию.
- Дополнительные готовые решения от разработчика.
- Поддержка сообщества.
На более высоких по стоимости подписках доступна поддержка от разработчика и помощь с удаленным подключением по SSH.
Proxmox Virtual Environment завоевал популярность благодаря стабильности KVM и возможности им управлять из графического интерфейса. Он является хорошей бесплатной альтернативой VMware для дома и небольшого офиса. Однако стоит иметь ввиду, что последний все еще является лидером на рынке виртуализации из-за более стабильной работы и большего количества функциональных возможностей.
Другие продукты Proxmox Server Solutions GmbH:
- Mail Gateway. Почтовый шлюз для проверки входящей и исходящей почты на предмет нежелательного контента.
- Backup Server. Средство для выполнения резервного копирования виртуальных машин, контейнеров и физических серверов.
Подробнее о Proxmox VE на Википедии.
Proxmox Virtual Environment
![]()
Proxmox Virtual Environment (Proxmox VE) — система виртуализации с открытым исходным кодом, основанная на Debian GNU/Linux. Разрабатывается австрийской фирмой Proxmox Server Solutions GmbH, спонсируемой Internet Foundation Austria.
В качестве гипервизоров использует KVM и OpenVZ. Соответственно, способна выполнять любые поддерживаемые KVM ОС (Linux, *BSD, Windows и другие) с минимальными потерями производительности и Linux без потерь.
Управление виртуальными машинами и администрирование самого сервера производятся через веб-интерфейс либо через стандартный интерфейс командной строки Linux.
Для создаваемых виртуальных машин доступно множество опций: используемый гипервизор, тип хранилища (файл образа или LVM), тип эмулируемой дисковой подсистемы (IDE, SCSI или VirtIO), тип эмулируемой сетевой карты, количество доступных процессоров и другие.
Ключевые возможности
- Простое управление через веб-интерфейс;
- Мониторинг нагрузки в реальном времени;
- Библиотека установочных образов (в локальном или удаленном хранилище);
- Подключение к «физической» консоли гостевых систем непосредственно из браузера (по VNC);
- Объединение серверов в кластер с возможностью живой миграции виртуальных машин (без остановки гостевой системы);
- Быстрое развертывание гостевых систем из шаблонов (доступно только для OpenVZ);
- Автоматическое резервное копирование виртуальных машин.
С сайта разработчиков можно загрузить готовые шаблоны [1] (как дистрибутивы общего назначения, так и настроенные под конкретную задачу, например запуск MediaWiki, Drupal или WordPress). Также можно создавать собственные шаблоны, воспользовавшись инструментом Debian Appliance Builder [2] .
Системные требования
- CPU: 64bit (Intel EMT64 or AMD64), поддержка Intel VT/AMD-V CPU/Mainboard (для использования KVM Full Virtualization);
- Минимум 1 Гб ОЗУ;
- Жёсткий диск;
- Сетевая карта.
- CPU: мультипроцессорный 64bit (Intel EMT64 or AMD64), поддержка Intel VT/AMD-V CPU/Mainboard (для использования KVM Full Virtualization);
- 4 Гб ОЗУ и больше;
- Hardware RAID;
- Быстрые жёсткие диски 15krpm SAS, Raid10;
- Сетевая карта.
Реальные системные требования определяются количеством и требованиями гостевых систем.
Примечания
Ссылки
- Сайт проекта (англ.)
- Документация по проекту
- ProxMox: The high-performance virtualization server for the rest of us (англ.)
- Review: Proxmox Virtual Environment (англ.)
- ProxMox, The Open Source Virtual Environment You Didn’t Know (англ.)
- Constantinus 2009: Wall of Fame (нем.)
- Дистрибутивы семейства Debian
- Дистрибутивы Linux
- Виртуализация
Wikimedia Foundation . 2010 .
Что такое Proxmox Virtual Environment и как его использовать?

В сегодняшней статье мы опишем процесс установки Proxmox Virtual Environment (Proxmox VE) — систему управления виртуализации с открытым кодом, которая базируется на QEMU/KVM и LXC. Данное решение позволяет вам управлять виртуальными машинами, контейнерами, отказоустойчивыми кластерами, СХД и прочие — все это с помощью web-интерфейса или CLI. Чтобы было понятнее — Proxmox VE — это альтернатива c открытым программным кодом таким продуктам как VMware vSphere, Microsoft Hyper-V или Citrix XenServer.
Важное уточнение — согласно лицензии GNU AGPL v3 данное программное обеспечение является бесплатным, но, есть возможность купить подписку. Подписка дает следующие преимущества — поддержка от вендора/коммьюнити (в зависимости от выбранного плана), доступ к репозиторию и так далее.
Proxmox Virtual Environment (Proxmox VE) — система виртуализации с открытым исходным кодом, основанная на Debian GNU/Linux. Разрабатывается австрийской фирмой Proxmox Server Solutions GmbH, спонсируемой Internet Foundation Austria.
В качестве гипервизоров использует KVM и LXC. Соответственно, способна выполнять любые поддерживаемые KVM операционные системы с минимальными потерями производительности и Linux без потерь.
Управление виртуальными машинами и администрирование самого сервера производятся через web-интерфейс либо через стандартный интерфейс командной строки Linux.
Для создаваемых виртуальных машин доступно множество опций: используемый гипервизор, тип хранилища (файл образа или LVM), тип эмулируемой дисковой подсистемы (IDE, SCSI или VirtIO), тип эмулируемой сетевой карты, количество доступных процессоров и другие.
Список поддерживаемых web-интерфейс Proxmox Virtual Environment (Proxmox VE) с браузеров включает Chrome, Mozilla Firefox, Safari и IE (актуальные версии).
Ключевые возможности:
- Простое управление через web-интерфейс;
- Мониторинг нагрузки в реальном времени;
- Статистика и информативные графики нагрузки сервера виртуализации и каждой виртуальной машины в отдельности — по оперативной памяти, CPU, HDD, сети в разрезе последний час/день/неделя/месяц/год;
- Библиотека установочных образов (в локальном или удаленном хранилище);
- Подключение к «физической» консоли гостевых систем непосредственно из браузера (по VNC и посредством SPICE-клиента);
- Объединение серверов в кластер с возможностью живой миграции виртуальных машин (без остановки гостевой системы);
- Быстрое развертывание гостевых систем из шаблонов;
- Сохранение образа состояния виртуальной машины (snapshot), формирование дерева состояний и возможность отката на любую из точек;
- Автоматическое резервное копирование виртуальных машин.
С чего начать?
Есть два варианта установки Proxmox VE — использовать готовый образ или установка на Debian. Мы будем использовать готовый образ!