УСТАНОВКА PROXMOX В DEBIAN 10

Thank you for reading this post, don't forget to subscribe!

Proxmox Virtual Environment это систе­ма вир­ту­а­ли­за­ции с откры­тым исход­ным кодом. В насто­я­щее вре­мя Proxmox VE, в рели­зах выше 4.0 и 3.4, исполь­зу­ет гипер­ви­зо­ры KVM и LXC, что поз­во­ля­ет запус­кать вир­ту­а­ли­за­цию прак­ти­че­ски любой ОС. Управ­ля­ет­ся Proxmox VE через удоб­ный веб-интер­фейс. Как гипер­ви­зор Proxmox VE явля­ет­ся высо­ко­про­из­во­ди­тель­ным, вир­ту­аль­ные маши­ны с Linux рабо­та­ют без потерь, дру­гие госте­вые ОС вызы­ва­ют мини­маль­ные поте­ри производительности.

Proxmox VE тре­бу­ет под­держ­ки Intel-VT/AMD-V, одна­ко ста­рые дис­три­бу­ти­вы с OpenVZ поз­во­ля­ют запус­кать вир­ту­а­ли­за­цию Linux без исполь­зо­ва­ния вир­ту­а­ли­за­ции. Proxmox VE актив­но исполь­зу­ет тома LVM, LVM-Thinоткры­тые пап­ки сете­вых хра­ни­лищ и сете­вые систе­мы хра­не­ния дан­ных. Исполь­зуя воз­мож­но­сти рас­про­стра­не­ния ПО с откры­тым исход­ным кодом, Proxmox VE мож­но загру­зить как само­сто­я­тель­ный уста­нов­щик в ISO обра­зе или уста­нав­ли­вать на Debian из репо­зи­то­ри­ев. Опла­чи­ва­ет­ся толь­ко под­пис­ка на тех­ни­че­скую под­держ­ку, поэто­му Proxmox VE мож­но исполь­зо­вать как пол­но­цен­ное мощ­ное бес­плат­ное реше­ние для виртуализации.

УСТАНОВКА PROXMOX VE НА DEBIAN 10 BUSTER

В ста­тьях на раз­лич­ных пор­та­лах в Интер­не­те мож­но про­чи­тать, что VPS и VDS не име­ют раз­ни­цы, про­сто раз­лич­ные аббре­ви­а­ту­ры одно­го и того же. Одна­ко, с моей точ­ки зре­ния, есть суще­ствен­ное раз­ли­чие в пред­ло­же­ни­ях про­вай­де­ров – вир­ту­аль­ный хост при­об­ре­тён в арен­ду или реаль­ный сер­вер в стойке.

Что­бы про­ве­рить, мож­но ли пол­но­цен­но исполь­зо­вать вир­ту­а­ли­за­цию Proxmox VE в обла­ке или на реаль­ном хосте, в Debian 10 Buster, под­клю­ча­ем­ся к кон­со­ли сер­ве­ра по ssh, в моем слу­чае с помо­щью Putty RUS и вводим:

cat /proc/cpuinfo | grep '(svm|vmx)'

Если вир­ту­а­ли­за­ция под­дер­жи­ва­ет­ся про­цес­со­ром хоста, то резуль­тат рабо­ты не пустой, а несколь­ко строк:

ОБНОВЛЕНИЕ СИСТЕМЫ DEBIAN 10 BUSTER

Обно­ви­те Debian 10 Buster до акту­аль­ной и пере­за­гру­зи­те по выполнении:

sudo apt -y update

sudo apt -y upgade

sudo reboot

После пере­за­груз­ки уста­но­ви­те необ­хо­ди­мые пакеты:

sudo apt -y install mc wget

НАСТРОЙКА ФАЙЛА /ETC/HOSTS

Для нор­маль­ной уста­нов­ки Proxmox VE в Debian 10 в фай­ле /etc/hosts долж­но быть ука­за­но крат­кое и домен­ное имя хоста. У VDS или VPS файл /etc/hosts обыч­но уже настро­ен, но про­ве­рить не меша­ет. Долж­но выгля­деть так, как на скриншоте:

В моем слу­чае ука­за­ны име­на для адре­са 127.0.0.1 localhost. Перед стро­кой 127.0.0.1 с име­нем хоста pve-test необ­хо­ди­мо поста­вить знак #, что­бы заком­мен­ти­ро­вать эту стро­ку, ина­че Proxmox VE уста­но­вит­ся некор­рект­но. Это локаль­ные адре­са и внеш­ние адре­са для раз­ре­ше­ния име­ни и адре­са хоста.

192.168.0.166 IP-адрес для сете­вой кар­ты, по кото­ро­му я под­клю­ча­юсь к Debian 10 Buster. Ниже ука­за­ны адре­са IPV6 и ещё ниже я ука­зал самые быст­рые адре­са репо­зи­то­ри­ев Debian.org имен­но с моей лока­ции, что поз­во­ли­ло мне суще­ствен­но уско­рить загруз­ку паке­тов при обнов­ле­нии Debian 10 Buster. Вам это делать необязательно.

УСТАНОВКА РЕПОЗИТОРИЕВ PROXMOX VE

Для уста­нов­ки Proxmox VE на Debian 10 Buster необ­хо­ди­мо доба­вить репо­зи­то­рии Proxmox VE. Репо­зи­то­рии Debian уда­лять необя­за­тель­но. Что­бы боль­ше не изме­нять sources.list, создай­те в /etc/apt/souces.list.d файл proxmox.list, кото­рый будет содер­жать необ­хо­ди­мые репо­зи­то­рии исклю­чи­тель­но для Proxmox VE. Ука­за­ние, что мы не исполь­зу­ем под­пис­ку, стро­ка pve-no-subscription:

echo deb http://download.proxmox.com/debian/pve buster pve-no-subscription | sudo tee /etc/apt/sources.list.d/proxmox.list

Уста­но­ви­те ключ репо­зи­то­рия и запу­сти­те обнов­ле­ние, что­бы под­клю­чи­лись репо­зи­то­рии Proxmox VE:

sudo wget http://download.proxmox.com/debian/proxmox-ve-release-6.x.gpg -O /etc/apt/trusted.gpg.d/proxmox-ve-release-6.x.gpg

sudo apt -y update

УСТАНОВКА ПАКЕТОВ PROXMOX VE

Про­верь­те, появил­ся ли в паке­тах proxmox-ve:

sudo apt search proxmox-ve

Если появил­ся, зна­чит все репо­зи­то­рии под­клю­че­ны и обнов­ле­ны кор­рект­но. Уста­но­ви­те Proxmox VE, затем сно­ва перезагрузите:

sudo apt -y install proxmox-ve

sudo reboot

В резуль­та­те пере­за­груз­ки в /etc/issue будет сле­ду­ю­щий текст:

------------------------------------------------------------------------------
Welcome to the Proxmox Virtual Environment. Please use your web browser to
configure this server - connect to:
https://192.168.0.166:8006/
------------------------------------------------------------------------------

Адрес веб-интер­фей­са Proxmox VE актуа­лен для мое­го сер­ве­ра, для дру­го­го сер­ве­ра будет ука­зан так:

https://<IP-адрес>:8006/

На этом уста­нов­ка Proxmox на Debian 10 завер­ше­на, даль­ше пого­во­рим про настройку.

РАБОТА С WEB-ИНТЕРФЕЙСОМ

Под­клю­че­ние к Proxmox выпол­ня­ет­ся с помо­щью бра­у­зе­ра. Под­клю­чи­тесь по ука­зан­но­му адре­су из любо­го бра­у­зе­ра. Сер­ти­фи­ка­ты сер­ве­ра явля­ют­ся само­под­пи­сан­ны­ми, поэто­му бра­у­зер выдаст пре­ду­пре­жде­ние без­опас­но­сти. Нажми­те Допол­ни­тель­ные и выби­ра­ем ссыл­ку Перей­ти на сайт 192.168.0.166 (небез­опас­но). На скрин­шо­те ниже пока­за­но выгля­дит WEB-интер­фейс Proxmox VE:

Сна­ча­ла выбе­ри­те рус­ский язык, затем вве­ди­те поль­зо­ва­те­ля root и пароль от суперпользователя:

Нас пре­ду­пре­ди­ли, что на Proxmox VE не оформ­ле­на под­пис­ка на наш сер­вер, ОК.

Настрой­те хра­ни­ли­ще. Сей­час систе­ма авто­ма­ти­че­ски созда­ла хра­ни­ли­ще в рас­по­ло­же­нии /var/lib/vz с назва­ни­ем local. Клик­ни­те на ссылку:

В хра­ни­ли­ще с помо­щью WEB-интер­фей­са Proxmox мож­но загру­зить образ дис­ка ISO, раз­ме­стить там же образ дис­ка вир­ту­аль­ной маши­ны, кон­тей­не­ры и шаб­ло­ны. Так же в хра­ни­ли­щах хра­нят­ся snapshot – архив­ные копии вир­ту­аль­ных машин. Хоро­шим реше­ни­ем будет доба­вить в систе­му ещё одно хра­ни­ли­ще для бэка­пов, шаб­ло­нов вир­ту­аль­ных машин.

Создай­те допол­ни­тель­ное хра­ни­ли­ще. Для это­го перей­ди­те в раз­дел Дата­центр, най­ди­те спра­ва от дере­ва сер­ве­ров пункт Хра­ни­ли­ще, клик­ни­те по нему и выбе­ре­те хра­ни­ли­ще local. На при­ве­дён­ном ниже скрин­шо­те вид­но, что, клик­нув на local в основ­ном окне, мож­но редак­ти­ро­вать типы хра­ни­мой инфор­ма­ции. Для даль­ней­шей демон­стра­ции вклю­чаю тип Резерв­ная копия и при­ме­няю изменения:

По кноп­ке Доба­вить мож­но посмот­реть какие типы хра­ни­ли­ща доступ­ны в дан­ной инстал­ля­ции Proxmox VE.

В моей тесто­вой машине все реа­ли­зо­ва­но на томах LVM:

Самый боль­шой раз­мер 122 Гб на машине pve-test при­мон­ти­ро­ван к дирек­то­рии /home. Нажми­те Доба­вить, выбе­ри­те Ката­лог, ука­жи­те имя home и путь /home:

 

В резуль­та­те созда­но соб­ствен­ное хра­ни­ли­ще с име­нем home, где и будут хра­нить­ся все данные

НАСТРОЙКА СЕТИ PROXMOX

Создай­те бэкап фай­ла сете­вых настро­ек. Для это­го в тер­ми­на­ле напишите:

cd /etc/network

sudo cp interfaces interfaces.work

В систе­ме реа­ли­зо­ва­ны несколь­ко спо­со­бов полу­че­ния досту­па по сети из вир­ту­аль­ных машин или к вир­ту­аль­ным маши­нам. Перей­ди­те на груп­пу pve-test в дере­ве сер­ве­ров, выбе­ри­те спра­ва пункт Сеть и нажми­те кноп­ку Создать:

Из пред­ло­жен­ных вари­ан­тов выбе­ри­те Linux Bridge, что­бы создать вир­ту­аль­ный свитч, через кото­рый гипер­ви­зор Proxmox VE и вир­ту­аль­ные маши­ны под­клю­чат­ся к сети:

В пор­тах сете­во­го моста ука­за­но имя сете­вой кар­ты enp2s0, кото­рой тесто­вая маши­на под­клю­че­на кабе­лем к роу­те­ру. В Linux при­ня­то после ука­за­ния IP-адре­са ука­зы­вать мас­ку под­се­ти через знак /. Зна­че­ние 192.168.0.166/24 озна­ча­ет, что мас­ка под­се­ти 255.255.255.0.

Убе­ри­те в WEB-интер­фей­се Proxmox VE с сете­во­го интер­фей­са enp2s0 IP-адрес, выдан­ный ему служ­бой DHCP роу­те­ра и выпол­ни­те пере­за­груз­ку хоста Proxmox VE для при­ме­не­ния настро­ек. Нажми­те кноп­ку reboot, кото­рая нахо­дит­ся на верх­ней пане­ли и через неко­то­рое вре­мя обно­ви­те стра­ни­цу. Будь­те очень акку­рат­ны при рабо­те с VDS или VPS, кото­рые настра­и­ва­е­те уда­лён­но, что­бы не поте­рять доступ к уста­нов­лен­ной систе­ме. Если ситу­а­ция с поте­рей досту­па к хосту про­изо­шла, то необ­хо­ди­мо в режи­ме вос­ста­нов­ле­ния ско­пи­ро­вать ранее нами создан­ный файл настро­ек interfaces.work из дирек­то­рии /etc/network, путём выпол­не­ния команды:

cd /etc/network

sudo cp interfaces.work interfaces

sudo reboot

На скрин­шо­те крас­ным мар­ке­ром обве­дён новый текст фай­ла /etc/network/interfaces, кото­рый будет при­ме­нён после пере­за­груз­ки. Если все про­шло кор­рект­но, то через неко­то­рое вре­мя мож­но сно­ва вхо­дить в WEB-интер­фейс хоста Proxmox VE.

СОЗДАНИЕ ВИРТУАЛЬНЫХ МАШИН

Обра­ти­те вни­ма­ние, что веб интер­фейс Proxmox VE поз­во­ля­ет созда­вать вир­ту­аль­ные маши­ны двух типов:

  • VM это пол­но­стью вир­ту­а­ли­зи­ро­ван­ная маши­на, создан­ная из ISO обра­за, кото­рый необ­хо­ди­мо загру­зить в хра­ни­ли­ще Proxmox VE;
  • CT – пара­вир­ту­а­ли­зи­ро­ван­ная маши­на на ядре Linux, шаб­ло­ны кото­рой необ­хо­ди­мо сна­ча­ла загру­зить и уста­но­вить в хра­ни­ли­ще Proxmox VE.

Загру­зи­те CT, пред­ло­жен­ные на сай­те Proxmox VE. Выбе­ри­те неболь­шой дис­три­бу­тив, напри­мер CentOS 7, и поме­сти­те его в хра­ни­ли­ще home:

sudo pveam update

sudo pveam available

sudo pveam download home centos-7-default_20190926_amd64.tar.xz

Парал­лель­но мож­но поста­вить загруз­ку дис­три­бу­ти­ва debian10 netinstall ISO со сво­е­го рабо­че­го ком­пью­те­ра в хра­ни­ли­ще home. Для это­го выбе­ри­те в WEB-интер­фей­се хра­ни­ли­ще home, тип хра­не­ния выбе­ри­те ISO Images и нажми­те кноп­ку Загру­зить, в появив­шем­ся окне выбе­ри­те файл обра­за ISO со сво­е­го ком­пью­те­ра и нажми­те ОК.

Так же инфор­ма­цию мож­но загру­зить с usb-хра­ни­ли­ща, с CD-Дис­ка (на тесто­вой машине он под­клю­чён), пере­дать по сети с помо­щью FTP, Samba, http. Для это­го мож­но исполь­зо­вать из кон­со­ли соот­вет­ству­ю­щие ути­ли­ты wget, curl, ftp или фай­ло­вый мене­джер Midnight Commander:

sudo apt install mc

Шаб­ло­ны и загруз­ки рас­по­ло­же­ны по путям хра­ни­лищ local/var/lib/vz или home/home/pmx. Вы може­те напря­мую копи­ро­вать в соот­вет­ству­ю­щий раз­дел фай­лы. Логи­че­ская струк­ту­ра раз­ме­ще­ния инфор­ма­ции на скриншоте:

Для созда­ния вир­ту­аль­ных машин необ­хо­ди­мо создать Пул ресур­сов. Для это­го клик­ни­те в дере­ве на вклад­ку Дата­центр, спра­ва выбе­ри­те пункт Пулы, нажми­те Создать, на тесто­вой машине зада­но имя пула home, по окон­ча­нии нажми­те ОК:

СОЗДАНИЕ ВИРТУАЛЬНОГО КОНТЕЙНЕРА CT

Сна­ча­ла создай­те CT вир­ту­аль­ную маши­ну из ска­чан­но­го шаб­ло­на CentOS 7. Для это­го нажми­те кноп­ку Создать CT, запол­ни­те поля и нажми­те ОК.

 

На сле­ду­ю­щей вклад­ке выбе­ри­те хра­ни­ли­ще home и ранее зака­чан­ный шаб­лон CentOS 7.

Настрой­ки кор­не­во­го дис­ка, про­цес­со­ра и памя­ти на тесто­вой машине оста­вим как пред­ло­же­но гипер­ви­зо­ром. Обра­ти­те вни­ма­ние на раз­дел сеть:

Итак, создан­ный нами ранее сете­вой мост vmbr0 исполь­зу­ет­ся в вир­ту­аль­ных маши­нах Proxmox VE для созда­ния вир­ту­аль­ных сете­вых интер­фей­сов для них. Через vmbr0 интер­фейс будет под­клю­чён к роу­те­ру сети, к кото­ро­му под­клю­че­на сете­вая кар­та, на кото­рой рабо­та­ет vmbr0.

В резуль­та­те наших дей­ствий начи­на­ет раз­во­ра­чи­вать­ся кон­тей­нер, содер­жа­щий CentOS 7 и настра­и­вать­ся вир­ту­аль­ная машина.

Вер­ни­тесь в pve-test, най­ди­те вновь создан­ный кон­тей­нер c ID 100 и назва­ни­ем centos7 и нажми­те Запуск, а затем Кон­соль. Откро­ет­ся окно бра­у­зе­ра, в кото­ром вид­но запу­щен­ный CentOS:

Ука­жи­те имя поль­зо­ва­те­ля root и пароль, кото­рый вве­ли при созда­нии кон­тей­не­ра CT и, если все сде­ла­но вер­но, мож­но управ­лять вир­ту­аль­ной маши­ной. Узнай­те её IP-адрес, так как роу­тер, под­клю­чён­ный к тесто­во­му хосту, дол­жен был его выдать:

ip a

В резуль­та­те полу­чи­лось запу­стить пол­но­цен­ную вир­ту­аль­ную маши­ну с Linux.

СОЗДАНИЕ ВИРТУАЛЬНОГО КОНТЕЙНЕРА VM

Для созда­ния вир­ту­аль­ной маши­ны VM с любой ОС нажми­те кноп­ку Создать VM, ука­жи­те имя созда­ва­е­мой VM, выбе­ри­те пул ресур­сов, нажми­те Далее:

На вто­ром окне пред­ла­га­ет­ся выбрать загру­зоч­ный образ вир­ту­аль­но­го CD-дис­ка, ука­зать тип госте­вой ОС:

Если все сде­ла­но пра­виль­но, то загру­жен­ный ISO образ дол­жен быть досту­пен по кли­ку по обве­дён­но­му крас­ным полю. Этот пара­метр может быть настро­ен поз­же из интер­фей­са управ­ле­ния вир­ту­аль­ной маши­ной VM.

 

Во вклад­ках Систе­маЖёст­кий дискПро­цес­сорПамятьСеть остав­ле­ны все зна­че­ния так, как пред­ло­жил гипер­ви­зор. В послед­ней вклад­ке Под­твер­жде­ние кли­кем Гото­во и перей­ди­те в настрой­ки вир­ту­аль­ной маши­ны ID 101 с име­нем litedeb, во вклад­ку Обо­ру­до­ва­ние:

Если все нас устра­и­ва­ет и ниче­го менять не надо, нажми­те кноп­ку Запуск и открой­те Кон­соль. На тесто­вом хосте выяс­ни­лось, что луч­ше экс­пе­ри­мент про­во­дить на дис­три­бу­ти­ве Debian 10 netinstall, и поме­нять тип жёст­ко­го дис­ка со SCSI на SATA, а так­же уве­ли­чить раз­мер опе­ра­тив­ной памя­ти вир­ту­аль­ной маши­ны. И резуль­тат рабо­ты после нажа­тия кноп­ки Запуск и под­клю­че­нию к Кон­со­ли:

РЕЗЕРВНОЕ КОПИРОВАНИЕ ВИРТУАЛЬНЫХ МАШИН

При­сту­пим к настрой­ке резерв­но­го копи­ро­ва­ния вир­ту­аль­ных машин. Для это­го мы исполь­зуй­те хра­ни­ли­ще home. Чуть подроб­нее рас­пи­шем реко­мен­да­ции, дан­ные в нача­ле ста­тьи. Основ­ная реко­мен­да­ция: настра­и­вай­те хра­ни­ли­ще архив­ных копий в дру­гом рас­по­ло­же­нии, неже­ли рабо­чие вир­ту­аль­ные маши­ны, напри­мер, мож­но так­же под­клю­чить FTP или Samba хра­ни­ли­ще. Все это лег­ко реа­ли­зу­ет­ся на базе Debian 10 с Proxmox VE.

Перей­ди­те Дата­центрpve-testVM100, в пра­вом меню выбе­ри­те раз­дел Резерв­ная копия и нажми­те кноп­ку Создать резерв­ную копию сейчас:

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

Что­бы настро­ить пла­ни­ров­щик резерв­ных копий нуж­но перей­ти в дере­ве в Дата­центр и выбрать в пра­вом меню пункт Резерв­ная копия и нажать кноп­ку Доба­вить. Ниже пока­за­но, как мож­но настро­ить резер­ви­ро­ва­ние VM100 каж­дый чёт­ный день неде­ли в 01:45 локаль­но­го вре­ме­ни сер­ве­ра, с хоро­шим сжа­ти­ем GZIP и отправ­лять при ошиб­ках уве­дом­ле­ние по почте:

Оста­ёт­ся толь­ко про­во­дить мони­то­ринг хра­ни­ли­ща для резерв­ных на остав­ше­е­ся сво­бод­ное место зная, что, если про­изой­дёт непред­ви­ден­ное, всё мож­но вос­ста­но­вить. Сро­ки вос­ста­нов­ле­ния из Snapshot крайне малы, одна­ко нуж­но пони­мать, что чем силь­нее сжа­тие, тем доль­ше вос­ста­нав­ли­ва­ет­ся вир­ту­аль­ная машина.

По этим же при­чи­нам, необ­хо­ди­мо тща­тель­но под­хо­дить к выбо­ру раз­ме­ра вир­ту­аль­но­го дис­ка, напри­мер не выде­лять на вир­ту­аль­ную маши­ну один диск 90Gb, а три по 30Gb. Во-пер­вых, вос­ста­нав­ли­вать мень­ше, если один из вир­ту­аль­ных дис­ков вышел из строя. Во-вто­рых, сжа­тие и вос­ста­нов­ле­ние зани­ма­ет мень­ше вре­ме­ни за счёт рас­па­рал­ле­ли­ва­ния ресур­сов хоста Debian 10 с Proxmox VE.