Hogyan telepítsük a szoftver RAID-t egy egyszerű fájlkiszolgálóra az Ubuntu-on
Szüksége van egy olyan fájlkiszolgálóra, amely könnyen telepíthető, a „rock solid” megbízható az e-mail értesítéssel? megmutatja, hogyan kell az Ubuntu, a RAID és a SaMBa szoftvereket használni.
Áttekintés
Annak ellenére, hogy a legutóbbi zümmögés mindent át tudott vezetni az „összes hatalmas” felhőre, előfordulhat, hogy esetleg nem akarja, hogy az Ön adatai valaki más szerverénél, vagy éppen nem érhetőek el az interneten szükséges adatmennyiségek letöltéséről (pl. ). Tehát, mielőtt eldönthet egy helyet a költségkeretben egy tárolási megoldás számára, fontolja meg egy olyan konfigurációt, amely ingyenes licenccel rendelkezik a Linux rendszerrel.
Ezzel azt mondva, hogy az olcsó / ingyenes lesz, nem jelenti azt, hogy óvatosságot kell hoznunk a szélre, és ebből a célból meg kell jegyeznünk azokat a pontokat, amelyeket tudatában kell lenniük, a konfigurációkat, amelyeket a szoftver RAID használata mellett kell beállítani, hogy elérjük a maximális ár-megbízhatósági arány.
Kép Filomena Scalise
A szoftver RAID-ről
Ahogy a neve is jelzi, ez egy RAID (Redundant Array of Inexpensive Disks) beállítás, amely teljesen a szoftverben történik, a dedikált hardverkártya használata helyett. Egy ilyen dolog fő előnye a költség, mivel ez a dedikált kártya a rendszer alapkonfigurációjának hozzáadott díja. A fő hátrányok alapvetően a teljesítmény és a megbízhatóság, mivel egy ilyen kártya általában saját RAM + CPU-val rendelkezik, hogy elvégezze 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 a gyorsítótárban tárolja a nem írott műveleteket áramellátás esetén visszaállt a teljesítmény.
A szoftveres RAID-beállítással a rendszer CPU-teljesítményének egy részét feláldozza annak érdekében, hogy csökkentsék a teljes rendszerköltséget, azonban a mai CPU-k esetében a rezsi viszonylag elhanyagolható (különösen, ha főleg ezt a kiszolgálót „fájlszervernek” fogja szentelni). Ami a lemez teljesítményét illeti, van egy büntetés ... azonban még soha nem tapasztaltam szűk keresztmetszetet a lemez alrendszerétől a szerverről, hogy megállapítsam, milyen mély. A Tom hardveres útmutatója, a „Tom's RAID5” egy öregember, de egy kimerítő, teljes körű cikk a témáról, amelyet személy szerint referenciaként használok, azonban a referenciaértékeket egy sós szemcsével veszi figyelembe, mivel a szoftver RAID-ről való Windows-implementációról beszél (mint a minden más, biztos vagyok benne, hogy a Linux sokkal jobb: P).
Előfeltételek
- Fiatal türelem, ez egy hosszú olvasat.
- Feltételezzük, hogy tudod, hogy mi a RAID és mit használ.
- Ezt az útmutatót Ubuntu szerverrel 9.10 x64 írta, ezért feltételezzük, hogy Debian-alapú rendszered is működik.
- Látni fogod, hogy a VIM-et használom szerkesztőprogramként, ez csak azért van, mert megszoktam… használhatsz bármilyen más szerkesztőt, amit szeretnél.
- Az Útmutató írásához használt Ubuntu rendszert telepítettem a lemezre. Ezzel lehetővé tette számomra, hogy a RAID tömb részeként használjam az sda1-et, ezért állítsd be a beállítást.
- A létrehozandó RAID típusától függően legalább két lemezre lesz szüksége a rendszeren, és ebben az útmutatóban 6 meghajtót használunk..
A tömböt létrehozó lemezek kiválasztása
A csapda elkerülésének első lépése a létezésének ismerete (Thufir Hawat Dune-tól).
A lemezek kiválasztása létfontosságú lépés, amelyet nem szabad könnyedén megtenni, és bölcs dolog lenne, ha a saját tapasztalatát hasznosítaná, és figyelmeztetné ezt 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 már tudom, mi a gondolkodásod, nem mondtuk, hogy megyünk az olcsó? és igen, de ez pontosan az egyik olyan hely, ahol ez meggondolatlan, és kerülni kell. A kedvező ár ellenére a fogyasztói minőségű merevlemezeket nem úgy tervezték, hogy azokat 24 órás "bekapcsolt" típusú használatra használják. Bízz bennem, a tiéd valóban megpróbálta ezt. Legalább négy fogyasztói fokozatú meghajtó a 3 ilyen szerverben (a költségvetési megszorítások miatt) a szerver kezdeti napjától kb. 1,5 ~ 1,8 év után sikertelen volt. Miközben nem volt adatvesztés, mert a RAID ezt elvégezte jól és túlélte… az ilyen pillanatok lerövidítik a sysadmin várható élettartamát, nem is beszélve a cégnek a szerver karbantartásához szükséges lejárati időről (ami a legmagasabb fokú meghajtóknál többet fizethet).
Egyesek azt mondhatják, hogy a két típus között nincs különbség a sikertelenség arányában. Ez igaz lehet, azonban az említett állítások ellenére a szerver minőségű meghajtók még mindig magasabb szintű SMART-korlátozásokat és QAing-t tartalmaznak mögöttük (amint azt a tény, hogy a fogyasztói meghajtók már nem kerülnek piacra), úgyhogy még mindig nagyon ajánlom, hogy az extra $ $ $ értéket a frissítéshez vegye ki.
A RAID-szint kiválasztása.
Bár nem megyek az összes rendelkezésre álló opcióra (ez nagyon jól dokumentálva van a RAID wikipedia bejegyzésben), úgy érzem, érdemes megjegyezni, hogy mindig legalább RAID 6 vagy annál magasabb értéket kell választania ( fogunk használni Linux RAID10). Ez azért van, mert ha egy lemez meghibásodik, nagyobb a valószínűsége a szomszédos lemezmeghibásodásnak, és akkor van egy „kétlemezes” hiba a kezedben. Továbbá, ha nagy meghajtókat használ, mivel a nagyobb lemezek nagyobb adatsűrűséggel rendelkeznek a tálca felületén, akkor a hiba meghaladja az esélyt. Az IMHO lemezek 2T és azon túl is mindig ebbe a kategóriába tartoznak, ezért ügyeljen rá.
Szerezzünk repedést
Partíciós lemezek
A Linux / GNU-ban a teljes blokkkészüléket tárolási igényekhez tudtuk használni, partíciókat fogunk használni, mert megkönnyíti a lemezmentő eszközök használatát abban az esetben, ha a rendszer kimerült. Itt használjuk az „fdisk” programot, de ha a 2T-nél nagyobb lemezeket fogsz használni, akkor olyan partíciós programot kell használnod, amely támogatja a GPT partíciókat, mint a parted.
sudo fdisk / dev / sdb
jegyzet: Megfigyeltem, hogy a partíció típusának megváltoztatása nélkül lehetséges a tömb megalkotása, de azért, mert ez az egész a neten keresztül leírtak szerint követem (ismét, amikor a teljes blokkeszközt használom, ez szükségtelen).
Fdisk-ben a billentyűleütések:
n; új partícióhoz
belép
p; egy elsődleges partícióhoz
belép
1; partíció száma
belép ; elfogadja az alapértelmezett értéket
belép ; fogadja el az alapértelmezett értéket
t; a típus megváltoztatásához
fd; beállítja, hogy milyen típusú legyen a „Linux raid auto detection” (83h)
w; írjon változtatásokat lemezre és kilép
Öblítse le és ismételje meg az összes lemezt, amely a tömb része lesz.
Linux RAID10 tömb létrehozása
A használat előnye:Linux A raid10 ”az, hogy tudja, hogyan kell kihasználni a nem páros számú lemezt a teljesítmény és a rugalmasság növelése érdekében, még a vaníliás RAID10-nél is, azzal a ténnyel, hogy a„ 10 ”-es tömböt egyetlen alkalmazásban lehet létrehozni lépés.
Hozzon létre egy tömböt az utolsó lépésben készített lemezekről azáltal, hogy:
sudo mdadm --create / dev / md0 --chunk = 256 - szint = 10 p f2 - fél-eszközök = 5 / dev / sda1 / dev / sdb1 / dev / sdc1 / dev / sdd1 / dev / sde1 - -bőbeszédű
jegyzet: Ez mindössze egy sor, annak ellenére, hogy a reprezentáció kettévágik.
Törjük le a paramétereket:
- „-Chunk = 256” - A rejtett csíkok bájtjainak mérete, és ez a méret új / nagy lemezekre ajánlott (az útmutató használatához használt 2T meghajtók kétségtelenül ebben a kategóriában voltak).
- „-Szint = 10” - használja a Linux raid10 (ha szükség van egy hagyományos raidra, bármilyen okból, két tömböt kell létrehoznia és csatlakoznia kell hozzájuk).
- „P f2” - A „messze” forgási tervet lásd az alábbi megjegyzésekben, ahol további információ található, és a „2” azt mondja, hogy a tömb két adatmásolatot fog tartani.
jegyzet: A „messzire” tervet használjuk, mert ez a lemezek fizikai elrendezését NEM okozza. Ez segít leküzdeni azt a helyzetet, amikor az egyik meghajtó hardvere meghibásodik a gyártási hiba miatt (és nem hiszem, hogy „ez nem fog történni velem”, mint igazán). Tekintettel arra, hogy a két lemez azonos gyártmányú és modellt tartalmaz, ugyanolyan módon használták, és hagyományosan ugyanazon a fizikai helyen tárolták az adatokat… Fennáll annak a veszélye, hogy az adatok másolatát tároló meghajtó nem sikerült vagy a közelben van, és nem biztosítja a szükséges rugalmasságot mindaddig, amíg egy csere-lemezt nem ér. A „messzire” terv az adatok terjesztését teljesen más fizikai helyre teszi a másoló meghajtókon, a lemezek mellett, amelyek nem közel vannak egymáshoz a számítógépházban. További információk itt és az alábbi linkeken találhatók.
A tömb létrehozása után elkezdi a szinkronizálási folyamatot. Bár érdemes várni a hagyományok kedvéért (mivel ez eltarthat egy ideig), azonnal elkezdheti használni a tömböt.
Az előrehaladás a következőképpen figyelhető meg:
watch -d macska / proc / mdstat
Hozza létre az mdadm.conf konfigurációs fájlt
Bár bebizonyosodott, hogy az Ubuntu egyszerűen elkezdi a szkennelést, és automatikusan elindítja a tömböt, a teljesség kedvéért és a következő sysadmin jóvoltából létrehozjuk a fájlt. A rendszer nem hozza létre automatikusan a fájlt, és megpróbálja emlékezni az összes RAID-készlet összetevőjére / partíciójára, a rendszer adminisztrátorának derekára. Ez az információ az mdadm.conf fájlban tárolható. A formázás bonyolult lehet, de szerencsére az mdadm -detail -scan -verbose parancs kimenete megadja azt.
jegyzet: Azt mondták, hogy: „A legtöbb disztribúció az / etc /, az / etc / mdadm fájlban várja az mdadm.conf fájlt. Úgy vélem, ez egy „ubuntu-ismernek”, hogy az /etc/mdadm/mdadm.conf legyen. Tekintettel arra, hogy mi vannak az Ubuntu használatával itt fogunk menni.
sudo mdadm --detail --scan --verbose> /etc/mdadm/mdadm.conf
FONTOS! el kell távolítania egy „0” -t az újonnan létrehozott fájlból, mert a fenti parancsból eredő szintaxis nem teljesen helyes (a GNU / Linux még nem OS).
Ha azt szeretné látni, hogy ez a hibás konfigurációs ok okozza, akkor a „letapogatás" parancsot a beállítás előtt:
mdadm --examine --scan
Ennek megoldásához szerkessze a fájlt /etc/mdadm/mdadm.conf és változás:
metaadatok = 00,90
Olvasni:
metaadatok = 0,90
A mdadm -examine -scan a parancsnak hiba nélkül kell visszatérnie.
Fájlrendszer beállítása a tömbön
Erre a példára ext4-et használtam, mert számomra építettem az előtte levő ext3 fájlrendszer ismeretére, miközben ígért jobb teljesítményt és funkciókat biztosítottam.
Azt javaslom, hogy vizsgáljam meg, hogy a fájlrendszer jobban megfelel-e az Ön igényeinek, és jó kezdet az, hogy melyik Linux fájlrendszert választja?.
sudo mkfs.ext4 / dev / md0
jegyzet: Ebben az esetben nem szétválasztottam a kapott tömböt, mert egyszerűen nem volt rá szükségem, mivel a megkereső fél kifejezetten legalább 3.5T folyamatos helyet kért. Ezzel azt mondva, hogy partíciókat akarok létrehozni, egy olyan GPT partíciós segédprogramot kellett volna használnom, mint a "parted".
Beépítési
A csatolási pont létrehozása:
sudo mkdir / media / raid10
jegyzet: Ez lehet bármilyen hely, a fenti csak egy példa.
Mert egy „összeszerelt eszközzel” foglalkozunk nem használja a telepítendő eszközön lévő fájlrendszer UUID-jét (ahogy azt a „mi a linux fstab és hogyan működik” útmutató más típusú eszközökhöz ajánlott), mivel a rendszer ténylegesen láthatja a fájlrendszer egy részét egy adott lemezen és megpróbálni tévesen csatlakoztassa közvetlenül. ennek leküzdése érdekében kifejezetten várni kell, hogy az eszköz „összeszerelésre kerüljön”, mielőtt megpróbáljuk felszerelni, és az összeszerelt tömb nevét („md”) fogjuk használni fstab ennek eléréséhez.
Az fstab fájl szerkesztése:
sudo vim / etc / fstab
És add hozzá ezt a sort:
/ dev / md0 / media / raid10 / ext4 alapértelmezések 1 2
jegyzet: Ha a példából a csatolási helyet vagy a fájlrendszert módosítja, a fentieket ennek megfelelően módosítania kell.
A rendszerindítás szimulálásához használja az automatikus (-a) paraméterrel a mount-ot, így tudja, hogy a konfiguráció megfelelően működik, és hogy a RAID-eszköz automatikusan a rendszer újraindításakor lesz csatlakoztatva:
sudo mount -a
Most már képesnek kell lennie látni a „mount” paranccsal szerelt tömböt paraméter nélkül.
E-mail figyelmeztetések a RAID-archívumhoz
A hardveres RAID tömbökkel ellentétben, egy szoftver tömbben nincs olyan vezérlő, amely elkezdne hangjelzést adni, ha tudni akarja, ha valami rossz volt. Ezért az e-mail értesítések az egyetlen módja annak, hogy megtudjuk, hogy történt-e valami, ami egy vagy több lemezzel történt volna a tömbben, és ezáltal az legfontosabb lépés.
Kövesse az „E-mail figyelmeztetések telepítése Linuxon a Gmail vagy az SMTP használatával” útmutatót, és ha készen áll, térjen vissza ide a RAID-specifikus lépések végrehajtásához.
Ellenőrizze, hogy az mdadm képes-e e-mailt küldeni
Az alábbi parancs megmondja az mdadmnak, hogy csak egy e-mailt küldjön le és zárja be.
sudo mdadm --monitor --scan --test --oneshot
Ha sikeres, akkor kapjon egy e-mailt, amely részletezi a tömb állapotát.
Állítsa be az mdadm konfigurációt az e-mail küldéséhez indításkor
Jóllehet nem feltétlenül szükséges, időről időre frissítést kap a gépről, hogy tudassa velünk, hogy az e-mail képesség még mindig működik és a tömb állapota. az e-mailek valószínűleg nem fogják túlterhelni, mivel ez a beállítás csak az indulóra vonatkozik (ami nem lehet sok szerveren).
Az mdadm konfigurációs fájl szerkesztése:
sudo vim / etc / default / mdadm
Adja hozzá a -teszt paramétert a DAEMON_OPTIONS úgy néz ki, mintha:
DAEMON_OPTIONS = "- syslog --test"
Lehet, hogy újraindítja a gépet, hogy megbizonyosodjon róla, hogy „a hurokban” van, de nem feltétlenül szükséges.
Samba konfiguráció
A SaMBa telepítése Linux kiszolgálóra lehetővé teszi, hogy úgy működjön, mint egy Windows fájlszerver. Tehát a Windows-ügyfelek számára elérhető Linux-kiszolgálón tárolt adatok megszerzése érdekében telepítjük és konfiguráljuk a SaMBa-t.
Vicces megjegyezni, hogy a SaMBa csomag neve a Microsoft által a SMB (Service Message Block) nevű fájlmegosztáshoz használt protokollon található..
Ebben az útmutatóban a kiszolgálót tesztelési célokra használják, így hozzáférést biztosítunk a megosztáshoz nélkül jelszót igényel, érdemes egy kicsit jobban ásni az engedélyek beállítását, ha a telepítés befejeződött.
Azt is javasoljuk, hogy hozzon létre egy kiváltság nélküli felhasználót, hogy a fájlok tulajdonosa legyen. Ebben a példában a „geek” felhasználót használjuk 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 az Ubuntu kiszolgálón 9.10” és a „Kezdők útmutatója a felhasználók és csoportok kezeléséhez Linuxon” útmutatókban..
A Samba telepítése:
aptitude telepítése samba
A samba konfigurációs fájl szerkesztése:
sudo vim /etc/samba/smb.conf
Adjon hozzá egy „általános” megnevezést, amely hozzáférést biztosít a „/ media / raid10 / general” csatlakozási ponthoz az alábbi fájl hozzáadásával.
[Tábornok]
elérési út = / media / raid10 / general
kényszerítse a felhasználót = geek
erőcsoport = geek
csak olvasható = Nem
hozzon létre maszkot = 0777
címtármaszk = 0777
csak vendég = Igen
guest ok = Igen
A fenti beállítások a cím címezhetővé teszik nélkül jelszót bárkinek, és az alapértelmezett tulajdonosa a „geek” felhasználónak.
Hivatkozásként ezt az smb.conf fájlt egy működő kiszolgálóról vettük.
Indítsa újra a samba szolgáltatást, hogy a beállítások befolyásolják:
sudo /etc/init.d/samba újraindítás
Ha elkészült, használhatja a testparm parancsot a samba szerverre vonatkozó beállítások megtekintéséhez.
ez az, hogy a kiszolgálónak most elérhetőnek kell lennie bármely ablakból a következő használatával:
\ Server-namegeneral
Hibaelhárítás
Ha problémát kell elhárítania, vagy egy lemez meghibásodott egy tömbben, azt javaslom, hogy az mdadm cheat sheet-re utaljak (ez az, amit csinálok…).
Általában emlékeznünk kell arra, hogy ha egy lemez meghibásodik, akkor el kell távolítanod azt a tömbről, le kell állítanod a gépet, helyettesítenie kell a hibás meghajtót egy cserével, majd a megfelelő lemez létrehozása után hozzá kell adnia az új meghajtót szükség esetén elrendezés (partíciók).
Ha ez megtörtént, érdemes meggyőződni arról, hogy a tömb újjáépíti és nézze meg az előrehaladást:
watch -d macska / proc / mdstat
Sok szerencsét! :)
Irodalom:
mdadm cheat sheet
A RAID-szintek megszakadnak
A Linux RAID10 magyarázata
mdadm parancs man oldal
mdadm konfigurációs fájl man oldal
A partíciós korlátok magyarázata
A szoftver RAID használata nem fog sokat fizetni… Csak a VOICE ;-)