Acum un an am scris despre alegerea unui QNAP TS-464 după ce varianta home-made NAS nu s-a concretizat și după ce am eliminat TrueNAS și OMV ca soluții viabile pe Proxmox. Un an mai târziu e momentul să fac bilanțul — cu ce m-a surprins plăcut, ce mă enervează și ce aș face diferit.

Setup-ul actual

TS-464 rulează cu:

  • 4x HGST HUH721010ALE604 (10TB) în RAID 5 — 30TB utilizabili, cu toleranță la un disk defect. Disk-uri enterprise second-hand luate de la Diablos la 540 lei bucata — HGST-urile astea sunt foste de datacenter, construite pentru rulaj 24/7, și se simt.
  • 2x Kingston SNV2S2000G (2TB NVMe) — în sloturile M.2 PCIe, folosite pentru cache și volume rapide.
  • 16GB RAM — am adăugat 8GB față de configurația stock. Am testat și 32GB dar i-am returnat pe Proxmox unde erau mai utili.
  • 2x porturi de rețea 2.5Gbps — ambele active, conectate la switch-ul de 2.5Gbps din homelab.

Ce a funcționat excelent

Stabilitate

Cel mai important lucru pentru un NAS: să fie acolo când ai nevoie de el. TS-464 a rulat non-stop fără niciun incident în 12 luni. Niciun crash, niciun filesystem corruption, niciun moment în care să mă întreb dacă datele sunt în regulă. E exact ce vrei de la un dispozitiv de stocare.

Update-uri de securitate frecvente

QNAP a avut în trecut probleme serioase cu securitatea — ransomware-ul DeadBolt în 2022 a afectat mii de dispozitive expuse direct pe internet. Lecția a fost învățată: acum primesc notificări de update QTS la câteva săptămâni, cu patch-uri de securitate aplicate rapid. Nu am NAS-ul expus direct pe internet — stă în spatele ER605 — dar update-urile constante dau un pic mai multă liniște.

Plex cu transcodare 4K

Procesorul Intel N5095 din TS-464 are QuickSync — hardware transcoding pentru H.264, H.265. Plex Media Server rulează direct pe QTS ca aplicație nativă și transcodează 4K fără să transpire. Am testat cu 2-3 stream-uri simultane în 4K și NAS-ul nu a simțit că face ceva special. Față de varianta anterioară — un VM Ubuntu cu Plex pe Proxmox — diferența e semnificativă, mai ales pentru transcodarea hardware.

Container Station — surpriza plăcută

Nu mă așteptam să folosesc Container Station (Docker pe QTS) atât de mult. Teoretic aveam Proxmox pentru orice serviciu adițional. În practică, pentru servicii mici care au nevoie de acces direct la storage — un indexer de fișiere, un media scraper, câteva automatizări — e mult mai comod să pornești un container direct pe NAS decât să faci un VM nou pe Proxmox, să montezi share-ul NFS și să configurezi tot lanțul.

Container Station suportă Docker Compose, ceea ce înseamnă că poți lua un docker-compose.yml de pe GitHub și îl rulezi direct. Nu e la fel de flexibil ca Portainer pe Proxmox, dar pentru use case-ul ăsta e suficient și mai rapid de configurat.

Ce mă enervează

Disk-urile rotative rămân active

Acesta e singurul lucru care mă deranjează constant: TS-464 nu pare să adoarmă HDD-urile cum ar trebui. Am configurat hibernarea după 30 de minute de inactivitate, dar disk-urile se trezesc frecvent din cauza unor procese interne QTS — indexare media, verificări de integritate, log-uri — chiar și noaptea când nu accesează nimeni nimic.

Practic HDD-urile stau active mai tot timpul. HGST-urile enterprise sunt construite pentru asta — au rating de 550TB/an transfer și rulaj 24/7 — deci uzura nu e o problemă reală. Mă deranjează mai mult principial decât practic. Am dezactivat mai multe servicii de fundal din QTS, am oprit indexarea automată QuMusic/QuFoto/QuVideo pentru directoare unde nu e necesar, și situația s-a îmbunătățit parțial.

Procesorul — puțin sub așteptări

N5095 face față bine pentru Plex și Container Station simultan. Dar când rulezi ceva mai intensiv — o transcodare 4K în software (nu hardware), un backup mare cu compresie, câteva containere active simultan — simți că e la limită. Nu e un deal-breaker, dar dacă aș recumpăra azi aș privi serios spre un model cu procesor mai puternic din seria TS-x64Pro.

Ce aș face diferit

RAM-ul — aș pune 16GB de la bun început. 8GB e suficient pentru QTS de bază, dar de îndată ce pornești Plex și câteva containere în Container Station, simți presiunea. 16GB e sweet spot-ul; 32GB e overkill pentru ce face el.

Procesorul mai puternic — dacă bugetul permite, TS-x64Pro merită diferența de preț dacă știi că vei rula workload-uri mai intense.

Altfel — nu aș schimba alegerea. RAID 5 pe 4x10TB HGST enterprise a fost decizia corectă. Disk-urile second-hand de la Diablos sunt o afacere excelentă dacă îți asumi că sunt rulate — SMART-ul e curat pe toate patru și funcționează perfect. Stabilitatea e pe primul loc și TS-464 a livrat exact asta.

Verdict după un an

TS-464 rămâne alegerea justificată. E stabil, face Plex 4K fără probleme, Container Station e o surpriză plăcută și update-urile de securitate vin regulat. Singurul lucru care mă deranjează sunt HDD-urile active — e mai mult o ciudățenie QTS decât o problemă reală de fiabilitate, mai ales cu HGST enterprise sub capotă.

Dacă ești între QNAP și Synology la acest segment de preț: ambele sunt bune. Synology câștigă la ecosistem software și consistența interfeței, QNAP câștigă la flexibilitate hardware și Container Station. Dacă vrei să rulezi Docker cu acces direct la storage fără să te bați cu NFS mounts — QNAP.

Și dacă vrei să economisești la disk-uri — HGST/WD enterprise second-hand de la dealeri specializați ca Diablos e o opțiune serioasă. Nu e pentru toată lumea, dar dacă verifici SMART-ul înainte și cumperi de la un vânzător de încredere, raportul calitate/preț e greu de bătut. Eu am cerut screenshot-uri cu SMART inainte de a finaliza comanda, Diablos au trimis, eu am finalizat comanda. Buna afacere, acum 1200 lei pe 10TB pare scump :))

Posturi din aceeași serie:

De unde am plecat

Aveam un switch Tuya setat manual — il programam, uita el, udai tu, era o relatie complicata dar functiona. Start time si inching (adica pornea la x si mergea n minute). In fata casei era Irritrolul un programator de irigatii pe Bluetooth pe care l-am urat din ziua 1. Ca sa il programezi sau sa dai o udare manuala trebuia sa te dai aproape de el fizic, gen sa iesi din casa, sa te plimbi pana la caminul unde era langa electrovana, sa tii telefonul la 30cm de aparat ca BT-ul sau era de nota 4. Nu e smart home, e smart daca esti de fata iar cu 30 cm exagerez, mergea si de la 2-3m.

Acum

Acum am grafice. Am predictibilitate. Am flexibilitate. Am automatizari care stiu ziua, ora, temperatura prognozata si calculeaza singure cat sa ude. Am si un dashboard in HA unde vad tot, inclusiv cat a mers fiecare zona azi and shit.

Face cam acelasi lucru ca inainte — uda gazonu. Dar face asta cu mult mai multa demnitate.

Zona 6 si marea revelatie

Pe zona 6, cea din fata casei, am renuntat complet la Irritrol ca se cam stricase. 800-900 ron la gunoi ca nu l-am bagat iarna in casa… cu toate ca producatorul nu zice asta. Am pus o priza smart Gosund in casa, pe care am conectat un transformator de 24V AC legat direct la solenoid printr-un fir lung. Atat. Programatorul original este o iluzie. Nu exista. In locul lui e o priza care se aprinde si se stinge.

Si asta m-a facut sa realizez ceva: un programator de irigatii este, in esenta, un intrerupator programabil. Simplu si ordinar. Preturile umflate sunt rezultatul nisei — „irigatii” suna a tehnologie specializata, deci costa pe masura. In realitate e un releu cu un ceas si un robinet. Oricine vinde acelasi lucru cu un brand de gradinarit pe el poate cere 150 de euro pentru ce face o priza de 15 lei plus un transformator de 24V.

Calibrare si sistemul casoletei

Am 3 zone pe aspersoare. Pe gazonu meu, Gazon Paul — denumire oficiala in HA, nu ma intrebati — am facut testul cu caserola: pui o caserola pe gazon in timpul udarii, masori cati mm s-au adunat in X minute, calculezi debitul in litri per metru patrat per minut. Acest numar intra in formula de calcul si HA stie exact cat sa ude. Poti face asta si mai inginereste, masori cu mai multe casolete in paralel, pe diverse locuri de pe gazon si faci o medie…

Celelalte doua gazoane sunt inca la ghici. Am pus acelasi debit default. Iarba e verde. Deci aproximarea e corecta sau macar nu e dezastruoasa. Voi calibra. Candva.

Ask Busu

In fiecare duminica seara, HA intreaba Met.no — prognoza meteo integrata nativ — ce temperaturi maxime urmeaza saptamana viitoare. Face media pe 7 zile si din numarul ala calculeaza durata de udare pentru luni si joi. Automat. Fara interventia mea.

La 28 de grade medie, uda mai mult. La 20, mai putin. Formula e calibrata dupa principiul simplu ca necesarul de apa al gazonului in litri pe metru patrat pe saptamana e aproximativ egal cu temperatura maxima medie. Poate nu e perfect stiintific, dar functioneaza si e mult mai bine decat „e cam cald, imi pare ca ar trebui sa ud mai mult azi”.

Orarul

Initial am pus ore diferite la picuratoare si a iesit o porcarie — trebuia sa tin minte 9 10 11 pe unde uda, era haos discret. Acum e simplu: ora 6 Gazon Paul, ora 7 Gazon Anca, ora 8 Gazon Fata Casei. La ora 9 picuram prin toate cele 3 picuratoare in paralel, ca pot merge simultan fara probleme de presiune.

Predictibil. Ordonat. Cum trebuie.

Ce lipseste

Un pluviometru. Zigbee sau WiFi, nu conteaza, important sa fie in HA.

Saptamana asta a plouat ca la balamuc. Genul de ploaie dupa care nu tre sa mai uzi 10 zile. Dar sistemul nu stie asta si a udat conform programului. A trebuit sa imi amintesc eu sa opresc manual — eu, care cand eram mic luam lecitina de la bulgari ca sa nu uit lucruri. Cei de varsta mea stiu despre ce vorbesc. Ceilalti sa fie sanatosi si sa dea un like.

Un pluviometru rezolva asta elegant: daca a plouat peste un prag, skip automat. Sau mai bine, integrat in formula de bilant hidric — scazi precipitatiile prognozate din necesar si obtii durata ajustata. Datele sunt deja disponibile in Met.no. E urmatorul pas.

Concluzie

Doua saptamani, zero interventii manuale, gazonu e verde, Irritrolul e la cos. Home Assistant face irigatul cum trebuie sa fie facut: setezi o data, functioneaza, tu bei cafeaua si te uiti uimit ca vitelul la poarta noua ca ai grafice la irigat.

ps. Vecinu si-a luat un programator de pe Aliexpress, 6 zone. E in tuya. As putea sa il adopt daca ii da share pe contul meu de tuya si sa fie elegant pe 3 case… si inca 1 casa mai incolo si uite cum proiectul meu cu “what the fuck is home assistant” devine ceva palpabil si sa trebuiasca HA la HA. Hight availability la Home assistant.

pps. adica inca ceva uitat din cauza lecitinei: cred cu convingere ca udatul gazonului se poate optimiza… adica poti sa observi cat consuma pompa (ca si aia e in HomeAssistant) si poti dupa ce ai date cand si cum porneste sa iei decizii sa uzi mai econom… si mai cred ca ar trebui educata lumea sa nu mai ude seara la 11 – am eu motivele mele.

Dacă ești în căutarea unui mini-PC ieftin, low-power și capabil pentru homelab, Lenovo M715q Tiny e probabil pe lista ta scurtă. E mic, consumă puțin, se găsește second-hand la prețuri rezonabile și suportă suficient RAM și stocare pentru un lab serios. Dar înainte să instalezi ceva pe el, trebuie să răspunzi la o întrebare: ce OS de virtualizare/stocare pui pe el?

Am testat mai multe opțiuni pe propriul hardware — un cluster de trei noduri Lenovo Tiny (un M710q și doi M715q) — și am ajuns la o concluzie care poate părea neașteptată. Iată povestea completă.

De ce Lenovo M715q (și M710q)?

Înainte de orice comparație de software, hardware-ul contează. M715q și M710q sunt în esență același șasiu — diferența e procesorul: M710q vine cu Intel (Core i5/i7 gen 6-7), M715q cu AMD (Ryzen Pro sau A-Series). Ambele sunt extrem de eficiente energetic.

Cu câteva VM-uri pornite în idle — un Ubuntu cu LAMP stack, un HomeAssistant OS, două Windows Server 2022 — consumul unui nod e undeva la 7W. Întregul cluster de trei noduri stă între 28–32W în idle. E genul de cifră care zici ca putea fi mai mare daca ai curent de la hidrolectrica dar oricum idle-ul e cel mai scump din europa…

Limitări reale de care trebuie să ții cont:

  • Slot PCIe ocupat de placa de rețea integrată — extinderea e limitată
  • Stocare internă: un slot M.2 NVMe + un 2.5″ SATA — nu e un NAS
  • RAM maxim: 32GB (suficient.. ish)
  • M710q e ceva mai performant pe single-thread, dar am doar un exemplar — celelalte două noduri sunt M715q

Concluzia hardware: M715q e ideal ca nod de compute, nu ca nod de stocare. Asta a influențat direct alegerile de software.

Ce am testat

Proxmox VE — hypervisorul care a câștigat

Proxmox a fost prima instalare și a rămas. De ce? Pentru că face exact ce trebuie fără să ceară nimic în schimb.

Backup-uri automate cu politici configurabile — out of the box, fără plugin-uri, fără licență. ESXi nu avea asta. High Availability funcționează similar cu VMware, dar fără să plătești. Live migration merge cu sau fără shared storage (cu un ping sau două pierdute dacă disk-ul nu e pe shared). Hotplug pe CPU, RAM, disk, USB, rețea — cam tot ce ai nevoie pentru un lab.

Singurul regret: Ceph ar fi fost interesant pentru storage distribuit, dar ai nevoie de mai multe discuri decât am eu disponibile pe noduri. Nu e o problemă a Proxmox, e o limitare de hardware.

Verdict: Proxmox rămâne hypervisorul de bază. Rulează pe toți cei trei noduri și nu am niciun motiv să îl înlocuiesc.

TrueNAS — excelent, dar nu pentru virtualizat

TrueNAS e un NAS OS de calitate serioasă. ZFS, iSCSI, file-level sharing, snapshots, deduplicare — are tot ce vrei de la un sistem de stocare. Mi-ar plăcea să îl văd pe hardware dedicat și, de altfel, exact acolo a ajuns în setup-ul meu final (mai jos).

Problema e cu virtualizarea pe Proxmox. TrueNAS vrea acces direct la fier. ZFS are nevoie de disk-urile fără strat intermediar, altfel performanța și stabilitatea suferă. Am dat peste o problemă concretă: un disk extern USB de 3TB pasat prin passthrough către VM-ul TrueNAS pur și simplu nu a vrut să fie formatat. Direct pe fier — fără probleme. Deal-breaker.

Soluția corectă pentru TrueNAS e PCI passthrough complet pentru controller-ul de disk — dar asta înseamnă că sacrifici acel controller pentru restul nodului. Pe un M715q cu resurse limitate, nu e un compromis acceptabil.

Verdict: TrueNAS e excelent, dar pe hardware dedicat. Nu ca VM pe Proxmox.

Unraid — flexibil, dar pe bani

Unraid are un avantaj real față de TrueNAS: poate folosi discuri de dimensiuni diferite fără să impună RAID clasic. Poți adăuga un disk de 4TB lângă unul de 8TB și el se descurcă. Rulează și VM-uri, și containere Docker, are o interfață prietenoasă.

Dezavantajele pentru use case-ul meu: licența costă (între 49–129 USD în funcție de numărul de discuri) și nu oferă protecția ZFS pe care o dă TrueNAS. Dacă ești începător și vrei ceva simplu de gestionat, Unraid e o alegere bună. Dacă ai deja Proxmox și știi ce faci, avantajele nu justifică costul suplimentar.

Verdict: Bun pentru cei care pornesc de la zero și vor simplitate si nu este necesar dacă ai deja Proxmox.

OpenMediaVault — câștigătorul pentru shared storage

OMV e open-source, rulează pe Debian, consumă 2 vCPU și 4GB RAM ca VM pe Proxmox și face ce trebuie: shared storage prin NFS și SMB. Nu are iSCSI nativ, nu are ZFS out-of-the-box, nu are deduplicare. Dar e stabil si ușor de configurat și nu se plânge.

L-am folosit ca VM pe pve00 (nodul witness din cluster) pentru shared storage NFS. Viteze între 78–110 MB/s pe gigabit — OMV e ceva mai lent decât TrueNAS cu aceleași disk-uri (TrueNAS depășea constant 110 MB/s), dar pentru Plex, backup-uri de VM și proiecte de lab, e mai mult decât suficient.

Verdict: Alegerea câștigătoare pentru shared storage în cadrul cluster-ului Proxmox. Simplu, gratuit, funcțional.

Elefantii din cameră: ce faci cu 4 discuri de 10TB și 2 NVMe-uri de 2TB?

Acesta e motivul pentru care toată comparația de mai sus are un final neașteptat.

La un moment dat mi-am dat seama că am nevoie de stocare serioasă: 4 HDD-uri de 10TB și 2 NVMe-uri de 2TB. Să bagi astea într-un M715q nu e posibil — are un slot M.2 și un bay de 2.5″. Iar să construiești un server tower sau rack pentru asta transformă biroul într-un experiment Frankenstein: zgomot, cabluri, consum, căldură.

Răspunsul corect a fost un NAS comercial: QNAP TS-464. Patru bay-uri de 3.5″, două slot-uri M.2 NVMe, toate într-o cutie silenţioasă proiectată exact pentru asta. TS-464 rulează QTS, QNAP’s own OS, care acoperă tot ce am nevoie pentru storage: RAID, snapshots, Plex Media Server nativ, backup-uri.

Și dacă vreodată vreau TrueNAS pe hardware dedicat — TS-464 e un candidat interesant, chiar dacă QNAP nu îl susține oficial. Dar asta e o altă poveste.

M715q-urile au rămas ce sunt cel mai bine: noduri de compute low-power în cluster-ul Proxmox.

Rezumat: ce să alegi pe un Lenovo M715q

OSPreț licențăZFSVM supportIdeal pentru
Proxmox VEGratuitDaDa (KVM + LXC)Hypervisor principal
TrueNAS SCALEGratuitDaDaNAS dedicat, bare-metal
Unraid49–129 USDNu nativDaNAS simplu, discuri mixte
OpenMediaVaultGratuitPluginNuShared storage ca VM

Dacă ai un singur M715q și vrei să faci totul — compute și stocare — Proxmox cu OMV ca VM e combinația care funcționează fără bătăi de cap. Dacă ai discuri mari și multe, adaugă un NAS dedicat în ecuație și lasă mini-PC-urile să facă ce știu mai bine.

Posturi din aceeași serie:

Când vine vorba de adblocking la nivel de rețea, Pi-hole e prima recomandare pe care o găsești peste tot. E matur, are comunitate mare, funcționează bine dar are o limitare care pentru un homelab serios devine rapid o problemă: nu poate gestiona zone DNS private.

Voiam un domeniu .local pentru homelab — să pot accesa serviciile prin nume în loc de IP-uri. proxmox.local, nas.local, vaultwarden.local. Plus forwarding condiționat și split DNS pentru ill.ro — să rezolve intern altfel decât extern. În Pi-hole n-am găsit cum să fac asta în mod curat. În Technitium DNS, toate astea sunt funcții de bază.

Ce e Technitium DNS

Technitium DNS Server e un resolver DNS open-source scris în .NET, cu interfață web completă. Gândește-te la el ca la un DNS din Windows Server — zone forward, zone reverse, forwarderi condiționali, DNSSEC, DoH, DoT — dar gratuit, pe Linux, într-un container de 512MB RAM.

Nu e un proiect obscur: are versiuni regulate, documentație bună și e recomandat frecvent în comunitatea homelab ca alternativă serioasă la Pi-hole pentru cei care au nevoie de mai mult decât adblocking simplu.

Instalare — 2 minute cu Proxmox Helper Scripts

Rulează ca LXC pe Proxmox, instalat cu Proxmox Helper Scripts:

bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/ct/technitium-dns.sh)"

Scriptul creează un LXC Debian minimal, instalează Technitium DNS și îl pornește automat. La final îți dă IP-ul și portul interfeței web. Resursele consumate sunt neglijabile — 1 vCPU, 512MB RAM, câțiva GB disk.

După instalare, accesezi interfața la http://<ip-lxc>:5380, setezi parola de admin și ești gata. Cred ca daca nu era proxmox helper scripts nu descopeream multe proiecte misto care imi plac azi.

Adblocking — blocklist-urile folosite

Technitium are suport nativ pentru blocklist-uri în format hosts și wildcard. Configurezi din Settings → Blocking și adaugi URL-urile listelor. Eu folosesc trei:

  • Steven Black hosts — lista clasică, consolidată din mai multe surse:
    https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts
  • OISD Big — una din cele mai complete liste de adblocking, actualizată frecvent:
    https://big.oisd.nl/
  • Hagezi Multi — blocklist agresiv cu wildcard pentru domenii de tracking și malware:
    https://raw.githubusercontent.com/hagezi/dns-blocklists/main/wildcard/multi-onlydomains.txt

Technitium actualizează listele automat la intervalul configurat. Poți vedea câte domenii sunt blocate per listă și poți adăuga excepții (allowlist) pentru domenii blocate greșit.

Față de Pi-hole, diferența e că Technitium suportă wildcard blocking nativ — *.tracker.com blochează toate subdomeniile fără să le enumerezi individual. Hagezi Multi profită exact de asta.

Zone DNS private — domeniul .local pentru homelab

Acesta e motivul principal pentru care am ales Technitium în loc de Pi-hole. Din Zones → Add Zone, creezi o zonă autoritativă pentru orice domeniu vrei:

Am două zone private:

  • homelab.local — toate serviciile din cluster: proxmox.homelab.local, nas.homelab.local, vaultwarden.homelab.local etc.
  • O a doua zonă pentru alte resurse interne

Adaugi recorduri A, CNAME, PTR exact ca într-un DNS autoritativ clasic. Dacă adaugi un serviciu nou în homelab, adaugi un record în zonă și imediat e rezolvabil prin nume în toată rețeaua — fără să modifici fișiere /etc/hosts pe fiecare dispozitiv.

Split DNS pentru ill.ro

Split DNS înseamnă că același domeniu se rezolvă diferit în funcție de unde vine cererea. Pentru ill.ro: intern vreau să ajung la IP-ul intern al serverului, extern la IP-ul public.

În Technitium, creezi o zonă locală pentru ill.ro cu recordul A spre IP-ul intern. Cererile din rețeaua de acasă rezolvă ill.ro la IP-ul intern — traficul nu mai iese pe internet și se întoarce înapoi. Cererile de pe internet merg la DNS-ul public normal.

Pi-hole nu are această funcționalitate nativ. Technitium o rezolvă cu 3 click-uri.

Forwarderi și configurare generală

Din Settings → Forwarders, configurezi unde se duc cererile care nu sunt rezolvate local. Eu folosesc Cloudflare DoH (https://cloudflare-dns.com/dns-query) ca forwarder primar cu DNS over HTTPS — cererile DNS sunt criptate între LXC și Cloudflare.

Poți configura și forwarderi condiționali — dacă cineva întreabă de *.homelab.local, rezolvă local; altfel trimite la Cloudflare. Util dacă ai mai multe zone sau rețele.

Integrare în rețea

Pe ER605 (Omada), setezi IP-ul LXC-ului cu Technitium ca DNS server primar în DHCP settings. Toate dispozitivele din rețea primesc automat Technitium ca resolver — fără configurare manuală per dispozitiv.

Recomand să setezi un DNS secundar public (ex: 1.1.1.1) ca fallback, în caz că LXC-ul e down în timpul unui update sau restart Proxmox.

Concluzie

Dacă vrei doar adblocking simplu, Pi-hole e suficient și are o interfață mai prietenoasă pentru începători. Dacă ai nevoie de zone DNS private, split DNS, forwarderi condiționali sau orice seamănă cu un DNS server real — Technitium e alegerea corectă.

Pentru un homelab cu Proxmox, servicii multiple și un domeniu intern, Technitium face treaba unui Windows DNS Server fără licență, fără Active Directory și fără un VM de 4GB RAM. Un LXC de 512MB care rulează de luni fără să dea semne de oboseală si ai si backup, restore, te notifica cand e momentul sa faci update… very nice!

Posturi din aceeași serie:

Există un moment în orice proiect de homelab când îți zici: de ce să plătesc pentru Claude sau ChatGPT când pot rula modele local, gratis, pe hardware-ul meu? Răspunsul scurt: poți. Răspunsul lung e mai nuanțat și implică sârmă si lipici de hartie, Dacii și consum de curent. Am construit stack-ul si îl folosesc (rar), are limite si parca pe termen lung mai bine cumperi ceva “pe bani”.

Arhitectura stack-ului

Setup-ul are două straturi de inference:

  • LXC 117 pe Proxmox — Ollama + Open WebUI pentru chat de zi cu zi. Modele mici, răspunsuri rapide, consum neglijabil.
  • Workstation Windows (.56) — Ollama cu RTX 5070 12GB VRAM pentru modele mari. Accesat din Open WebUI ca backend secundar când ai nevoie de putere de calcul serioasă, au factura de curent!

Peste inference, stack-ul mai are:

  • Qdrant (.114:6333) — vector database pentru RAG, cu colecții active pentru fișiere, knowledge base și web search
  • SearXNG (.149:8888) — motor de căutare privat, integrat în Open WebUI pentru web search fără Google
  • nomic-embed-text via Ollama local — modelul de embeddings pentru RAG pipeline

Instalare — Proxmox Helper Scripts

LXC-ul cu Ollama se instalează în două minute cu Proxmox Helper Scripts:

bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/ct/ollama.sh)"

Scriptul creează un LXC Debian, instalează Ollama și îl pornește ca serviciu. Open WebUI se instalează separat sau în același LXC, tot prin helper scripts.

După instalare, tragi primul model:

# Modele de coding
ollama pull deepseek-coder-v2 #sau
ollama pull qwen2.5-coder:7b

# Model de embeddings pentru RAG
ollama pull nomic-embed-text

GPU inference de pe workstation

RTX 5070 cu 12GB VRAM rulează modele de până la ~8B parametri confortabil în 4-bit quantization, și modele de 14B cu compromisuri. Workstation-ul e accesibil din Open WebUI ca Ollama endpoint adițional — adaugi URL-ul în Settings → Connections.

Diferența față de CPU inference e dramatică: un model de 7B pe CPU ia 15-30 secunde per răspuns, pe GPU ia 1-3 secunde. Pentru coding cu DeepSeek sau Qwen, latența contează.

RAG cu Qdrant și SearXNG

Open WebUI are RAG integrat nativ. Configurezi Qdrant ca vector store, nomic-embed-text ca model de embeddings și SearXNG pentru web search — totul din interfață, fără cod.

Fluxul: încarci un document sau adaugi o pagină web în knowledge base → Open WebUI îl indexează în Qdrant → la conversație, modelul primește context relevant automat. Funcționează surprinzător de bine pentru documentație tehnică și note personale.

Modelele folosite

DeepSeek Coder V2 — cel mai bun model open-source pentru coding pe care l-am testat. Înțelege context larg, generează cod funcțional, explică decent. Pe 12GB VRAM rulează versiunea de 16B în 4-bit.

Qwen2.5 Coder — alternativă solidă, ceva mai rapid la inferență. Bun pentru refactoring și explicații de cod.

Pentru chat general, Llama 3.1 8B e modelul de zi cu zi pe LXC — rapid, decent, consum minim.

Unde e sârmă și unde e șurub

Să fim sinceri. Față de un model comercial serios — Claude Sonnet, GPT, Gemini — diferența e semnificativă. Nu e o chestie de configurație sau de hardware insuficient. E o chestie de scară: modelele comerciale au miliarde de parametri antrenate pe resurse pe care un homelab nu le poate replica.

RTX 5070 cu 12GB VRAM e o placă excelentă pentru gaming și pentru modele medii. Dar adevărata valoare în AI local stă în VRAM — mult VRAM. Un Mac cu M4 Pro și 48GB RAM unificat rulează modele de 30-40B parametri complet în memorie. RTX 5070 rulează 14-16B cu compromisuri. Diferența se simte în calitatea răspunsurilor, mai ales la reasoning complex.

Consumul de curent e real. Workstation-ul cu RTX 5070 în inference trage pana in 300W. Pentru sesiuni scurte de coding e acceptabil. Ca backend permanent de AI, costul electric începe să bată abonamentul lunar la un serviciu comercial deci nu face sens… Cand te joci daca tragi totul la ultra un 500W nu e deranjant 🙂

Unde merită fără discuție: confidențialitate. Parolele, codul intern, documentele sensibile — rămân local. Nu pleacă în niciun API extern. Pentru use case-uri unde asta contează, nicio comparație de calitate nu schimbă ecuația.

Concluzie

Stack-ul funcționează și îl folosesc (aproape) zilnic. DeepSeek și Qwen pentru coding, RAG pentru documentație, SearXNG pentru web search privat. E util, e al tău, nu plătești per token.

Dar dacă vrei să înlocuiești complet un model comercial de top — ai nevoie de mai mult VRAM decât are o placă de gaming medie, sau de un Mac cu chip Apple Silicon și RAM unificat mare.
Altfel repari Dacia cu sârmă: merge, dar știi că merge cu sârmă si nu stii pana unde te duce.

Posturi din aceeași serie: