Hogyan állítsunk be egy szoftvert RAID egy egyszerű fájlszerverre az Ubuntuban?

Tartalomjegyzék:

Hogyan állítsunk be egy szoftvert RAID egy egyszerű fájlszerverre az Ubuntuban?
Hogyan állítsunk be egy szoftvert RAID egy egyszerű fájlszerverre az Ubuntuban?

Videó: Hogyan állítsunk be egy szoftvert RAID egy egyszerű fájlszerverre az Ubuntuban?

Videó: Hogyan állítsunk be egy szoftvert RAID egy egyszerű fájlszerverre az Ubuntuban?
Videó: when radio doesn't work but you're beatboxer [sfm] - YouTube 2024, Április
Anonim
Szüksége van egy olcsó, könnyen beállítható fájlkiszolgálóra, a "szikla szilárd" megbízható az e-mailes értesítéssel? megmutatja, hogyan kell az Ubuntu, a szoftveres RAID és a SaMBa használatát elérni.
Szüksége van egy olcsó, könnyen beállítható fájlkiszolgálóra, a "szikla szilárd" megbízható az e-mailes értesítéssel? megmutatja, hogyan kell az Ubuntu, a szoftveres RAID és a SaMBa használatát elérni.

Áttekintés

Annak ellenére, hogy a legutóbbi zümmögés mindent átgondolt az "összes hatalmas" felhőre, néha nem szeretné, hogy az Ön információja valaki más szerverén legyen, vagy csak lehetetlen megvalósítani az interneten igényelt adatmennyiségek letöltését (például a képbeállítás ). Tehát mielőtt kiszűri egy helyet a költségkeretében egy tárolási megoldáshoz, fontolja meg a konfigurációt, amely a Linuxon keresztül ingyenes.

Ezzel azt mondják, hogy olcsó / ingyenes megállás nem jelenti a "óvatosságot a szél felé", és ebből a célból észreveszünk pontokat, hogy tisztában legyenek azokkal a konfigurációkkal, amelyeket a szoftveres RAID használatán túl kell maximális ár és megbízhatósági arány.

Kép Filomena Scalise

A szoftver RAID-ről

Amint azt a név is jelzi, ez egy RAID (Redundant Array of Inexpensive Disks) beállítás, amely teljesen szoftverben történik, külön hardverkártya használata helyett. Az ilyen dolog fő előnye a költség, mivel ez a dedikált kártya a rendszer alapkonfigurációjához hozzáadott prémium. A főbb hátrányok alapvetően teljesítményt és megbízhatóságot jelentenek, mivel egy ilyen kártya rendszerint saját RAM + CPU-val rendelkezik ahhoz, hogy végezze el a redundancia matematikához szükséges számításokat, az adatok gyorsítótárazását a nagyobb teljesítmény érdekében és az opcionális tartalék akkumulátort, amely megőrzi a nem kívánt műveleteket a gyorsítótárban a tápellátást a tápellátás esetén helyreállították.

A szoftveres RAID beállítással feláldozhatsz néhány rendszer CPU teljesítményét a teljes rendszerköltség csökkentése érdekében, azonban a mai CPU-kkal a viszonylag elhanyagolható költségek (különösen akkor, ha főleg ezt a szervert "fájlkiszolgálónak" szánjuk). Ami a lemez teljesítményét megy, van egy büntetés … bár a kiszolgálótól még soha nem tapasztalt egy szűk keresztmetszetet a lemez alrendszerből, hogy megértsem, milyen mélyreható. A "Tom's RAID5" című Tom hardver útmutatója egy oldie, de egy örömes kimerítő cikk a tárgyról, amelyet személyesen referenciaként használok, azonban a referenciaértékeket sós lében használják, mivel a Windows RAID szoftverek végrehajtásáról beszélnek minden mást, biztos vagyok benne, hogy a Linux sokkal jobb: P).

Előfeltételek

  • Patience fiatal, ez hosszú olvasmány.
  • Feltételezzük, hogy tudja, mi a RAID és mi használják.
  • Ez az útmutató Ubuntu server9.10 x64-vel készült, ezért feltételezzük, hogy van egy Debian alapú rendszere is, amellyel együtt dolgozhat.
  • Látni fogja, hogy a VIM-t szerkesztő programként használom, csak azért, mert hozzászoktam hozzá … használhat bármely más szerkesztőt, amit szeretne.
  • Az útmutatónak ezt az Ubuntu-rendszert használtam, amelyet lemez-on-kulcsra telepítettem. Ez lehetővé tette számomra, hogy az sda1-t használja a RAID tömb részeként, ezért ennek megfelelően állítsd be a beállításodat.
  • A létrehozni kívánt RAID típusától függően legalább két lemezre van szüksége a rendszerben, és ebben az útmutatóban 6 meghajtót használunk.

A tömböt létrehozó lemezek kiválasztása

Az elsõ lépés a csapda elkerüléséhez az, hogy tudatában van annak létezésének (Thufir Hawat a Dune-bõl).

A lemezek kiválasztása létfontosságú lépés, amelyet nem szabad könnyedén figyelembe venni, és bölcs dolog lenne a valóban tapasztalatának hasznosítására és figyelmeztetni a figyelmeztetést:

csinál NEM használja a "fogyasztói minőségű" meghajtókat a tömb létrehozásához, használja a "szerver minőségű" meghajtókat !!!!!!

Most tudom, mi a gondolatod, nem azt mondtuk, hogy olcsóbb lesz? és igen, de pontosan ez volt az egyik olyan hely, ahol ezt meggondolatlanul meg kell előzni. A vonzó ár ellenére a fogyasztói minőségű merevlemezeket nem úgy tervezték, hogy használják a 24/7 "on" típusú felhasználást. Bízz bennem, a te igazán megpróbáltad neked. Legalább négy fogyasztói osztályú meghajtó a 3 kiszolgálón, amiket ilyen módon beállítottam (a költségvetési megszorítások miatt) kb. 1,5 ~ 1,8 év elteltével sikertelen volt a szerver kezdeti napjától számítva. Bár nem volt adatvesztés, mert a RAID ez volt a feladata jól és túlélte … olyan pillanatokat, mint ez lerövidíti a rendszer várható élettartamát, és nem említi a cégnek a kiszolgáló karbantartásához szükséges időt (ami magasabb költségeket eredményezhet, mint a magasabb kategóriájú meghajtók).

Egyesek azt mondhatják, hogy nincs különbség a két típus közötti hibaarányban. Ez persze igaz lehet, bár ezek az állítások ellenére a kiszolgálószintű meghajtók továbbra is magasabb szintű SMART korlátozásokat és QAing-t tartanak mögötte (amint azt az a tény is észleli, hogy nem kerülnek a piacra, amint a fogyasztók meghajtják), ezért még mindig nagyon ajánlom, hogy a frissítéshez extra $ $ $ -ot szedj ki.

A RAID szint kiválasztása.

Bár nem fogok belevinni a rendelkezésre álló lehetőségekbe (ez nagyon jól dokumentálva van a RAID wikipédia bejegyzésében), úgy érzem, érdemes megemlíteni, hogy legalább a RAID 6-ot vagy még magasabbat kell választania ( fogunk használni Linux RAID10). Ez azért van, mert ha egy lemez meghibásodik, akkor nagyobb a valószínűsége a szomszédos lemezhibának, és akkor kétlemezes hiba van a kezedben.Ráadásul ha nagyobb meghajtókat fog használni, mivel nagyobb lemezek nagyobb adatsűrűséget tartalmaznak a tálca felületén, a hiba esélye magasabb. Az IMHO lemezek a 2T-től és azon túl is mindig ebbe a kategóriába tartoznak, ezért ügyeljen rá.

Ráncoljuk

Particionáló lemezek

Míg a Linux / GNU-ban a teljes blokkeszközt használhatjuk a tárolási igényekhez, akkor partíciókat fogunk használni, mert megkönnyíti a lemezmegmentő eszközök használatát abban az esetben, ha a rendszer elment. Itt használjuk az "fdisk" programot, de ha 2T-nél nagyobb lemezeket fogunk használni, olyan particionáló programot kell használnunk, amely támogatja a GPT partícionálást, mint a partíciót.

sudo fdisk /dev/sdb

jegyzet: Megfigyeltem, hogy lehetséges a tömb megváltoztatása a partíció típusának megváltoztatása nélkül, de mivel ez az egész neten leírt módon zajlik le (újra a teljes blokk eszköz használatakor ez szükségtelen).

Az fdisk-ban egyszer a billentyűleütések:

n; új partícióhoz belép p; az elsődleges partícióhoz belép 1; partíció száma belép; fogadja el az alapértelmezett értéket belép; fogadja el az alapértelmezett értéket t; változtatni a típust fd; beállítja a típus "Linux raid auto detect" (83 óra) w; írja le a lemezt és kilép

Öblítse ki és ismételje meg az összes lemezt, amely a tömb része lesz.

Linux RAID10 tömb létrehozása

Az "Linux raid10 "az, hogy tudja, hogyan tudja kihasználni a nem egyenletes lemezek számát, hogy növelje a teljesítményt és a rugalmasságot még a vanília RAID10-nál, azonfelül, hogy használatakor a" 10 " lépés.

Hozzon létre egy tömböt az előző lépésben elkészített lemezekről a következő kiadással:

sudo mdadm --create /dev/md0 --chunk=256 --level=10 -p f2 --raid-devices=5 /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1 --verbose

jegyzet: Ez csak egy vonal, annak ellenére, hogy a képviselet kettévágja.

Letöröljük a paramétereket:

  • "-Chunk = 256" - A bájtok mérete a raidcsíkok törött, és ez a méret az új / nagy lemezekre ajánlott (a 2T meghajtók ebben a kategóriában kétségtelenül voltak ilyenek).
  • "-Level = 10" - Használja a Linux raid10 (ha hagyományos támadásra van szükség, bármilyen oknál fogva két tömböt kell létrehoznia és csatlakoznia kell hozzájuk).
  • "-P f2" - Használja a "távoli" forgatási tervet, lásd az alábbi megjegyzést további információért, és a "2" azt mondja, hogy a tömb az adatok két példányát megőrzi.

jegyzet: A "messze" tervet használjuk, mert ez a lemezen lévő fizikai adatelrendezést NEM lesz ugyanaz. Ez segít megoldani azt a helyzetet, amikor az egyik meghajtó hardvere hibás a gyártási hiba miatt (és nem hiszem, hogy ez nem fog megtörténni velem), mint a tiétek valóban. Annak a ténynek köszönhetően, hogy a két lemez ugyanarra a gyártmányra és modellre épül, ugyanolyan módon használták, és hagyományosan az adatokat ugyanazon a fizikai helyszínen tartották … A kockázat fennáll, hogy az adat másolatát tartó meghajtó nem sikerült vagy közel van, és nem fogja biztosítani a szükséges rugalmasságot, amíg a csere lemerül. A "messze" terv az adatelosztást egy teljesen más fizikai helyre teszi a másolási meghajtókon, azon lemezek mellett, amelyek nem egymáshoz közel állnak a számítógépes ügyekben. További információ itt és az alábbi linkeken található.

Miután létrejött a tömb, elindítja a szinkronizálási folyamatot. Bár lehet, hogy a hagyományokat várni szeretné (mivel ez eltarthat egy ideig), azonnal elkezdheti a tömb használatát.

Az előrehaladás figyelhető meg:

watch -d cat /proc/mdstat

Hozzon létre egy mdadm.conf konfigurációs fájlt

Bár bebizonyosodott, hogy az Ubuntu egyszerűen tudja automatikusan beolvasni és aktiválni a tömböt az indításkor, a teljesség kedvéért és a következő rendszergazdáknak köszönhetően létrehozzuk a fájlt. A rendszer nem hozza létre automatikusan a fájlt, és megpróbálja megjegyezni a RAID-készlet összes összetevőjét / partícióját, ami a rendszergazda egészségét jelenti. Ez az információ megtalálható és tárolható az mdadm.conf fájlban. A formázás bonyolult lehet, de szerencsére az mdadm -detail -scan -verbose parancs kimenete biztosítja.

jegyzet: Azt mondták, hogy: "A legtöbb elosztás az mdadm.conf fájlt az / etc /, nem / etc / mdadm fájlban várja. Úgy vélem, ez egy "ubuntu-ism", hogy ez /etc/mdadm/mdadm.conf ". Tekintettel arra, hogy mi vannak Ubuntut használva itt fogunk menni.

sudo mdadm --detail --scan --verbose > /etc/mdadm/mdadm.conf

FONTOS! el kell távolítanod egy "0" -ot az újonnan létrehozott fájlból, mert a fenti parancsból származó szintaxis nem teljesen helyes (a GNU / Linux még nem operációs rendszer).

Ha látni szeretné a hibás konfiguráció okozta problémát, kiadhatja a "letapogatás" parancsot, mielőtt elvégezné a beállítást:

mdadm --examine --scan

Ennek leküzdéséhez módosítsa a fájlt /etc/mdadm/mdadm.conf és változik:

metadata=00.90

Olvasni:

metadata=0.90

A mdadm -examine -scan parancs most vissza kell térnie hiba nélkül.

Fájlrendszer telepítése a tömbön

Az ext4-et használtam erre a példára, mert számomra csak az ext3 fájlrendszer ismertségére épült, amely előtte szolgált, miközben ígéretes jobb teljesítményt és szolgáltatásokat biztosított. Azt javaslom, hogy vegye be az időt arra, hogy kivizsgálja, melyik fájlrendszer jobban megfelel az Ön igényeinek és jó kezdet, mert ez a mi "Melyik Linux-fájlrendszer választja?" Című cikket.

sudo mkfs.ext4 /dev/md0

jegyzet: Ebben az esetben nem osztottam meg a kapott tömböt, mert egyszerűen nem volt szükségem rá, mivel a kérelmező fél kifejezetten legalább 3,5 tonna folyamatos helyet kért. Ezzel azt mondtam, hogy partíciókat akartam létrehozni, egy GPT particionáló képességű segédprogramot kellett volna használni, mint a "parted".

Beépítési

Hozzon létre egy csatolási pontot:

sudo mkdir /media/raid10

jegyzet: Ez lehet bármely hely, a fenti csak egy példa.

Mert egy "összeszerelt eszközzel" foglalkozunk nem használja a fájlrendszer UUID-jét, amely a készüléken található (a más típusú eszközökhöz hasonlóan mi a "mi a linux fstab és hogyan működik" útmutató), mivel a rendszer valójában egy adott lemezen lévő fájlrendszer egy részét láthatja megpróbálni tévesen csatlakoztassa közvetlenül. hogy legyőzze ezt, azt szeretnénk kifejezetten megvárni, hogy a készüléket összeszereljük, mielőtt megpróbálnánk felállítani, és az összeszerelt tömb nevét ("md") használjuk fstab ezt elérni. Az fstab fájl szerkesztése:

sudo vim /etc/fstab

És add hozzá ehhez a sorhoz:

/dev/md0 /media/raid10/ ext4 defaults 1 2

jegyzet: Ha a példa helyett módosítja a csatolási helyet vagy a fájlrendszert, akkor a fentieket megfelelően módosítania kell.

Használja az automatikus paramétert (-a) a rendszerindítás szimulálására, így tudni fogja, hogy a konfiguráció megfelelően működik, és hogy a rendszer automatikusan újraindul a RAID eszközre:

sudo mount -a

Most már képesnek kell lennie látni a tömbet a "mount" paranccsal felszerelve paraméter nélkül.

E-mail riasztások a RAID-réteghez

Ellentétben a hardveres RAID tömbökkel, szoftveres tömbökkel nincs olyan vezérlő, amely elkezdi a hangjelzést, hogy tudassa velük, hogy valami hiba történt. Ezért az e-mailes figyelmeztetések az egyetlen módja annak, hogy megtudjuk, történt-e valami a tömbben lévő egy vagy több lemezen, így legfontosabb lépés.

Kövesse a "Hogyan lehet beállítani az e-mailes figyelmeztetéseket Linuxon a Gmail vagy az SMTP használatával" című útmutatót, és ha kész, akkor térjen vissza ide a RAID-specifikus lépések végrehajtásához.

Erősítse meg, hogy az mdadm képes e-mailre Az alábbi parancs meg fogja adni az mdadm-nak, hogy csak egy e-mailt bocsásson ki és zárja be.

sudo mdadm --monitor --scan --test --oneshot

Ha sikeres lesz, kapjon egy e-mailt, amely részletezi a tömb állapotát.

Állítsa be az mdadm konfigurációt, hogy üzembe helyezéskor küldjön e-mailt Bár nem feltétlenül szükséges, érdemes időről időre frissítést kapni a gépről, hogy tudassa velünk, hogy az e-mail képes még mindig működik és a tömb állapotát. az e-mailek valószínűleg nem lesznek túlterheltek, mivel ez a beállítás csak az induló változásokat érinti (amelyek a kiszolgálókon nem sokak lehetnek). Az mdadm konfigurációs fájl szerkesztése:

sudo vim /etc/default/mdadm

Adja hozzá a -teszt paraméter a DAEMON_OPTIONS hogy úgy nézzen ki:

DAEMON_OPTIONS='--syslog --test'

A gépet újraindíthatja csak azért, hogy biztosíthassa "a hurokban", de ez nem feltétlenül szükséges.

Samba konfiguráció

Az SaMBa telepítése egy Linux kiszolgálóra lehetővé teszi, hogy úgy működjön, mint egy Windows fájlszerver. Tehát annak érdekében, hogy az általunk tárolt adatokat a Windows szervereken elérhetővé tesszük, a SaMBa-t telepítjük és konfiguráljuk. Vicces, hogy megjegyezzük, hogy a SaMBa csomagnevének neve az SMB (Service Message Block) nevű fájlmegosztásra használt Microsoft protokoll.

Ebben a kézikönyvben a kiszolgálót tesztelési célokra használják, így lehetővé tesszük a hozzáférést a megosztásához nélkül jelszót igényel, érdemes egy kicsit többet ásni arról, hogyan kell beállítani a jogosultságokat a telepítés befejezése után.

Javasoljuk továbbá, hogy hozzon létre egy nem privilegizált felhasználót a fájlok tulajdonosa számára. Ebben a példában a "geek" felhasználóját használjuk fel erre a feladatra. A felhasználó létrehozásának és a tulajdonjogok és jogosultságok kezelésének magyarázatai megtalálhatók a "Új felhasználó létrehozása Ubuntu Server 9.10-ben" és "Kezdők útmutatója a felhasználók és a csoportok Linuxok kezeléséhez" útmutatóban.

A Samba telepítése:

aptitude install samba

A samba konfigurációs fájl szerkesztése:

sudo vim /etc/samba/smb.conf

Adjon hozzá egy "általános" nevű megosztást, amely hozzáférést biztosít a csatolóponthoz "/ media / raid10 / general" az alábbi fájlhoz csatolva.

[general] path = /media/raid10/general force user = geek force group = geek read only = No create mask = 0777 directory mask = 0777 guest only = Yes guest ok = Yes

A fenti beállítások lehetővé teszik a megosztás címzését nélkül jelszót bárki számára, és a fájlok alapértelmezett tulajdonosává teszi a felhasználó "geek" -jét.

A hivatkozásodért ez az smb.conf fájl egy munkakiszolgálótól származik.

Indítsa újra a samba szolgáltatást a beállításokhoz, hogy hatással legyen:

sudo /etc/init.d/samba restart

Ha elkészült, használhatja a testparm paranccsal megtekintheti a samba kiszolgálóra alkalmazott beállításokat. ez az, a szervernek mostantól elérhetőnek kell lennie minden ablak dobozából a következők használatával:

server-namegeneral

Hibaelhárítás

Ha problémát kell megoldanod, vagy egy lemez hibás a tömbben, azt javaslom, hogy hivatkozz az mdadm cheat lapra (ez az, amit csinálok …).

Általánosságban emlékezzetek arra, hogy amikor egy lemez meghibásodik, el kell távolítania a tömbről, le kell állítania a gépet, cserélnie kell a hibás meghajtót egy csere segítségével, és azután hozzá kell adnia az új meghajtót a tömbhöz, miután létrehozta a megfelelő lemezt elrendezés (partíciók), ha szükséges.

Ha ez megtörtént, érdemes meggyőződnie arról, hogy a tömb újjáépül és figyelemmel kíséri az előrehaladást:

watch -d cat /proc/mdstat

Sok szerencsét!:)

Irodalom: mdadm cheat sheet A RAID szintek lebomlanak Linux RAID10 magyarázta mdadm parancs man oldal mdadm konfigurációs fájl man oldalon A partíciók korlátai magyarázhatók

A szoftver RAID használata nem sok költséggel jár … Csak a VOICE;-)

Ajánlott: