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 на Debian 10.
У статтях на різних порталах в Інтернеті можна прочитати, що VPS і VDS не мають різниці, просто різні абревіатури того самого. Однак, на мій погляд, є істотна відмінність у пропозиціях провайдерів – віртуальний хост придбаний в оренду або реальний сервер у стійці.
Щоб перевірити, чи можна повноцінно використовувати віртуалізацію Proxmox VE у хмарі або на реальному хості, у Debian 10 Buster, підключаємося до консолі сервера по ssh , в моєму випадку за допомогою Putty RUS та вводимо:
cat /proc/cpuinfo | grep `(svm|vmx)`
Якщо віртуалізація підтримується процесором хоста, результат роботи не порожній, а кілька рядків:
Оновіть Debian 10 Buster до актуальної та перезавантажте після виконання:
sudo apt -y update
sudo apt -y upgade
sudo reboot
Після перезавантаження встановіть пакети:
sudo apt -y install mc wget
Для нормальної установки 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 на 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:
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://:8006/
На цьому налаштування Proxmox на Debian 10 завершено, далі поговоримо про налаштування.
Підключення до 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 , де і зберігатимуться всі дані:
Створіть бекап файлу мережевих установок. Для цього в терміналі напишіть:
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 віртуальну машину із завантаженого шаблону CentOS 7. Для цього натисніть кнопку Створити CT , заповніть поля та натисніть ОК .
На наступній вкладці виберіть сховища home та раніше завантажений шаблон CentOS 7 .
Налаштування кореневого диска, процесора та пам'яті на тестовій машині залишимо як запропоновано гіпервізором. Зверніть увагу на розділ мережі:
Отже, створений раніше мережевий міст vmbr0 використовується у віртуальних машинах Proxmox VE для створення віртуальних мережевих інтерфейсів для них. Через vmbr0 інтерфейс буде підключений до роутера мережі, до якого підключено мережну карту, на якій працює vmbr0 .
В результаті наших дій починає розгортатися контейнер CentOS 7 і налаштовуватися віртуальна машина.
Поверніться до pve-test , знайдіть новостворений контейнер з ID 100 і назвою centos7 і натисніть Запуск , а потім Консоль . Відкриється вікно браузера, у якому видно запущений CentOS:
Вкажіть ім'я користувача root і пароль , який ввели під час створення контейнера CT і, якщо все зроблено правильно, можна керувати віртуальною машиною. Дізнайтеся її IP-адресу, оскільки роутер, підключений до тестового хоста, мав його видати:
ip a
В результаті вдалося запустити повноцінну віртуальну машину з Linux.
Для створення віртуальної машини VM з будь-якої ОС натисніть кнопку Створити VM , вкажіть ім'я VM, що створюється, виберіть пул ресурсів, натисніть Далі :
На другому вікні пропонується вибрати завантажувальний образ віртуального CD-диска , вказати тип гостьової ОС:
Якщо все зроблено правильно, то завантажений ISO образ повинен бути доступний на кліку по обведеному червоному полю. Цей параметр може бути налаштований пізніше з інтерфейсу керування віртуальною машиною VM.
У вкладках Система , Жорсткий диск , Процесор , Пам'ять , Мережа залишені всі значення так, як запропонував гіпервізор. В останній вкладці Підтвердження клікем Готово та перейдіть в налаштування віртуальної машини ID 101 з ім'ям litedeb , у вкладку Обладнання :
Якщо все нас влаштовує і нічого міняти не потрібно, натисніть кнопку Запуск і відкрийте Консоль . На тестовому хості з'ясувалося, що краще експеримент проводити на дистрибутиві Debian 10 netinstall , і змінити тип жорсткого диска зі SCSI на SATA , а також збільшити обсяг оперативної пам'яті віртуальної машини. І результат роботи після натискання кнопки Запуск та підключення до Консолі:
Приступимо до настроювання резервного копіювання віртуальних машин. Для цього ми використовуйте сховище home . Трохи докладніше розпишемо рекомендації, дані на початку статті. Основна рекомендація: налаштуйте сховище архівних копій в іншому місці, ніж робочі віртуальні машини, наприклад, можна підключити FTP або Samba сховище. Все це легко реалізується на базі Debian 10 із Proxmox VE.
Перейдіть до Датацентру , pve-test , VM100 , у правому меню виберіть розділ Резервна копія та натисніть кнопку Створити резервну копію зараз:
Для наших завдань вистачає налаштування Знімок та режиму стиснення GZip , тому що хоч віртуальні машини включені постійно, але зазвичай є періоди, при яких навантаження практично немає.
Щоб налаштувати планувальник резервних копій, потрібно перейти в дереві в Датацентр і вибрати в правому меню пункт Резервна копія і натиснути кнопку Додати . Нижче показано, як можна налаштувати резервування VM100 кожен парний день тижня о 01:45 локального часу сервера, з хорошим стисненням GZIP і надсилати при помилках повідомлення поштою:
Залишається тільки проводити моніторинг сховища для резервних на вільне місце, що залишилося знаючи, що, якщо відбудеться непередбачене, все можна відновити. Терміни відновлення з Snapshot вкрай малі, проте потрібно розуміти, що чим сильніший стиск, тим довше відновлюється віртуальна машина.
З цих причин, необхідно ретельно підходити до вибору розміру віртуального диска, наприклад не виділяти на віртуальну машину один диск 90Gb, а три по 30Gb. По-перше, відновлювати менше, якщо один із віртуальних дисків вийшов з ладу. По-друге, стиснення та відновлення займає менше часу за рахунок розпаралелювання ресурсів хоста Debian 10 з Proxmox VE.
Тепер ви знаєте як виконується установка та налаштування proxmox на Debian 10. Особливо цікавий апгрейд Debian 10 за умови, що хост розташований у хмарі та його процесор підтримує віртуалізацію. Оплачуючи один VPS або VDS, ми можемо розгорнути всередині кілька ізольованих сервісів з будь-якого навіть екзотичного дистрибутива.
Proxmox VE показує себе як успішне комерційне рішення із низькою вартістю впровадження та використання. Proxmox VE дозволяє керувати кластером віртуальних машин, мігрувати їх між різними хостами Proxmox VE, централізовано налаштовувати резервування та багато іншого.
Перекладено з сайту: https://losst.pro/ustanovka-proxmox-v-debian-10