Kas tas Proxmox ir kodėl jis toks populiarus tarp namų serverių entuziastų
Jei bent kartą esi bandęs sukonfigūruoti namų serverį, greičiausiai susidūrei su klausimu – ką diegti kaip pagrindinę platformą? Ubuntu Server? Unraid? TrueNAS? O gal tiesiog paleidęs viską ant Windows ir tikėjaisi geriausio? Proxmox VE šioje erdvėje užima labai specifinę nišą – tai enterprise lygio virtualizacijos platforma, kurią galima naudoti visiškai nemokamai, ir kuri namų vartotojams suteikia galimybių, apie kurias anksčiau galėjai tik pasvajoti.
Proxmox Virtual Environment (VE) yra atviro kodo platforma, paremta Debian Linux. Jos esmė – leidžia viename fiziniame kompiuteryje paleisti daugybę virtualių mašinų (VM) ir konteinerių (LXC), visa tai valdant per patogią naršyklės sąsają. Nereikia jokio atskiro valdymo kompiuterio, nereikia mokėti už licencijas – tiesiog įdiegiamas, prisijungiama per naršyklę ir pradedama.
Populiarumas tarp hobistų ir namų serverių bendruomenės (ypač tokiose vietose kaip Reddit r/homelab) auga dėl kelių priežasčių. Pirma, Proxmox leidžia konsoliduoti viską į vieną mašiną – NAS, media serveris, VPN, DNS filtravimas, namų automatizavimas – visa tai gali veikti vienu metu ant vieno geležies gabalo. Antra, jei kažkas sugenda vienoje VM, kitos toliau veikia. Trečia, snapshot’ai ir backup’ai – tai tikras malonumas, kai gali per 5 minutes atkurti visą sistemą į ankstesnę būseną.
Minimalūs reikalavimai ir tinkama geležis namų aplinkai
Čia prasideda smagiausia dalis – geležies pasirinkimas. Proxmox oficialiai nurodo minimalius reikalavimus, tačiau realiame gyvenime viskas šiek tiek kitaip.
Oficialiai minimaliai reikia: 64-bitų procesoriaus su Intel VT-x arba AMD-V palaikymu, 2 GB RAM (rekomenduojama 8 GB), bent 32 GB vietos diegimui. Tačiau jei nori ką nors realiai naudoti, šie skaičiai yra juokingi.
Praktiškai namų serveriui rekomenduočiau:
- Procesorius: Bet koks modernesnis Intel Core i5/i7 arba AMD Ryzen 5/7. Labai populiarūs Intel N100 ar N305 mini PC – puikus energijos efektyvumas ir pakankama galia lengviems workload’ams. Jei turi seną kompiuterį su Intel 8-12 kartos procesoriumi – puikiai tiks.
- RAM: Mažiausiai 16 GB, geriau 32 GB. RAM yra bene svarbiausias resursas virtualizacijoje – kiekviena VM reikalauja savo atminties, ir čia nėra kaip sutaupyti.
- Saugykla: Bent vienas SSD Proxmox sistemai ir VM diegimui (256 GB ar daugiau), atskiras HDD arba NAS masyvui, jei planuoji saugoti daug duomenų.
- Tinklas: Gigabitinis tinklo adapteris – būtinas. Du adapteriai – dar geriau, ypač jei planuoji VLAN segmentavimą.
Labai populiarus pasirinkimas šiuo metu – Beelink, Minisforum ar CWWK mini PC su Intel N100 procesoriumi. Šie mažyčiai kompiuteriai sunaudoja apie 10-15W veikdami, tačiau gali paleisti 5-8 lengvas VM ar konteinerius be problemų. Kaina – apie 150-200 eurų. Jei turi seną biuro kompiuterį ar nešiojamąjį, tai irgi puiki pradžia.
Svarbus momentas – įsitikink, kad BIOS/UEFI yra įjungtas virtualizacijos palaikymas (Intel VT-x arba AMD-V). Be to, jei planuoji GPU passthrough (pvz., paleisti Windows VM su grafine kortele žaidimams), reikia IOMMU palaikymo – tai Intel VT-d arba AMD-Vi.
Proxmox VE 8 diegimas žingsnis po žingsnio
Diegimas yra gana paprastas, bet yra keletas vietų, kur lengva suklysti.
1. ISO atsisiuntimas ir USB paruošimas. Eik į proxmox.com, atsisiųsk naujausią Proxmox VE 8.x ISO. Tada naudok Rufus (Windows) arba Balena Etcher (visoms platformoms), kad sukurtum bootinį USB. Rufus atveju pasirink DD rašymo režimą – ISO režimas kartais sukelia problemų.
2. Boot iš USB ir diegimo procesas. Paleisk kompiuterį iš USB. Pamatysi Proxmox diegimo meniu. Pasirink „Install Proxmox VE (Graphical)”. Diegimo procesas yra intuityvus, tačiau atkreipk dėmesį į šiuos dalykus:
- Target Harddisk – pasirink diską, ant kurio diegsi. Jei turi kelis diskus, labai atidžiai patikrink, kad neištrini netinkamo.
- Filesystem – ext4 yra paprasčiausias pasirinkimas pradedantiesiems. ZFS suteikia daugiau galimybių (snapshot’ai, RAID), bet reikalauja daugiau RAM ir žinių.
- Country/Timezone/Keyboard – nustatyk pagal save. Lietuva, Europe/Vilnius, lietuviškas klaviatūros išdėstymas.
- Root slaptažodis ir el. paštas – slaptažodis turi būti stiprus. El. paštas naudojamas sistemos pranešimams.
- Tinklo konfigūracija – čia svarbu. Nustatyk statinį IP adresą (pvz., 192.168.1.100), subnet mask (255.255.255.0), gateway (tavo routerio IP, dažniausiai 192.168.1.1) ir DNS serverius.
3. Po diegimo. Sistema perkraunama, ištraukiamas USB. Dabar prisijunk iš bet kurio kompiuterio tinkle per naršyklę: https://192.168.1.100:8006 (pakeisk IP į savo nustatytą). Naršyklė perspės apie nesaugų sertifikatą – tai normalu, tiesiog priimk išimtį. Prisijunk su vartotoju root ir savo nustatytu slaptažodžiu.
4. Pirmieji žingsniai po diegimo. Pirmiausia pamatysi pranešimą apie „No valid subscription” – tai reiškia, kad naudoji nemokamą versiją. Tai visiškai gerai, tik reiškia, kad neturėsi prieigos prie enterprise atnaujinimų repozitorijų. Reikia perjungti į nemokamus repozitorijus. Eik į Shell ir įvyk:
sed -i 's|enterprise.proxmox.com/debian/pve|download.proxmox.com/debian/pve|g' /etc/apt/sources.list.d/pve-enterprise.list
echo "deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription" >> /etc/apt/sources.list
apt update && apt dist-upgrade -y
Taip pat galima naudoti Tteck (community) skriptus, kurie automatizuoja daug šių pradinių konfigūracijos žingsnių – tteck.github.io/Proxmox.
Pirmoji virtuali mašina: Ubuntu Server nuo nulio
Gerai, sistema veikia, prisijungei prie web sąsajos. Dabar sukurkime pirmąją VM. Paimsime Ubuntu Server 24.04 LTS kaip pavyzdį – tai vienas populiariausių pasirinkimų.
ISO įkėlimas. Kairėje medžio struktūroje pasirink savo serverį (pvz., „pve”), tada „local” saugyklą, tada „ISO Images”. Spustelėk „Download from URL” ir įklijuok Ubuntu Server ISO nuorodą iš ubuntu.com. Proxmox pats atsisiųs ISO tiesiai į serverį – nereikia jo atsisiųsti į savo kompiuterį ir tada kelti.
VM kūrimas. Spustelėk mygtuką „Create VM” viršuje dešinėje. Eisi per kelias konfigūracijos kortelės:
- General: Suteik VM pavadinimą (pvz., „ubuntu-server”), VM ID galima palikti automatinį.
- OS: Pasirink atsisiųstą ISO, nustatyk tipą „Linux”, versiją „6.x – 2.6 Kernel”.
- System: Rekomenduoju įjungti „Qemu Agent” – vėliau reikės įdiegti agentą VM viduje, bet tai leidžia Proxmox geriau komunikuoti su VM. BIOS palik OVMF (UEFI) arba SeaBIOS – abu veikia, UEFI modernesniam.
- Disks: Nustatyk disko dydį. Ubuntu Server minimaliai reikia 20 GB, bet geriau duok 50-100 GB, jei turi vietos. Bus storage tipas – „local-lvm” yra greičiausias variantas ant to paties disko.
- CPU: Pradžiai 2 branduoliai. Vėliau galima keisti. CPU tipas „host” suteikia geriausią našumą, bet mažiau portabilumo.
- Memory: 2048 MB (2 GB) Ubuntu Server minimaliai, geriau 4096 MB.
- Network: Palik numatytąjį virtio adapterį ir vmbr0 tiltą.
Po to spustelėk „Finish”, bet nepamiršk atžymėti „Start after created” jei nori pats rankiniu būdu paleisti. Pasirink VM sąraše, spustelėk „Start”, tada „Console” – pamatysi Ubuntu diegimo procesą.
Ubuntu Server diegimas yra standartinis – pasirink kalbą, klaviatūrą, tinklo konfigūraciją (DHCP veiks automatiškai), disko particijų schemą (visą diską galima naudoti), sukurk vartotoją. Po diegimo VM perkraunama ir turi veikiančią Ubuntu Server VM.
Įdiek QEMU agentą VM viduje:
sudo apt update && sudo apt install qemu-guest-agent -y
sudo systemctl enable qemu-guest-agent
sudo systemctl start qemu-guest-agent
LXC konteineriai: greitesnis ir lengvesnis būdas
VM yra puiku, kai reikia pilnos izoliacijos arba skirtingos OS. Tačiau daugeliui namų serverio paslaugų – Nginx, Pi-hole, Nextcloud, Jellyfin ir pan. – LXC konteineriai yra daug efektyvesnis sprendimas. Jie paleidžiami per sekundes, sunaudoja mažiau RAM ir CPU, ir vis tiek suteikia pakankamą izoliaciją.
LXC konteineriai Proxmox aplinkoje naudoja „templates” – iš anksto paruoštus bazinių sistemų vaizdus. Juos galima atsisiųsti tiesiai per Proxmox sąsają. Eik į „local” saugyklą, „CT Templates”, spustelėk „Templates” mygtuką ir pamatysi ilgą sąrašą – Debian, Ubuntu, Alpine, Fedora ir daugelis kitų.
Konteinerio kūrimas yra dar paprastesnis nei VM. Spustelėk „Create CT”, pasirink template, nustatyk hostname, slaptažodį, disko dydį, CPU ir RAM. Svarbus momentas – jei planuoji naudoti Docker konteinerio viduje (taip, Docker LXC viduje – tai populiari konfigūracija), reikia įjungti „Nesting” funkciją skiltyje „Features”.
Štai greitas pavyzdys – Pi-hole DNS filtravimo serveris LXC konteineryje:
- Sukurk Debian 12 LXC konteinerį su 512 MB RAM ir 4 GB disko.
- Paleisk konteinerį, atidaryk konsolę.
- Įvyk:
curl -sSL https://install.pi-hole.net | bash - Sekk diegimo instrukcijas.
- Pi-hole veikia ir sunaudoja vos ~100 MB RAM.
Palygink su VM – tas pats Pi-hole VM reikalautų bent 512 MB-1 GB RAM vien OS palaikymui. LXC yra aiškus laimėtojas lengvoms paslaugoms.
Vienas svarbus skirtumas – LXC konteineriai naudoja host branduolį. Tai reiškia, kad negali paleisti Windows ar kitos OS konteinerio viduje, ir kai kurios specifinės Linux funkcijos gali neveikti. Bet 90% namų serverio use case’ų tai visiškai nesvarbu.
Tinklo konfigūracija, VLAN ir tiltai
Tinklas Proxmox aplinkoje gali būti paprastas arba labai sudėtingas – priklauso nuo to, ko nori pasiekti. Pradedantiesiems pakanka suprasti pagrindinę koncepciją.
Proxmox naudoja „Linux Bridge” – virtualų tinklo jungiklį, prie kurio jungiasi visos VM ir konteineriai. Numatytasis tiltas vadinasi vmbr0 ir yra sujungtas su fizine tinklo kortele. Visos VM prijungtos prie šio tilto gauna IP adresus iš tavo routerio DHCP serverio, tarsi būtų atskiri fiziniai kompiuteriai tinkle.
Jei nori sudėtingesnės konfigūracijos – pvz., atskirti „trusted” ir „untrusted” VM į skirtingus VLAN – reikia šiek tiek daugiau darbo. Tam reikia:
- Routerio su VLAN palaikymu (Mikrotik, pfSense/OPNsense VM, arba modernus consumer routeris su VLAN funkcija).
- Sukurti papildomus tiltus Proxmox aplinkoje (
vmbr1,vmbr2ir t.t.) arba naudoti VLAN-aware tiltą.
Populiarus namų laboratorijos sprendimas – paleisti OPNsense arba pfSense kaip VM Proxmox aplinkoje. Tada ši VM tampa tavo tinklo „smegenimis” – DHCP serveris, DNS, firewall, VPN. Fizinis routeris veikia tik kaip modemas/WAN šliuzas. Tokia konfigūracija suteikia neįtikėtiną kontrolę, bet reikalauja daugiau laiko ir žinių.
Pradedantiesiems rekomenduočiau pradėti paprastai – vienas vmbr0 tiltas, visos VM tame pačiame tinkle. Kai pradėsi jausti ribojimus arba norėsi daugiau saugumo, galėsi palaipsniui sudėtinti.
Vienas praktinis patarimas – statiniai IP adresai VM ir konteineriams. Routeryje galima priskirti statinį IP pagal MAC adresą (DHCP reservation), arba konfigūruoti statinį IP pačioje VM. Tai svarbu, nes jei IP pasikeičia, gali tekti ieškoti, kur dabar veikia tavo Jellyfin ar Nextcloud.
Backup’ai ir snapshot’ai: kodėl tai svarbiausia funkcija
Jei yra viena priežastis naudoti Proxmox vietoj paprasto Linux serverio – tai backup ir snapshot sistema. Ir daugelis žmonių šią funkciją nepakankamai išnaudoja.
Snapshot’ai yra momentiniai sistemos būsenos įrašai. Prieš atnaujindamas sistemą, diegdamas naują programinę įrangą ar eksperimentuodamas – padaryk snapshot. Jei kažkas sugenda, per 30 sekundžių gali grįžti į ankstesnę būseną. Tai veikia ir VM, ir LXC konteineriams. Snapshot’ai saugomi tame pačiame diske, todėl jie greiti, bet neapsaugo nuo disko gedimo.
Backup’ai yra pilnos VM/konteinerio kopijos, kurias galima saugoti atskiroje vietoje. Proxmox turi integruotą backup funkciją (Vzdump), kuri leidžia:
- Rankiniu būdu sukurti backup bet kuriuo metu.
- Sukonfigūruoti automatinį tvarkaraštį (pvz., kiekvieną naktį 3:00).
- Pasirinkti backup formatą – LZO, GZIP arba ZSTD kompresija.
- Nustatyti, kiek senų backup’ų saugoti.
Backup’ų saugojimui galima naudoti:
- Atskirą HDD tame pačiame serveryje (geriau nei nieko, bet ne idealiai).
- NFS arba SMB share – pvz., NAS įrenginyje arba kitame kompiuteryje.
- Proxmox Backup Server (PBS) – atskira nemokama Proxmox platforma, skirta backup’ams. Labai rekomenduojama, jei turi antrą kompiuterį.
- Rclone integracija – galima siųsti backup’us į cloud (Backblaze B2, Google Drive ir pan.).
Backup konfigūracija: eik į „Datacenter” → „Backup” → „Add”. Pasirink tvarkaraštį, storage vietą, kurias VM/konteinerius backup’uoti, ir kompresijos lygį. ZSTD yra geriausias pasirinkimas – greitas ir geras kompresijos santykis.
Praktinis patarimas – 3-2-1 taisyklė: 3 kopijos duomenų, 2 skirtinguose medijuose, 1 offsite. Namų serveriui tai gali reikšti: originali VM, backup lokaliame NAS, ir kas savaitę automatiškai siunčiamas backup į Backblaze B2 (kainuoja centus per mėnesį).
Kai Proxmox tampa tikru namų serverio centru
Kai jau turi veikiančią Proxmox instaliaciją, backup sistemą ir supranti pagrindinius principus, atsiveria tikrai įdomios galimybės. Štai ką daugelis namų serverių entuziastų paleidžia ant Proxmox:
Home Assistant OS – namų automatizavimo platforma. Jai galima naudoti specialų HAOS VM vaizdą, kurį lengva importuoti į Proxmox. Veikia puikiai ir suteikia daugiau lankstumo nei dedikuotas Raspberry Pi.
Jellyfin arba Plex – media serveriai. Čia svarbu GPU passthrough arba bent Intel Quick Sync palaikymas, kad transkoduotų video efektyviai. Intel N100 ir panašūs procesoriai turi puikų integruotą grafikos procesorių, kuris gali transkoduoti kelis 4K srautus vienu metu.
Nextcloud – asmeninis cloud’as. Failų sinchronizavimas, kalendorius, kontaktai, nuotraukos – visa tai ant savo serverio, be Google ar Microsoft.
Vaultwarden – Bitwarden serverio alternatyva. Slaptažodžių tvarkyklė ant savo serverio. Veikia puikiai LXC konteineryje su vos 256 MB RAM.
Nginx Proxy Manager – reverse proxy su grafiniu interfeisu. Leidžia per vieną išorinį IP pasiekti daugybę paslaugų pagal domenų vardus, automatiškai tvarko SSL sertifikatus per Let’s Encrypt.
Wireguard arba Tailscale – VPN prieiga prie namų tinklo iš bet kur. Tailscale ypač paprasta sukonfigūruoti ir veikia net per NAT.
Vienas dalykas, kurį verta paminėti – Proxmox resursų paskirstymas yra lankstus. Galima „overclock’inti” CPU ir RAM – priskirti VM daugiau virtualių branduolių, nei turi fizinių. Tai veikia, nes ne visos VM naudoja maksimalius resursus vienu metu. Tačiau su RAM reikia atsargiau – RAM negalima „oversell’inti” taip pat lengvai kaip CPU.
Galiausiai – Proxmox bendruomenė yra fantastiškas resursas. Proxmox forumas, Reddit r/homelab ir r/Proxmox, YouTube kanalai kaip „Techno Tim” ar „Christian Lempa” – visa tai pilna praktinių patarimų ir konkrečių konfigūracijos pavyzdžių. Kai užstringi (o užstrinsi – tai garantuota), šie resursai padės greičiau nei bet koks oficialus dokumentas. Proxmox VE 8 yra ta platforma, kuri auga kartu su tavimi – pradedi nuo paprastos Ubuntu VM, o po metų turi pilnai veikiančią namų infrastruktūrą, kuri lenkia daugelį mažų įmonių sprendimus.
