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 или контейнер.