Domovská » jak » Jak nainstalovat software RAID pro jednoduchý souborový server v Ubuntu

    Jak nainstalovat software RAID pro jednoduchý souborový server v Ubuntu

    Potřebujete souborový server na levné, snadno nastavitelné, "rock solid" spolehlivé s Email Alerting? vám ukáže, jak používat Ubuntu, software RAID a SaMBa k tomu, abyste to dokázali.

    Přehled

    Navzdory nedávným buzím, že vše můžete přesunout do "všeho mocného" oblaku, někdy možná nebudete chtít své informace na serveru někoho jiného, ​​nebo bude možná neuskutečnitelné stáhnout svazky dat, které požadujete od internetu, kdykoli (například nasazení obrazu ). Takže předtím, než vyčistíte místo ve svém rozpočtu pro řešení úložiště, zvažte konfiguraci, která je licencována zdarma s Linuxem.

    S tím se říká, že půjdeme levně / zdarma, neznamená to, že "dáme na vědomí vítr" a za tím účelem si všimneme bodů, které si je třeba uvědomit, konfigurace, které by měly být zavedeny kromě použití softwaru RAID, aby bylo dosaženo maximální poměr ceny k spolehlivosti.

    Obrázek Filomeny Scalise

    O softwaru RAID

    Jak naznačuje název, jedná se o nastavení RAID (redundantní pole cenově výhodných disků), které se provádí zcela v softwaru namísto použití vyhrazené hardwarové karty. Hlavní výhodou takové věci je cena, neboť tato vyhrazená karta je přidanou prémií k základní konfiguraci systému. Hlavní nevýhody jsou v podstatě výkon a jistá spolehlivost, neboť taková karta obvykle přichází s vlastním RAM + CPU, aby provedla výpočty potřebné pro redundantní matematiku, ukládání do mezipaměti dat pro zvýšení výkonu a volitelnou záložní baterii, která zachovává nepsané operace v mezipaměti napájení bylo obnoveno v případě výpadku napájení.

    S nastavením softwaru RAID obětujete některé výkony CPU systémů, abyste snížili celkové systémové náklady, avšak u dnešních procesorů je režie relativně zanedbatelná (zejména pokud se rozhodnete věnovat hlavně tomuto serveru jako "souborový server"). Pokud jde o výkon disku, je to trest ... nicméně jsem nikdy nenapadl úzké místo z disku subsystému ze serveru, abych si všiml, jak je to hluboké. Tomův hardwarový průvodce "Tom's goes RAID5" je starý, ale dobrá vyčerpávající článek o tématu, který já osobně používám jako odkaz, nicméně vezměte referenční hodnoty s obilím soli, protože mluví o implementaci softwaru softwaru RAID v systému Windows všechno ostatní, jsem si jistý, že Linux je mnohem lepší: P).

    Předpoklady

    • Trpělivost mladá, to je dlouhé čtení.
    • Předpokládá se, že víte, co je RAID a pro co je používán.
    • Tato příručka byla napsána pomocí Ubuntu server9.10 x64, proto se předpokládá, že máte také systém Debian založený na práci.
    • Uvidíte, že používám VIM jako program editoru, je to jen proto, že jsem na to zvyklý ... můžete použít libovolný jiný editor, který byste chtěli.
    • Systém Ubuntu, který jsem použil při psaní této příručky, byl nainstalován na disk "on-key". Díky tomu mi dovolil používat sda1 jako součást pole RAID, a proto přizpůsobit nastavení.
    • V závislosti na typu RAIDu, který chcete vytvořit, budete potřebovat alespoň dva disky ve vašem systému a v této příručce používáte 6 disků.

    Výběr disků, které vytvářejí pole

    Prvním krokem k vyloučení pasti je znalost jeho existence (Thufir Hawat z Dune).

    Výběr disků je zásadním krokem, který by neměl být lehce převzat, a vy byste bylo rozumné vydělat si skutečně své zkušenosti a dbát na toto varování:

    Dělat NE použijte disky typu "consumer grade" pro vytvoření pole, použijte disky typu "server grade"!!!!!!

    Teď už vím, co si myslíte, neříkali jsme, že půjdeme levně? a ano ano, ale toto je přesně jedno z míst, kde je to bezohledné a je třeba se vyhnout. Navzdory jejich atraktivní ceně nejsou pevné disky pro spotřebitelské účely navrženy tak, aby byly použity v 24hodinovém "on" typu použití. Věř mi, tvůj opravdu to zkusil pro tebe. Minimálně čtyři disky pro spotřebitele ve třech serverech, které mám takto nastavené (kvůli omezením rozpočtu), selhaly po přibližně 1,5 ~ 1,8 letech od počátečního dne spuštění serveru. Zatímco nedošlo ke ztrátě dat, protože RAID to udělal dobře a přežil ... takové momenty zkrátit očekávanou životnost sysadminu, nemluvě o době, kdy společnost pro údržbu serveru (něco, co může skončit, stojí více než disky vyšší třídy).

    Někteří mohou říci, že mezi oběma typy není žádný rozdíl v míře selhání. To může být pravda, nicméně i přes tato tvrzení, jednotky třídy serverů stále mají vyšší úroveň SMART omezení a QAing za nimi (jak lze pozorovat tím, že nejsou uvedeny na trh, jakmile jsou spotřebitelé řídí), takže i nadále velmi doporučuji, abyste si vydělali peníze za upgrade.

    Výběr úrovně RAID.

    Zatímco nebudu jít do všech dostupných možností (to je velmi dobře zdokumentováno v položce RAID wikipedia), mám pocit, že je třeba poznamenat, že byste měli vždy zvolit alespoň RAID 6 nebo vyšší ( budeme používat Linux RAID10). Důvodem je to, že když selže disk, existuje větší šance na sousední selhání disku a pak máte chybu "dva disky" na vašich rukou. Kromě toho, pokud budete používat velké disky, protože větší disky mají vyšší hustotu dat na povrchu talíře, je šance na selhání vyšší. IMHO disky od 2T a dále budou vždy spadat do této kategorie, takže buďte si vědomi.

    Pusťme se

    Rozdělovací disky

    Zatímco v Linuxu / GNU můžeme použít celé blokové zařízení pro potřeby ukládání dat, použijeme oddíly, protože usnadňuje používání nástrojů pro záchranu disků v případě, že systém ustoupí. Používáme zde program "fdisk", ale pokud použijete disky větší než 2T, budete muset použít oddílový program, který podporuje oddělování GPT, jako je rozdělení.

    sudo fdisk / dev / sdb

    Poznámka: Zjistil jsem, že je možné vytvořit pole bez změny typu oddílu, ale protože tohle je způsob popsaný po celé síti, budu to následovat (opět při použití celého blokového zařízení je to zbytečné).

    Po stisknutí klávesy fdisk jsou klávesy:

    n; pro nový oddíl
    zadejte
    p; pro primární oddíl
    zadejte
    1; počet oddílů
    zadejte; přijmout výchozí nastavení
    zadejte; přijmout výchozí nastavení
    t; změnit typ
    fd; nastaví typ, který má být "Detekce Linux raid auto detect" (83h)
    w; zapisovat změny na disk a ukončit

    Opláchněte a opakujte všechny disky, které budou součástí pole.

    Vytvoření pole RAID10 pro systém Linux

    Výhodou použití "Linux raid10 "je, že ví, jak využít nepravidelného počtu disků, aby zvýšil výkon a odolnost ještě dále než vanilková RAID10, kromě skutečnosti, že při jeho použití může být vytvořeno pole" 10 "v jediném krok.

    Vytvořte pole z disků, které jsme připravili v posledním kroku, vydáním:

    sudo mdadm --vytvořit / dev / sdc1 / dev / sdb1 / dev / sd1 / dev / sd1 / dev / sd1 / dev / sd1 / dev / sd1 - -verbose

    Poznámka: Toto je pouze jeden řádek, ačkoliv jeho zastoupení to rozdělí na dvě.

    Přerušme parametry:

    • "-Chunk = 256" - velikost bajtů razících pruhů je rozbitá a tato velikost je doporučena pro nové / velké disky (2T jednotky používané k vytvoření této příručky byly bezpochyby v této kategorii).
    • "-Level = 10" - Použije Linux raid10 (pokud je zapotřebí tradiční nájezd, neboť za jakýmkoli důvodem byste museli vytvořit dvě pole a připojit se k nim).
    • "-P f2" - Použije "daleký" plán rotace viz poznámka níže pro více informací a "2" říká, že matice uchová dvě kopie dat.

    Poznámka: Používáme "vzdálený" plán, protože to způsobuje, že fyzické rozložení dat na discích NENÍ stejné. To pomáhá překonat situaci, kdy hardware jednoho z jednotek selže kvůli výrobní chybě (a nemyslete si, že "to se mi nestane", jako to vaše skutečně udělal). Vzhledem k tomu, že dva disky mají stejnou značku a model, byly používány stejným způsobem a tradičně uchovávaly údaje na stejném fyzickém místě ... Riziko existuje, že jednotka, která uchovává kopii dat, selhala příliš nebo je blízko a neposkytuje požadovanou odolnost, dokud nedojde k výměně disku. "Daleko" plán dělá distribuci dat na úplně jinou fyzickou polohu na jednotkách kopírování kromě použití disků, které nejsou blízko sebe v počítači případě. Více informací naleznete zde a na níže uvedených odkazech.

    Jakmile bude pole vytvořeno, spustí proces synchronizace. Zatímco budete chtít počkat na tradice (neboť to může chvíli trvat), pole můžete začít používat ihned.

    Pokrok lze pozorovat pomocí:

    sledovat -d cat / proc / mdstat

    Vytvořte konfigurační soubor mdadm.conf

    Zatímco bylo prokázáno, že Ubuntu jednoduše zná skenování a aktivaci pole automaticky při spuštění, kvůli úplnosti a zdvořilosti pro další sysadmin vytvoříme soubor. Váš systém automaticky nevytváří soubor a pokouší se zapamatovat si všechny součásti / diskové oddíly vašeho RAID setu. Je to pas diety správce systému. Tyto informace mohou a musí být uchovávány v souboru mdadm.conf. Formátování může být obtížné, ale naštěstí výstup příkazu mdadm -detail-scann -verbose vám to poskytne.

    Poznámka: Bylo řečeno, že: "Většina distribucí očekává soubor mdadm.conf v / etc /, ne / etc / mdadm. Domnívám se, že je to "ubuntu-ism", který má jako /etc/mdadm/mdadm.conf ". Vzhledem k tomu, že my jsou pomocí Ubuntu zde budeme jít s tím.

    sudo mdadm - informace - sken --verbose> /etc/mdadm/mdadm.conf

    DŮLEŽITÉ! musíte z nově vytvořeného souboru odstranit jednu "0", protože syntaxe vyplývající z výše uvedeného příkazu není zcela správná (GNU / Linux ještě není OS).

    Pokud chcete vidět problém, který tato nesprávná konfigurace způsobuje, můžete vydat "skenovat" příkazu v tomto bodě před provedením úpravy:

    mdadm --examine - sken

    Chcete-li tento problém překonat, upravte soubor /etc/mdadm/mdadm.conf a změnit:

    metadata = 00.90

    Číst:

    metadata = 0,90

    Spuštění mdadm -examine-scan příkaz by se měl vrátit bez chyby.

    Nastavení souboruového pole v poli

    Použil jsem ext4 pro tento příklad, protože pro mě to stavělo na znalosti ext3 souborového systému, který přišel před ním a zároveň poskytoval slibovaný lepší výkon a funkce.
    Navrhuji vám věnovat čas, abyste zjistili, jaký souborový systém lépe vyhovuje vašim potřebám, a dobrý začátek toho je náš článek "Který Linuxový souborový systém by si měl vybrat?".

    sudo mkfs.ext4 / dev / md0

    Poznámka: V tomto případě jsem nedělal oddíl výsledného pole, protože jsem jednoduše nepotřeboval v té době, protože žádající strana výslovně požadovala alespoň 3,5T nepřetržitého prostoru. S tím jsem řekl, že jsem chtěl vytvořit oddíly, musel bych použít nástroj GPT pro rozdělení oddílů jako "rozdělil".

    Montáž

    Vytvořit bod připojení:

    sudo mkdir / media / raid10

    Poznámka: Toto může být libovolné umístění, výše je pouze příkladem.

    Protože se zabýváme "sestaveným zařízením", my to uděláme ne použijte UUID souborového systému, který je na zařízení k montáži (jak je doporučeno u jiných typů zařízení v našem příručce "Co je to linux fstab a jak to funguje"), protože systém může skutečně vidět část souborového systému na jednotlivém disku a zkusit nesprávně připojte jej přímo. k překonání tohoto záměru chceme explicitně čekat, až bude zařízení "sestaveno" předtím, než ho budeme pokoušet namontovat, a použijeme název sestaveného pole ("md") uvnitř fstab k tomu dosáhnout.
    Upravte soubor fstab:

    sudo vim / etc / fstab

    A přidejte k němu tento řádek:

    / dev / md0 / media / raid10 / ext4 výchozí hodnoty 1 2

    Poznámka: Pokud změníte umístění mount nebo souborový systém z příkladu, budete muset upravit výše uvedené.

    Použijte mount s automatickým parametrem (-a), abyste simulovali spouštění systému, takže víte, že konfigurace pracuje správně a že zařízení RAID bude při restartu systému automaticky připojeno:

    sudo mount -a

    Nyní byste měli vidět pole namontované příkazem "mount" bez parametrů.

    E-mailové upozornění pro pole RAID

    Na rozdíl od hardwarových polí RAID se softwarovým polem neexistuje žádný řadič, který by začal pípávat, aby vás informoval, kdyby se něco pokazilo. E-mailové upozornění proto budou jediným způsobem, jak zjistit, zda se něco stalo s jedním nebo více disky v poli nejdůležitější krok.

    Postupujte podle pokynů "Jak nainstalovat výstrahy pošty v systému Linux pomocí Gmailu nebo SMTP" a když jste hotovi, vraťte se sem a proveďte kroky specifické pro RAID.

    Potvrďte, že mdadm může odeslat e-mail
    Příkaz uvedený níže vám řekne mdadm, že vypálí pouze jeden e-mail a zavře.

    sudo mdadm - monitor - sken - test - obrázky

    Pokud bude úspěšný, měli byste dostávat e-mail s podrobnostmi o stavu pole.

    Nastavte konfiguraci mdadm pro odeslání e-mailu při spuštění
    Zatímco není absolutní nutností, je příjemné občas dostávat aktualizaci od stroje, abychom věděli, že e-mailová schopnost je stále funkční a na podmínkách pole. pravděpodobně nebudete ohromeni e-maily, protože toto nastavení ovlivňuje pouze začínající uživatele (na serverech by nemělo být mnoho).
    Upravte konfigurační soubor mdadm:

    sudo vim / etc / default / mdadm

    Přidat -test parametr na DAEMON_OPTIONS tak, aby to vypadalo takto:

    DAEMON_OPTIONS = "- syslog - test"

    Stroj můžete restartovat jen proto, aby se ujistil, že je "v smyčce", ale není to nutné.

    Samba Configuration

    Instalace programu SaMBa na server Linux umožňuje pracovat jako souborový server systému Windows. Takže abychom získali data, která hostujeme na serveru Linux k dispozici pro klienty Windows, nainstalujeme a nakonfigurujeme SaMBa.
    Je zajímavé poznamenat, že název balíčku SaMBa je hádka pro protokol Microsoftu používaný pro sdílení souborů nazvaný SMB (Service Message Block).

    V této příručce se server používá pro účely testování, a tak umožníme přístup k jeho sdílení bez vyžadující heslo, možná budete chtít kopat trochu víc, jak nastavit oprávnění po dokončení instalace.

    Také se doporučuje vytvořit uživatele bez oprávnění, aby byl vlastníkem souborů. V tomto příkladu používáme uživatele "geek", který jsme pro tento úkol vytvořili. Vysvětlení, jak vytvořit uživatele a spravovat vlastnictví a oprávnění, naleznete v příručce "Vytvoření nového uživatele na Ubuntu Server 9.10" a "Průvodce pro začátečníky k řízení uživatelů a skupin v Linuxu".

    Instalace Samby:

    aptitude install samba

    Upravte konfigurační soubor samby:

    sudo vim /etc/samba/smb.conf

    Přidejte sdílenou položku nazvanou "obecná", která uděluje přístup k bodu připojení "/ media / raid10 / general" připojením níže k souboru.

    [Všeobecné]
    cesta = / media / raid10 / obecně
    force uživatele = geek
    skupina sil = geek
    pouze čtení = Ne
    vytvořit masku = 0777
    adresářová maska ​​= 0777
    pouze host = Ano
    host ok = Ano

    Výše uvedené nastavení činí sdílení adresou bez Heslo pro každého a je výchozím majitelem souborů uživatele "geek".

    Pro váš odkaz byl tento soubor smb.conf převzat z pracovního serveru.

    Restartujte službu samby, aby se ovlivnila nastavení:

    sudo /etc/init.d/samba restart

    Po dokončení můžete použít testparm pro zobrazení nastavení použitého na serveru samba.
    to je ono server by měl být nyní přístupný z libovolné okna pomocí:

    \ server-namegeneral

    Odstraňování problémů

    Když potřebujete vyřešit problém nebo disk selhal v poli, navrhuji odkazovat na mdadm cheat list (to je to, co dělám ...).

    Obecně byste měli mít na paměti, že pokud selže disk, musíte jej "odstranit" z pole, vypnout počítač, nahradit poškozenou jednotku náhradou a poté "přidat" novou jednotku do pole poté, co jste vytvořili příslušný disk rozvržení (oddílů) v případě potřeby.

    Jakmile to bude hotovo, můžete se ujistit, že pole je znovu sestaveno a sledovat postup s:

    sledovat -d cat / proc / mdstat

    Hodně štěstí! :)

    Reference:
    mdadm cheat sheet
    Úrovně RAID se rozkládají
    Linux vysvětlil RAID10
    mdadm manuálová stránka příkazu
    mdadm konfigurační soubor man page
    Byly vysvětleny limity rozdělení


    Použití softwaru RAID nebude stát moc ... Jen váš hlas ;-)