Proxmox VE — практическо ръководство

Част 1: Защо Proxmox

Тази поредица не е документация, преразказана с други думи. Това е моят домашен и професионален опит с Proxmox VE — какво съм чупил, какво съм научил и защо върша нещата по определен начин.

Тази статия е предговорът, не техническо ръководство. Тук обяснявам защо изобщо пиша тази поредица, защо избрах Proxmox пред алтернативите и как ще изглеждат следващите части. Ако търсиш конкретни команди — те идват от Част 2 нататък.

1. Откъде дойде тази поредица

След поредицата за Docker получих няколко съобщения с горе-долу един и същ въпрос: „А как виртуализираш нещата, които не искаш или не можеш да контейнеризираш?“. Отговорът в моя случай е Proxmox VE — от няколко години е основата, върху която стои и домашната ми лаборатория, и част от инфраструктурата, с която работя професионално.

Docker поредицата тръгна по същия начин: не като теория, а като записан наученото по трудния начин. Proxmox поредицата ще следва същия принцип. Няма да преразказвам официалната документация — тя си съществува и е добра. Ще пиша това, което документацията обикновено пропуска: защо нещо се чупи в 2 през нощта, защо едно решение изглежда добро на теория, но е лошо на практика, и какво бих направил различно, ако започвах отначало.

2. Какво е Proxmox VE — накратко, без да изпреварвам темите

Proxmox VE (Virtual Environment) е open-source платформа за виртуализация, изградена върху Debian. Комбинира два различни свята под един web интерфейс:

  • KVM — за пълноценни виртуални машини (VMs) с отделен kernel всяка;
  • LXC — за системни контейнери, които споделят kernel-а на host-а, но иначе се държат като самостоятелна Linux система.

Тази комбинация е причината, поради която не мисля за Proxmox като за „поредния хипервайзор“. Той ми позволява да реша за всяка отделна задача дали ѝ трябва пълна изолация на ниво kernel (VM), или ѝ стига по-лек, по-бърз контейнер (LXC) — без да сменям платформа.

Proxmox VE Host
Debian + Proxmox stack
KVM / QEMU
пълни виртуални машини
LXC
системни контейнери

3. Защо не VMware, Hyper-V или голия libvirt

Не пиша това, за да убеждавам никого да напусне текущата си платформа — всяка от изброените има място, в което е разумен избор. Ето обаче честната сметка, която направих аз:

3.1. VMware ESXi / vSphere

Технически солиден, но след промените в лицензионната политика на Broadcom, за домашна лаборатория и за по-малки инфраструктури спря да бъде разумен вариант финансово. Free ESXi вече не съществува в предишния си вид. Не строя нещо, което ще трябва да пренаписвам заради решение на чужд отдел по продажбите.

3.2. Hyper-V

Добро решение, ако вече живееш в Windows Server екосистема. Аз не живея — по-голямата част от работата ми е в Linux и следователно нативната Linux интеграция на Proxmox (storage, networking, cgroups) ми пасва по-директно.

3.3. Голия libvirt/virsh

Това е в основата на Proxmox все пак. Разликата е, че Proxmox добавя клъстеризация, web UI, storage management, backup система (Proxmox Backup Server) и API — неща, които иначе бих сглобявал ръчно. Мога да го направя сам, но не е ефективно използване на времето ми за инфраструктура, която трябва да е предвидима, а не арт проект.

Честно казано: нито един от тези избори не е обективно „грешен“. Пиша тази поредица за Proxmox, защото него използвам аз, а не защото смятам останалите за лоши инструменти. Ако платформата ти е различна, голяма част от принципите тук (storage, backup дисциплина, network сегментация) все пак важат.

4. Философията на тази поредица

Три неща ще следвам последователно във всяка следваща част:

  • Практика преди теория. Ще обяснявам концепция само тогава, когато има конкретна ситуация, в която тя има значение — не като абстрактен списък от дефиниции.
  • Показвам и грешките. Ще споменавам решенията, които съм взимал и после съм отменял, защото на практика създаваха повече проблеми, отколкото решаваха.
  • Без сляпо копиране на команди. Всяка команда ще е придружена от обяснение защо я използвам точно така, а не по друг начин — за да можеш да я адаптираш към собствената си среда, а не просто да я преписваш.

5. Какво предстои в поредицата

Структурата по-долу не е финална до последната запетая — може да добавя или преподредя части според въпросите, които получавам. Ето обаче реалистичната карта на пътя:

Част 2 — Инсталация и първи стъпки
hardware избор, инсталация, web UI, първи настройки
Част 3 — Storage: ZFS, LVM, directory storage
кой storage backend за какво, thin provisioning, snapshots
Част 4 — Виртуални машини (KVM)
създаване, CPU/RAM tuning, disk passthrough, cloud-init
Част 5 — LXC контейнери
privileged vs unprivileged, kога VM и кога LXC
Част 6 — Мрежа: bridges, VLANs, bonding
сегментация, изолация, реални мрежови схеми
Част 7 — Backup и Proxmox Backup Server
retention политики, restore тестове, защо backup без тест не е backup
Част 8 — Clustering и High Availability
quorum, fencing, кога HA реално си заслужава
Част 9 — Updates, сигурност и поддръжка
repositories, subscription vs no-subscription, хигиена на host-а

Умишлено оставям място и за части, които ще се появят по-нататък — например GPU passthrough, мониторинг с Proxmox + external инструменти, и миграция от друга платформа към Proxmox. Ще ги добавям, когато имам нещо реално да споделя за тях, а не защото „трябва да ги има в списъка“.

6. Какво предполагам, че вече имаш

Тази поредица не тръгва от „какво е виртуализация“. Предполагам следната база:

Предполагам, че имаш Защо
Базово разбиране на Linux (shell, файлова система, permissions) Proxmox host-ът е Debian отдолу — работиш с него като с Linux сървър
Основни мрежови понятия (IP, subnet, VLAN на ниво концепция) Networking частите разчитат на това, не го обяснявам от нула
Машина или сървър, на който можеш да инсталираш Proxmox Не е задължително enterprise хардуер — стар desktop или mini PC е достатъчен за начало
Не се притеснявай, ако нещо от таблицата не ти е напълно ясно. Ще обяснявам достатъчно контекст по пътя. Просто няма да спирам всяка част, за да обяснявам какво е IP адрес.

7. Как препоръчвам да четеш тази поредица

Ако вече имаш работещ Proxmox host, можеш да прескочиш направо до частта, която ти трябва в момента — всяка част е написана да стои сама по себе си доколкото е възможно.

Ако тръгваш от нулата, препоръчвам последователността по-горе. Storage и network решенията, които вземеш в началото (Част 3 и Част 6), пряко влияят на това колко лесно ще ти е по-нататък с backup и clustering. Обратното преподреждане е възможно, но създава повече преработка накрая.

Заключение

Proxmox не е магическа кутия, която прави виртуализацията лесна сама по себе си. Той е добър инструмент, който прави правилните неща — ако знаеш какво правиш — забележимо по-удобни. Ако не знаеш какво правиш, той просто ти дава по-удобен начин да си създадеш проблем по-бързо.

Целта на тази поредица е да стигнеш до първия вариант. Не защото ще запаметиш команди, а защото ще разбираш какво реално правят те и защо избираш точно тях.

В следващата част минавам директно на практика: избор на hardware, самата инсталация на Proxmox VE и първите настройки, които правя на всеки нов host, преди да сложа върху него каквато и да е VM или контейнер.