Otthoni kiszolgálóra virtualizációs ötletek

Fórumok

Kérdés: Otthoni kiszolgáló esetén, a lentebb felsorolt szolgáltatások virtualizációjára mit javasoltok? Mivel a témában nincs túl sok tapasztalatom, így ötleteket várok. A cél az lenne, hogy viszonylag egyszerű legyen karbantartani a rendszert. Illetve a virtuális gépek másolásával könnyen lehessen másik gépre migrálni, és ne kelljen küzdeni a szolgáltatások konfigurálásával. A proxmox-ra ránéztem, de nem világos előttem, hogy subscription nélkül mennyire használható. A Qubes OS-re is rákukkantottam, de ott meg az nem világos, hogy headless módban mennyire használható. Esetleg mik vannak még, amik szóba jöhetnek?

Az otthoni kiszolgálómon jelenleg Ubuntu van rajta, és azon futnak a szolgáltatások:
- MPD szerver
- Fájl szerver
- HomeAssistant
- MQTT szerver
- MongoDB adatbázis
- GitLab szerver

Fájl szerver: Jelenleg lvm alapon, ext4, néhány könyvtár nfs-sel megosztva (Windows-os gép nincs). Az nfs megosztást gyakorlatilag a MiBox-ról szoktam használni, a Kodival. A fontos fájlok szinkronizálva vannak felhős tárhelyre, illetve időnként backup is készül külső merevlemezre. A legfontosabb fájlok az asztali gépre és egy másik felhős tárhelyre is szinkronizálva vannak. Raid most biztosan nem lesz. Egyszerre maximum 2 gépről kell elérni, a hálózati másolás sebessége nem lényeges.

Az adatbázis az elsősorban tanulási célt szolgál, és nem várható, hogy nagyméretű adatbázisokat kezelnék vele.

Az MQTT-t a HomeAssistant-tal tervezem egy virtuális gépre, mert leginkább azzal lesz használva.

A GitLab is csak saját, otthoni projektjeimhez lesz használva.

Hardware (amit nem tervezek változtatni):
- ASRock QC5000M-ITX/PH alaplap
- 8 vagy 16 GByte RAM
- egy 64 GB-os SSD, és egy nagy HDD.

Hozzászólások

Én a meglevő Ubuntu-ra tennék egy Libvirt/KVM-et és csak az indokolt szolgáltatásokat virtualizálnám alá, a többi maradhatna a host-on.

----------------------------------^v--------------------------------------
"Probléma esetén nyomják meg a piros gombot és nyugodjanak békében!"

Annó a hősidőkben úgy tartották, hogy a hypervisoron (bár a kvm-et sose tartottam annak), lehetőleg csak a minimális dolgok fussanak, és ha akarunk valami arra ott a VPS. Ami szerintem logikus is. A Hypervisor foglalkozzon csak a virtualizálással, ne legyen már nyomtató sql stb szerver is egyben.

Úgylátszik változnak az idők.

Fedora 27, Thinkpad x220

Ez természetesen továbbra is igaz - nagyban. De itt egy otthoni teszt/dev/hobby rendszerről beszélünk. Itt pl. a samba storage-át nem látom értelmét átnyomni egy virtualizációs rétegen csak azért, hogy nehogy már a host-on fusson az a szerencsétlen samba

----------------------------------^v--------------------------------------
"Probléma esetén nyomják meg a piros gombot és nyugodjanak békében!"

> . Itt pl. a samba storage-át nem látom értelmét átnyomni egy virtualizációs rétegen csak azért, hogy nehogy már a host-on fusson az a szerencsétlen samba

Ezt nemigen ertem. En pont samba-t hasznalok fajlmegosztasra a virtualis gep es a hoszt kozott. Van valami egyszerubb modszer, amirol nem tudok?:)

Egyebkent ha mar ugyis felraktal egy virtualis gepet kvm hosztra, akkor mennyibol tart klonozni, es feltenni amit meg fel akarsz a masikra? Nem ertem miert kene a hosztra barmit is felpakolni ami nem szukseges a virtualis gepek bizergalasahoz...

---
Saying a programming language is good because it works on all platforms is like saying anal sex is good because it works on all genders....

ha akarsz magadnak hobbit: proxmox
ha nem: free esxi
(na jó, sarkítottam)
Ami neked kell az 1 darab hostra hypervisor (a fentieken kívül is van) és azon aztán úgy és annyi virtuális gépet futtatsz ahogy jólesik.

Ami a szolgáltatásokat illeti: nem biztos, hogy érdemes mindenre külön virtuális gépet fenntartani, a logikailag egymáshoz tartozó dolgok futhatnak egy gépen is, valamint a szolgáltatástól is függ, hogy érdemesebb-e különrakni, vagy nem.
pl. a GitLab-ot én külön gépre tenném, mert létezik csomagkezelős verziója és az felrak magával egy csomó dependenciát amivel esetleg összeakadhatsz ha ugyan arra a gépre mást is akarsz telepíteni.

Ezt fejtsd már ki egy kicsit bővebben!

Használtál már proxmox-ot ?
Értem én hogy vmware kvázi ipari szabvány akar lenni, de ettől még nem biztos hogy jó ....
vmware-nek csak akkor van igazán értelme ha fizetsz érte!, free-vel egy tisztességes backupot nem lehet össerakni (nem tákolásra, normális backupra gondolok)

Proxmox-ot felrakja, LXC konténerekbe berakja a cuccait és örül, ZFS-el amikor szüksége van csinál egy snapshot, és bármikor oda visszaáll.
Ha pedig "nehéz"/teljes virtualizáció kell akkor pedig készítt egy KVM-es gépet.

Nincsenek hardver függőségek, nincsen licenc, és mégis minden vigan megy!

Javasolnám hogy próbáld ki, és utána alkoss vélemény.

Használtam már, éles környezetbe csak akkor merném ajánlani ha az üzemeltetője ért is azokhoz a komponensekhez amikből össze van rakva, mert tud olyan mókás dolgokat produkálni amit a gui-n kattintgatással nem fogsz tudni megoldani és downtime / adatvesztés lesz a vége. Ez persze az esxi-re is igaz, de jóval kevesebb esetben.
Arról nem beszélve, hogy vmware cucca elég régi és nagyon elterjedt aminek köszönhetően nagyon sok helyre lehet fordulni dokumentációért/helpért.

Otthoni játékra amiről itt is szó van, teljesen jó a proxmox is, ezért is írtam oda, hogy sarkítottam. Nem kell mindjárt élezni a vasvillát :D

Ahogy nézem, proxmoxnál a subscription csak annyit ad pluszban, hogy hamarabb kapod meg a patcheket, és frissítéseket, valamint support.
A Proxmox VE Subscription is an additional service program designed to help IT professionals and businesses to keep their Proxmox VE deployments up-to-date. It also provides access to professional support services
https://forum.proxmox.com/threads/proxmox-free.30814/#post-154258

Én lehet valami vegyes megoldást csinálnék, pl docker és KVM, és a szolgáltatásokat átpakolnám egyesével külön VM-be / containerbe.
MongoDB, Gitlab, meg amihez van, azokat dockerbe, ami nagyon custom, azokat KVM, aztán amikor a guestek működnek, akkor a hostról szépen lekapcsolgatni, és lehet a hostot újrahúzni.
https://www.servethehome.com/creating-the-ultimate-virtualization-and-c…

Nalam Samba, Transmission, Nextcloud, rclone, certbot, gitolite, M4 Sport re-stream, Apache reverse proxy, hazi automatizalas (mysql + webservice + frontent) valamint a backup scriptek futnak Docker containerek formajaban. Amihez volt hivatalos image, hasznaltam. Amihez nem volt, ott irtam sajat Dockerfile-t, es build-eltem sajat image-t. Maga a host egy alap Ubuntu 16.04 server minimalis plussz csomaggal. Egyedul a NFS megosztas volt az, amit nem sikerult docker-izalnom, igy az is a host-on fut.

Korabban teljes virtualizalast hasznaltam Citrix XenServer majd Proxmox hasznalataval. ESXi nalam nem akart menni, valamiert nem szerette a procit.

A Docker-es megoldas nekem jobban tetszik. Van egy git repom, amiben tarolom az osszes Dockerfile-t, valamint mindegyik szolgaltatashoz irtam egy manage.sh scriptet, amivel tudom inditani/leallitani. Docker Compose valamiert nem szimpatikus nekem.

Sic Transit Gloria Mundi

van amire nem eleg a docker. Csak egy pelda:
active directory DNS-e osszeakad a dnsmasq-kal, pedig ip aliast kaptak dockerban.

Igy most kapott az active directory kulon virtualis gepet (persze belul dockerban fut, igy kb. 5 sec ujrainditani vagy ujat inditani) ... :)

De egyebkent a docker az tenyleg jo cucc.

Jah es dhcp se igazan komalja a dockert ha nem ugyanaz az ip cime, mint a gazdae...

---
Saying a programming language is good because it works on all platforms is like saying anal sex is good because it works on all genders....

sajnos nem (probaltam mielott attettem). Random 2-3 orankent felment 100%-ra a cpu, meg ossze-vissza kaptak meg a csomagokat.

Kulon virtualis gepben orom'e bodotta.

---
Saying a programming language is good because it works on all platforms is like saying anal sex is good because it works on all genders....

Nálam otthoni szervernek ugyanennek az alaplapnak még a 4db SATA-s változata megy 8GB RAM-mal. Alap Proxmox volt mindig, először a 4, utána frissítve a mostani 5-re, problémamentesen. Proxmox simán használható subscription nélkül is. Irodai környezetekben is működik hibamentesen így évek óta.
A Proxmox nagyon jól kezelhető, jól menthetők a VM-ek, konténerek. Alapja egy normál Debian, vagyis virtuális környezeten kívül is bárhogyan használható ahogy egy Debian rendszer. Nálam olyan szinten hogy a desktop gépemen is egy ideje Proxmox fut, Debian Stretch ugye, Mate felülettel, semmivel semmi gondom, hibátlanul üzemel, 3D Nvidia, spéci audio hardware és stúdió alkalmazások, stb..
A kis szerveren jelenleg az alap rendszeren Samba, minidlna, transmission meg még pár apróság. VM és CT-ben több cucc. A tűzfalam például egy Sophos UTM Home verzió VM-ben. Ehhez került a gépbe még egy használt HP 4 portos Gbites LAN kártya. Meg még Debian-okon ezek: SuiteCRM, Piler, Nextcloud.
A gépben 1db SSD a rendszernek és a CT,VM-eknek, 3db SATA HDD, 2db USB HDD.
A Proxmox minderre nálam teljesen bevált, 3 éve megy, bizonyított.
Nagyon könnyű vele a VM,CT-kről snapshot, backup, akár másik gépre is hálózatban, költöztetni is.
Szóval részemről egy nagy + a Proxmox-nak.

Szerintem erre a gépedre a Proxmox be fog válni. Csak meg kell kicsit tanulni, de nem nagy dolog mert nagyon jó a dokumentációja és rengeteg videó van a youtube-on.
A bővíthetősége se akármilyen szintű. Ha van három, akár még különböző felépítésű géped is, otthonra HA Cluster is építhető belőle néhány kattintással. :)

Apropó proxmox, a threaden felbuzdulva, megpróbáltam feltolni egy microserver gen10-re, de elhasal az usb image, cannot umount /mnt. Úgy látom azt, hogy hol keresse a cdrom fájljait nem definiálja rendesen a telepítő, mindenféle ronda gányolásokat találtam rá.

https://www.reddit.com/r/homelab/comments/2smlm5/issues_installing_prox…

A proxmox saját vonatkozó oldala úgy véli már megoldották ezt a problémát azzal, hogy írd etcherrel az image-t, vagy egyszerűen nem érdekli őket.

Még koránt sem vagyok kész, de egy kb. 11 éves desktop gépen tesztelem a proxmoxot (és reményeim szerint innen fogom migrálni a célgépre). Nekem simán bebootolt (miután rájöttem, mit kell beállítani a BIOS-ban az usb boothoz) a dd-vel felmásolt image. Bár az etcher alapján úgy gondolom, hogy Te nem linuxon próbáltad.

I just installed Proxmox today and while I can't help you with you current problem I can war you of another one that you will soon encounter. When installed from a USB drive there is a know issue of grub being written on the USB drive instead of the selected hard drive. There's no error message but when you reboot after the install nothing happens. I temporarily solved the issue by booting from a Super Grub2 disk. Booting from a live USB, chroot-ing into PVE and manually installing grub should be a more permanent fix. That or installing via CD or Debian.

vagy:

https://www.reddit.com/r/homelab/comments/291y76/fresh_install_of_proxm…

már megírtam win-en három különböző usb flasherrel, meg macos alól is. Lehet az zavarja meg, hogy a freenas pendrive-ja is bent van a vasban +2 hdd +1 ssd. Ez amúgy egy UEFIs szépség, lehet az a baja, még odáig el sem jutottam, hogy a RAID controller legyen a baja, amire valaki panaszkodik a proxmox fórumon.

Ezek 3 éves bejegyzések, még a 3-as Proxmox idejéből. Most az 5.2-nél tartunk. Ezzel is probléma van?
Én eddig hasonlót nem tapasztaltam telepítéskor, de persze bármi lehet, az eltérő vasak, egyéb körülmények.
Én meg éppen tegnap másnál az Etcher Windows-os aktuális verziójával nem tudtam kiírni egy Systemrescue-t pendrive-ra úgy hogy működjön is. Más programmal meg sikerült.

Azért ma már ennyire nem rossz a helyzet. Intel chipsetes alaplap, preferáltan Intel hálókártyával és random SATA SSD/HDD-vel (AHCI módban) legvalószínűbb, hogy simán menni fog. Ilyen összeállítást desktop gépen sem nehéz találni. Ha a hálókártya valami PCIe-s Realtek (ahogy a legtöbb taiwani alaplapon lenni szokott), akkor lehet szívás, de úgy emlékszem volt olyan időszak amikor hackelés nélkül ment az is - nem tudom most is így van-e. Sok éve próbáltam egy szutyok MSI alaplappal, akkor simán működött, bár nem emlékszem, hogy az alaplapi realtek kártyával, vagy bedugtam egy PCI-os Intel E1000-est.

Mindenesetre, legfeljebb 1-2 órát vesztesz vele ha megpróbálod, és a végén kiderül, hogy valami mégsem működik.
---
Régóta vágyok én, az androidok mezonkincsére már!

Proxmox teljesen jó lesz neked.
Ami nem feltétlen igényli a kvm-et azt berakod lxc konténerbe és sokkal kisebb erőforrásból megúszod.
Ilyen relatíve kicsi hostnál ez sokat tud jelenteni.
Tudom nekem is itthon 8GB-s a proxmox szerverem, support nélküli, 100% teljesen oké, asszem 4 éve megy.
Cégnél is ezt használjuk sok éve, élesben is.

Docker-t is lehet rá hegeszteni, akár a hostra is ha nagyon akarsz, vm-be meg simán, nyilván.

--
Gábriel Ákos

Qubes az desktopra való, nem szerverre.

Szerver oldalra:
- XenServer (open source)
- VMware ESXi (free)

Én ezeket javasolnám. A kvm és/vagy konténer alapú megoldásokkal szemben ezek valós type1-es hypervisorok, ezek minden előnyével és "hátrányával" együtt...

--
zrubi.hu

Pfff...

https://en.wikipedia.org/wiki/Hypervisor

"The distinction between these two types is not necessarily clear. Linux's Kernel-based Virtual Machine (KVM) and FreeBSD's bhyve are kernel modules[5] that effectively convert the host operating system to a type-1 hypervisor.[6] At the same time, since Linux distributions and FreeBSD are still general-purpose operating systems, with other applications competing for VM resources, KVM and bhyve can also be categorized as type-2 hypervisors."

--
Gábriel Ákos

??? tehát ha feltolok egy minimal install Linuxot kvm-mel, vagy minimal FreeBSD-t bhyve-val, és csak VM-eket futtatok, akkor type-1, ha mellette a host-on még fut egy ntpd, egy dnsmasq, egy vagy épp egy NAT, akkor meg type-2? Ez azért szerintem durva megközelítés :-)

=====
tl;dr
Egy-két mondatban leírnátok, hogy lehet ellopni egy bitcoin-t?

nem, ezek alapján a KVM, bhyve egyértelműen NEM type-1.
mindegy, hogy fut-e az ntpd meg a dnsmasq ;)

a Xen, és az ESXi az mi tényleg type-1
Ugyan lehet ezeket is rosszul implementálni, de esetükben erősen elkülönöl a produktív és a management felület/inteface/erőforrások/stb., míg a nem type-1 esetében eleve kínálja magát a rossz irány: kevered a produktív dolgot a management részekkel. Pl:
"elég lesz annak egy konténer is, nem kell külön VM"

Ezt egy rendes type-1 hypervisor eleve fel sem kínálja mint lehetőség, hanem: csinálj egy VM-et, és azon belül konténerezz.

De mivel ebben a nagyok sem tudtak megegyezni, így ez erősen csak:
szerintem.

--
zrubi.hu

Szerintem az Hyper-v a KVM-hez nagyon hasonló elven működhet, szóval az én besorolásom szerint nem type-1.

De hogy érthetőbb legyen:
a type-1 egy kizárólag hypervisor-nak szánt kernel, nem pedig egy általános (rossz esetben DESKTOP) kernel-be szuszakolnak bele egy modult, amitől hypervisor funkciókat IS kap.

A win szerver core is csak egy általános célú kernel, alapvetően nem hypervisor.

--
zrubi.hu

Ugye van egy kép ami jól elmondja, hogy mi a type-1 és type-2 között a különbség. Hivatkozik, hogy a KVM nek kernelmodulja van ezért nehéz besorolni. Akkor ennyi erővel akik ugye emlékeznek a régi qemu-hoz volt kernel modulos processzor gyorsítás a kqemu. Akkor már az is ide tartozna ezek szerint ?

Fedora 27, Thinkpad x220

En a magam reszerol KVM, azon belul virtualis gepek, es a virtualis gepen belul docker.

Ami nem fer meg dockerban egy gepen belul az megy kulon virtualis gepre dockerban szinten.
A windows szinten kulon virtualis gep. Meg van komplett setup, amit meg nem dockerizaltam igy az is kulon virtualis gep.

Plusz ilyen ideiglenes cuccok (linux desktop) szinten par temp virtualis gep. Ha valamihez tenyleg kellene a gui (pl. router konfig csak grafikus bongeszobol megy, snmp-vel csomot nem lehet allitani).

Es minden virtualis gepet start elott klonozom. Es ha nem is dockerbe kerul a cucc akkor is scriptbol telepitem mindenkepp, hogy ujra lehessen epiteni a klonbol.

---
Saying a programming language is good because it works on all platforms is like saying anal sex is good because it works on all genders....

Konténerezd be őket, és fussanak úgy, ne VM-ben.

proxmox. kvm és konténer vegyesen.

Eddigi kevés tapasztalataim alapján ezt meg tudom erősíteni. Ha olyat akarsz, amire eredetileg tervezték a rendszert. Ha nem, akkor neki kell ugrani a Google-nek. Kezdőként nehezítés, hogy egy rakás információ van a 4.x-es verzióhoz, amik vagy jók, vagy nem. Többnyire nem, illetve csak némi módosítás után.

- Mivel nem akarok külön NAS-t, így egy containerbe tettem az nfs szervert.
- Az nfs volume mountolása container-ből.
- Containerben mpd szerver -> Hangkártya elérése a containerből.

Ezekre mind megtaláltam a választ, de kb. száz téves, illetve elavult információra jut egy tényleges megoldás. A legbosszantóbb az volt, amikor valaki kb. 1 éve leírta, hogy az adott problémát mivel oldotta meg (container + pulseaudio), de a hogyant már nem írta meg.

Eddigi vélemény: Nem „szabványos” feladatok esetén van némi hobbi faktor. Viszont maga a virtualizáció és a konténerezés nagyon egyszerű, tényleg „click, click, finish” elven megy.

Én a pcipasstrouth grafikus, egyszerűbb beállíthatóságát hiányolom még belőle. Ez az ingyenes ESXi-ben megvan. De gondolom ez is meglesz majd, csak ki kell várni. Ahogy a Proxmox HA Cluster teljes kattintgatós megoldása is meglett az 5.2-től. Nemrég még csak a fele volt így összerakható, a többi parancssor.

Kíváncsiságból az ESXi-t is elkezdtem nézegetni házi felhasználás szempontból.
Egy VM-et hogyan lehet abban automatizáltan menteni másik gépre hálózatban? A manuális export megoldást megtaláltam.
Ha jól értem az ingyenes ESXi-ben maximum 8db VM lehet?

Proxmox +1 kb. egy hónapja megy 2 gépen cluster-ban. Igaz csak egy szem VM fut rajta (Win10). Most frissítettem 5.1-ről 5.2-re. 5 percenként incremental snapshot a 2. gépre. Ha elpusztul az 1.-eske kézi failover és kicsi a kiesés. Erről bővebb infó egy másik szálban, ott voltak pro/kontra dolgok, azért így megy.
Cluster nélkül is nagyon jó, egyszerű VM és container kezelés.

Én régen esxi-t használtam és io-ban pusztulatosan rosszul teljesített. Ezen kívül olyan fájlrendszerbe formázta az addigi diskeket amiket nem lehetett rendesen sehova felmountolni. Kész procedúra volt onnan "menekülni".
Viszont most adódott, hogy több féle rendszert kéne virtualizálnom (linux, windows). A Proxmox hogyan teljesít ezen a területen?

Köszi a választ!
Jelenleg ubuntut futtatok rengeteg sallang service-el és van egy webszerverem virtualboxban. Nincs panaszom a vbox teljesítményére, de az adminisztrációja kínszenvedés, statisztikázni meg lehetetlen. Ja és a Win10 a legújabb tavaszi update óta panaszkodik, hogy nincs 3D gyorsítás (pedig headless használom).

Szóval lehet átváltanék erre, csak a gond az, hogy a szerver maga a router is és nem akarok emiatt egy routert venni. Bár ahogy olvasom igazából nulláról telepítve ez is egy debian, szóval tud ppp-t és telepíthetek rá dhcp szervert is talán.

A routert is virtualizálhatod. aztán hívhatod gateway-nek vagy tűzfal gépnek. :)
Legyen legalább a WAN-nak egy külön fizikai hálókártyája, amit nem adsz oda más gépnek!
--
Tertilla; Tisztelem a botladozó embert és nem rokonszenvezem a tökéletessel! Hagyd már abba!; DropBox

Nálam a házi szerveren Proxmox-on virtualizálva fut egy Sophoz UTM home verzió, ami ingyenes. Igen fejlett, biztonságos tűzfal ami minden router funkciót ellát mellesleg. De persze megvan az erőforrás igénye is, ha minden be van kapcsolva ami véd. De egy pfSense, OpenWRT is felrakható, tudnak így működni.

én manjaro-t használok az otthoni szerveren a host-on, csak minimális dolok vannak: kernel/zfs/firewall... (a manjaro a zfs miatt lett választva, nem akartam dkms-t).

lxc-ben pedig fut egy csomó (debian) guest: mpd, file szerver, fotók/média, download szerver, LAMP... mindenféle homemade alkalmazás...

de gondolom ugyanerre jó a proxmox is... tudom, tudom... a céldisztró a jó, nem a saját config-ok... csak ne akarjon az ember változtatni