GNU/Linux >> Znalost Linux >  >> Linux

Jak jsem si postavil Homelab s nízkým rozpočtem

Ve svém předchozím článku jsem se zabýval tím, co je Homelab a proč byste jej měli (nebo neměli) mít pro sebe.

Nyní, může kdokoli, kdo chce nebo potřebuje, mít domácí laboratoř? Záleží na několika věcech, ale peníze nebo zdroje se dají obejít. V tomto článku vysvětlím, jak se mi podařilo mít vlastní Homelab, aniž bych do něj investoval jmění. Ve skutečnosti mě to stálo méně než 1 000 USD a funguje to dost dobře na to, aby zvládlo požadavky na infrastrukturu mého domova.

Jak již bylo řečeno, je důležité zmínit se o vyloučení odpovědnosti:tento článek nepopisuje nejlepší způsob, jak věci dělat. Popisuje pouze to, jak se mi daří, aby to fungovalo, i když vím, že s tím jsou nějaké problémy a rizika, ale prozatím s tím můžu žít.

Za prvé:hardware

Nastavení homelabu vyžaduje počítač, který můžete v podstatě používat pouze k nepřetržitému hostování. Starý (ale umírněný výkonný) notebook to zvládne, nebo pokud máte nějaké peníze, které můžete použít, můžete si koupit díly a postavit si svůj vlastní počítač.

Pokud máte trochu peněz navíc, můžete si pravděpodobně pořídit i předělaný malý server, kterého se kvůli jeho stáří zbavila jakákoliv IT firma. Tyto servery mohou stále sloužit dobrému účelu pro projekt, jako je tento, i když to může vyjít z konceptu „s rozpočtem“.

Můžete také používat zařízení podobná Raspberry Pi.

Nejdůležitější část o hlavním serveru je:pokusit se získat základní desku a CPU, které zvládnou virtualizaci, zvláště ty, které mají kapacitu IO passthrough. U Intelu se ujistěte, že má procesor kapacitu VT-x, u AMD by měl mít kapacitu AMD-v. Bez toho toho moc nezmůžete.

Pokud neplánujete investovat do samostatného GPU a grafické karty NVIDIA nebo AMD, zkuste si pořídit CPU, které má alespoň integrovaný GPU.

Pak k tomu potřebujete mít nějaké místo na disku. Velikost disku závisí na tom, k čemu ho budete používat. V mém případě jsem chtěl mít přehrávač médií, herní PC, Firewall/DNS server a pravděpodobně velmi malou konzoli DVR, tak jsem si koupil 2TB pevný disk. Toto je část, kde můžete mít problémy s rozpočtem. Pokud peníze nejsou problémem, chcete mít tolik místa, kolik chcete, a zdvojnásobit ho, abyste mohli pracovat s RAID. Opět se v mém případě musím spokojit s jediným 2TB (ani SSD) pevným diskem, tečka.

Měl jsem tam položených pár 1TB USB pevných disků, byly staré více než 10 let, ale s velmi malým využitím (po cloudu se upřímně vyhýbám lokálnímu ukládání příliš mnoho věcí). Ty by byly velmi pomalé při použití pro zpracování nebo virtuální počítače, ale pro účely zálohování by to šlo.

Pak se chcete zaměřit na RAM. Čím více tím lépe. V mém případě jsem si mohl dovolit pouze 8 GB.

Pak, za předpokladu, že to chcete mít integrované ve svém vlastním domě a komunikovat se zbytkem sítě a zařízení, budete pravděpodobně potřebovat alespoň malý router nebo síťový přepínač. Pokud chcete ve svém místě nastavit malý router nebo malý server DNS, musíte mít alespoň druhou kartu NIC. Měl jsem USB NIC kartu, kterou jsem použil jako sekundární, abych mohl spouštět virtualizovaný firewall/směrovací řešení.

Software:Hypervisor

Potřebujete virtualizaci a k ​​tomu potřebujete hypervizor. Hypervisor je rozdělen do kategorií Type 1 a Type 2. Přečtěte si náš článek, kde se o tom dozvíte více.

Abych to shrnul:pokud použijete hypervizor Type-1, musíte být techničtější, ale máte větší kontrolu, a proto můžete na svých virtuálních strojích používat GPU a některé další zdroje.

S hypervizorem Type-2 se s ním snáze manipuluje, protože máte menší kontrolu nad věcmi, ale nemůžete provádět některé věci, jako je předávání výkonu GPU vašim virtuálním počítačům. Pokud chcete mít virtuální počítač pro práci a úpravu videí nebo hraní her, pak to s typem 2 nebudete moci dělat. Pokud to není účelem, pravděpodobně si vystačíte s typem 2.

Kdysi jsem měl Virtualbox a používal hlavní hostitelský stroj jako svůj vlastní mediální server. Tohle fungovalo dobře. Hlavní stroj byl schopen překódování videa. Když jsem však chtěl vyzkoušet různé mediální servery, abych mohl experimentovat, začal jsem mít potíže, protože jsem musel ovlivnit svůj hlavní server, aby mohl dopadnout špatně.

To mě přimělo migrovat na hypervizor typu 1 a začít znovu. Přešel jsem na Proxmox jako můj hypervizor, protože miluji Open Source. Zjistil jsem, že VMWare ESXI je příliš těžké na implementaci, protože nemám doma ani počítač s Windows, takže jsem ani nemohl přepracovat obrazy ISO, aby mi umožnily vložit správné ovladače hardwaru a dokonce je nainstalovat.

Homelab je aktivní, co teď?

Nastavil jsem to a začal jsem vytvářet počáteční sadu věcí na základě toho, co jsem chtěl použít. Chtěl jsem mediální server, ale jsem omezený na výkon (Intel i5 s interním GPU) a chci hostovat několik věcí. Takže jsem se musel rozhodnout (a prozkoumat), jak to udělat, aby mi to fungovalo.

Pokud jsem chtěl VM, který hostoval můj server Plex nebo Jellyfin a byl schopen překódování, musel jsem předat GPU tomuto mediálnímu serveru. To by mě nemohlo použít pro herní PC, alespoň ne současně. GPU můžete předávat pouze jednomu virtuálnímu počítači najednou.

To byl problém, protože bych mohl chtít hrát ve stejnou chvíli, kdy moje dítě nebo moje žena chtějí sledovat film nebo televizní pořad. Tak jsem to obešel.

Nastavil jsem základní NFS server pomocí Debianu (pro jeho lehkost), kde bych hostoval své soubory. Jednoduše bych zpracoval všechny video soubory, které vlastním, aby byly v univerzálním formátu, ze kterého by většina zařízení nemusela překódovat:MP4.

To by vyžadovalo, abych byl nad soubory a ujistil se, že je vždy převedu, než je indexuji na svůj mediální server. Můžete snadno automatizovat pomocí cronu a ruční brzdy-cli. Nemusel jsem ani psát cron skript, hledal jsem jeden z mnoha dostupných na GitHubu.

S mými soubory centralizovanými na serveru NFS jsem již nepotřeboval VM. Ke spuštění svého mediálního serveru jsem používal pouze kontejner a množství použitých zdrojů bylo co nejmenší. Právě jsem namapoval server NFS jako složku v mém kontejneru!

Pak jsem pro Firewall znovu nastavil pFSense, abych měl co nejvíce zdrojů optimálně sdílených, použil jsem pro to kontejner.

Dále jsem pro herní stroj nastavil virtuální počítač s Windows. Důvodem je, že jsem si chtěl založit Steam a také mít možnost hrát hry z GOG.com, oba mají mnohem větší podporu pro Windows než jakýkoli jiný systém. Proto jsem pro to nastavil VM a nastavil jej s GPU passthrough, aby virtuální stroj získal výkon GPU, který měl můj Intel i5.

Předpokládané známé problémy a rizika

Jak jsem zmínil na začátku tohoto článku, nedělal jsem věci nutně optimálně nebo nejlépe. Jen jsem se přizpůsobil tomu, jaký byl můj rozpočet, a odtud jsem řešil problémy a problémy.

Mít jeden jediný pevný disk mě vystavuje nebezpečí, pokud se s diskem něco stane (a pevné disky jsou jako lidé:narodí se a začnou umírat od toho konkrétního okamžiku). Kdybych nezálohoval, přišel bych o spoustu věcí. Nezálohuji všechny virtuální počítače, protože na disku nemám dostatek místa pro uložení všeho.

Vzhledem k tomu, že máte pouze jeden disk, rychlost čtení není tak vysoká. Při použití konfigurace RAID by bylo čtení disku optimální, a tedy rychlejší. Kromě toho mám v některých bodech velké zpoždění IO. Je to proto, že několik virtuálních počítačů a kontejnerů přistupuje ke stejnému serveru NFS. Pokud nebudu opatrný a nenastavuji automatické úlohy nebo crony v různých časech, aby se předešlo překrývání, mohl bych skončit s poškozením dat.

Moje GPU je jen integrovaná od Intelu, jen je slušná na úplně základní věci, takže ideální by bylo mít skutečné GPU, třeba i starou NVIDII. Přesto nejsou problémem jen peníze, používám malé pouzdro mini-ITX, takže bych musel hledat malý model, který by se vešel.

A konečně, používání mého hardwaru v těchto podmínkách, zejména pevného disku, snižuje jeho životnost, ale protože neplánuji mnoho využití, ale pouze mírné domácí používání, myslím, že prozatím stojí za to tuto architekturu ponechat.


Linux
  1. Jak používat Linuxový příkaz grep

  2. Jak používat příkaz historie v Linuxu

  3. Jak rozdělit terminál na více než jeden „pohled“?

  1. Jak vyvolat Hud?

  2. Jak otočit obrazovku na Raspberry Pi 3

  3. Jak změnit název hostitele na Ubuntu

  1. Jak byl podnik postaven na podcastech pro Linux:Příběh Jupiter Broadcasting

  2. Jak se Linux dostal k sálovému počítači

  3. Jak používat příkaz basename?