Pagrindinis » kaip » Kaip įdiegti programinės įrangos RAID paprastam failų serveriui Ubuntu

    Kaip įdiegti programinės įrangos RAID paprastam failų serveriui Ubuntu

    Ar jums reikia pigaus failų serverio, kurį lengva konfigūruoti, patikimas „rock solid“ su el. Pašto įspėjimu? parodys, kaip naudoti Ubuntu, programinę įrangą RAID ir SaMBa.

    Apžvalga

    Nepaisant pastarojo meto, kad viskas būtų perkelta į „visą galingą“ debesį, kartais gali nenorėti, kad jūsų informacija kito asmens serveryje ar tiesiog neįmanoma atsisiųsti duomenų, kuriuos jums reikia iš interneto, pvz., Vaizdo įvedimas ). Taigi, prieš išvalydami vietą savo biudžete saugojimo sprendimui, apsvarstykite konfigūraciją, kuri licencijuoja nemokamai su „Linux“.

    Tuo sakant, pigūs / nemokami nereiškia „atsargumo vėjui“, ir šiuo tikslu pažymėsime, kad reikia žinoti, kokias konfigūracijas reikia įdiegti, be to, naudojant programinę įrangą RAID. didžiausias kainos ir patikimumo santykis.

    Vaizdas iš Filomena Scalise

    Apie programinę įrangą RAID

    Kaip rodo pavadinimas, tai yra RAID (redundanti „nebrangių diskų grupė“) sąranka, kuri atliekama visiškai programinėje įrangoje, o ne naudojant tam skirtą aparatinę kortelę. Pagrindinis tokio dalyko privalumas yra kaina, nes ši speciali kortelė yra papildoma priemoka sistemos pagrindinei konfigūracijai. Pagrindiniai trūkumai iš esmės yra našumas ir tam tikras patikimumas, nes tokia kortelė paprastai būna su savo RAM + CPU, kad atliktų skaičiavimus, reikalingus atleidimo matematikai, duomenų talpyklai, kad padidintų našumą, ir pasirenkamą atsarginę bateriją, kuri išsaugo neįrašytas operacijas talpykloje išjungta galia.

    Su programinės įrangos RAID sąranka galite paaukoti kai kuriuos sistemos procesoriaus našumus, kad sumažintumėte bendrą sistemos kainą, tačiau su šiuolaikiniais procesoriais pridėtinės vertės yra santykinai nereikšmingos (ypač jei jūsų pagrindinis serveris bus „failų serveris“). Kiek tai susiję su disko našumu, yra nuobauda ... tačiau aš niekada nesu susidūriau su kliūtimi nuo disko posistemio iš serverio, kad pastebėčiau, kaip jis yra gilus. „Tom's Hardware“ vadovas „Tomo eina RAID5“ yra senas, bet geras išsamus straipsnis apie temą, kurį aš asmeniškai naudoju kaip nuorodą, tačiau pasiimkite etalonus su druskos grūdais, nes kalbama apie „Windows“ programinės įrangos RAID diegimą (kaip ir visa kita, aš tikiu, kad „Linux“ yra daug geriau: P).

    Būtinos sąlygos

    • Jausmingumas jaunas, tai jau seniai skaitoma.
    • Manoma, kad žinote, kas yra RAID ir kokia ji naudojama.
    • Šis vadovas buvo parašytas naudojant Ubuntu serverį 9.10 x64, todėl daroma prielaida, kad turite Debian'o sistemą, kad galėtumėte dirbti taip pat.
    • Pamatysite, kad aš naudosiu VIM kaip redaktoriaus programą, tai tik todėl, kad esu įpratęs tai ... galite naudoti bet kurį kitą redaktorių, kurį norite.
    • Ubuntu sistema, kurią naudoju rašydamas šį vadovą, buvo įdiegta diske-on-key. Tai leido man naudoti sda1 kaip RAID masyvo dalį, todėl prisitaikykite prie jūsų sąrankos.
    • Priklausomai nuo RAID tipo, kurį norite sukurti, jūsų sistemoje reikės bent dviejų diskų ir šiame vadove naudojame 6 diskus.

    Pasirinkus diskus, kurie sudaro masyvą

    Pirmas žingsnis siekiant išvengti spąstų yra žinojimas apie jo egzistavimą (Thufir Hawat iš Dune).

    Diskų pasirinkimas yra gyvybiškai svarbus žingsnis, kuris neturėtų būti priimtas lengvai, ir jums būtų išmintinga išnaudoti savo tikrąją patirtį ir atkreipti dėmesį į šį įspėjimą:

    Padarykite NE naudokite „vartotojų klasės“ diskus, kad sukurtumėte savo masyvą, naudokite „server grade“ diskus!!!!!!

    Dabar aš žinau, ką tavo mąstymas, ar ne mes sakome, kad eisime pigiai? ir taip, mes tai darėme, tačiau tai yra viena iš vietų, kur tai padaryti yra neapgalvota ir turėtų būti vengiama. Nepaisant patrauklios kainos, vartotojų klasės kietieji diskai nėra skirti naudoti 24/7 „įjungimo“ tipo. Pasitikėk manimi, tavo tikrai išbandėte tai. Ne mažiau kaip keturi vartotojų klasės diskai 3 serveriuose, kuriuos aš tokiu būdu nustatiau (dėl biudžeto apribojimų) nepavyko po maždaug 1,5 ~ 1,8 metų nuo pradinės serverio paleidimo dienos. Nors duomenų praradimo nebuvo, nes RAID atliko darbą gerai ir išgyveno… tokias akimirkas, kaip šis, sutrumpino sysadmino gyvenimo trukmę, jau nekalbant apie įmonės serverio palaikymo laiką (tai gali baigtis kainuoti daugiau nei aukštesnės klasės diskai).

    Kai kurie gali pasakyti, kad nėra skirtumų tarp dviejų tipų nesėkmės. Tai gali būti tiesa, tačiau, nepaisant šių teiginių, serverių klasės diskai vis dar turi aukštesnį SMART apribojimų lygį ir už jų ribų (kaip matyti iš to, kad jie nėra išleisti į rinką, kai tik yra vartotojų diskai), taigi aš vis dar rekomenduojame, kad papildytumėte papildomą $ $ $ už atnaujinimą.

    RAID lygio pasirinkimas.

    Nors nesiruošiu eiti į visas galimas parinktis (tai labai gerai dokumentuota RAID wikipedia įraše), manau, kad verta pažymėti, kad visada turėtumėte pasirinkti bent RAID 6 ar dar didesnę ( mes naudosime Linux RAID10). Taip yra todėl, kad kai diskas nepavyksta, yra didesnė gretimų disko gedimo tikimybė ir tada jūs turite „dviejų diskų“ gedimą rankose. Be to, jei ketinate naudotis dideliais diskais, nes didesnių diskų duomenų tankis plokštelės paviršiuje yra didesnis, nesėkmės tikimybė yra didesnė. IMHO diskai nuo 2T ir daugiau visada priskiriami šiai kategorijai, todėl žinokite.

    Leiskite krekingo

    Skirstymo diskai

    Nors Linux / GNU, mes galime naudoti visą blokavimo įrenginį saugojimo reikmėms, mes naudosime pertvaras, nes tai leidžia lengviau naudoti disko gelbėjimo įrankius, jei sistema išnyko. Čia naudojama „fdisk“ programa, bet jei ketinate naudoti didesnius nei 2T diskus, jums reikės naudoti skaidymo programą, kuri palaiko GPT skaidymą, pvz..

    sudo fdisk / dev / sdb

    Pastaba: Aš pastebėjau, kad galima padaryti masyvą nepakeičiant skaidinio tipo, bet todėl, kad tai apibūdinama visame tinkle, aš seksiu pavyzdžiu (vėl naudojant visą blokų įrenginį, tai nereikalinga).

    Fdisk'e klavišai yra:

    n; naujam skaidiniui
    įveskite
    p; pirminio skaidinio
    įveskite
    1; partijų skaičius
    įeiti; priimti nutylėjimą
    įeiti; priimti nutylėjimą
    t; pakeisti tipą
    fd; nustato tipą „Linux RAID Auto Detection“ (83 val.)
    w; rašyti pakeitimus į diską ir išeiti

    Nuplaukite ir pakartokite visus diskus, kurie bus masyvo dalis.

    Linux RAID10 masyvo kūrimas

    Naudojant „Linux „Raid10“ yra tai, kad žino, kaip pasinaudoti netolygiu diskų skaičiumi, kad padidintų našumą ir atsparumą dar labiau, nei vanilės RAID10, be to, kad naudojant jį „10“ masyvas gali būti sukurtas viename žingsnis.

    Sukurkite masyvą iš diskų, kuriuos parengėme paskutiniame etape, išduodami:

    sudo mdadm --create / dev / md0 --chunk = 256 - lygis = 10 p f2 - baidymo įtaisai = 5 / dev / sda1 / dev / sdb1 / dev / sdc1 / dev / sdd1 / dev / sde1 - -įpurškite

    Pastaba: Visa tai tik viena eilutė, nepaisant to, kad reprezentacija suskirsto į dvi dalis.

    Pertraukime parametrus žemyn:

    • „-Chunk = 256“ - baitų, kurių RAID juostos yra suskaidytos, dydis ir šis dydis rekomenduojamas naujiems / dideliems diskams (2T diskai, naudojami šio vadovo kūrimui, be abejonės, šioje kategorijoje).
    • „- lygis = 10“ - naudoja Linux raid10 (jei reikalingas tradicinis reidas, dėl kokių nors priežasčių turėtumėte sukurti dvi masyvus ir prisijungti prie jų).
    • „-P f2“ - naudoja „toli“ sukimosi planą, žr. Toliau pateiktą pastabą, kad daugiau informacijos, o „2“ - tai, kad masyvas saugo dvi duomenų kopijas.

    Pastaba: Mes naudojame „toli“ planą, nes dėl to diskų fizinis duomenų išdėstymas NĖRA vienodas. Tai padeda įveikti situaciją, kai vieno iš diskų aparatinė įranga nepavyksta dėl gamybos gedimo (ir nemanau, kad tai man nutiks, kaip tikrai jūsų). Atsižvelgiant į tai, kad abu diskai yra vienodos markės ir modelio, buvo naudojami tokiu pačiu būdu ir tradiciškai buvo saugomi duomenys toje pačioje fizinėje vietoje ... Yra pavojus, kad duomenų kopiją turintis diskas nepavyko taip pat arba arti, ir nepateiks reikiamo atsparumo tol, kol nepasiekiamas pakaitinis diskas. „Tolimojo“ plano dėka duomenų kopijavimas į kopijavimo įrenginius yra visiškai kitokioje fizinėje vietoje, o ne diskai, kurie kompiuterio korpuse nėra vienas šalia kito. Daugiau informacijos rasite čia ir žemiau esančiose nuorodose.

    Kai masyvas bus sukurtas, jis pradės sinchronizavimo procesą. Nors galbūt norėsite palaukti tradicijų (nes tai gali užtrukti), galite pradėti naudoti masyvą iš karto.

    Pažanga gali būti stebima naudojant:

    laikrodis -d katė / proc / mdstat

    Sukurkite „mdadm.conf“ konfigūracijos failą

    Nors buvo įrodyta, kad „Ubuntu“ paprasčiausiai žino ir nuskaito masyvą automatiškai paleidimo metu, užpildymo sumetimais ir nuoširdumu dėl kito „sysadmin“ mes sukursime failą. Jūsų sistema automatiškai nesukuria failo ir bando prisiminti visus RAID rinkinio komponentus / skaidinius, tai yra sistemos administratoriaus sąžiningumo juosmens. Ši informacija gali būti ir turėtų būti saugoma faile mdadm.conf. Formatavimas gali būti sudėtingas, bet, laimei, komandos „mdadm -detail-scan -verbose“ išvestis suteikia jums.

    Pastaba: Buvo pasakyta, kad: „Dauguma platinimo programų laukia mdadm.conf failo faile / etc /, o ne / etc / mdadm. Manau, kad tai yra „ubuntu-ism“, kad jį būtų galima naudoti kaip /etc/mdadm/mdadm.conf “. Dėl to, kad mes yra naudodami „Ubuntu“, mes tiesiog eisime su juo.

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

    SVARBU! iš naujai sukurto failo turite pašalinti vieną „0“, nes sintaksė, gauta iš anksčiau pateiktos komandos, nėra visiškai teisinga (GNU / Linux dar nėra OS).

    Jei norite pamatyti problemą, dėl kurios suklysta ši neteisinga konfigūracija, galite išduoti „nuskaityti “ komandą, prieš atliekant koregavimą:

    mdadm --examine - scan

    Norėdami tai išspręsti, redaguokite failą /etc/mdadm/mdadm.conf ir keiskite:

    metaduomenys = 00.90

    Skaityti:

    metaduomenys = 0,90

    Veikia mdadm -examine -scan komanda dabar turėtų grįžti be klaidos.

    Failų sistemos sąranka matricoje

    Šiam pavyzdžiui aš naudoju ext4, nes man tai tik buvo sukurta pagal ext3 failų sistemą, kuri buvo pateikta prieš tai, kai buvo pažadėta geresnių rezultatų ir funkcijos.
    Siūlau laiko, kad išsiaiškintumėte, kokia failų sistema geriau atitinka jūsų poreikius, ir geras pradžia tai yra mūsų „Kokia Linux failų sistema turėtų pasirinkti?“.

    sudo mkfs.ext4 / dev / md0

    Pastaba: Tokiu atveju aš nepadariau gautos masyvo, nes tiesiog to nereikėjo tuo metu, kai prašančioji šalis konkrečiai paprašė bent 3,5T tęstinės erdvės. Tai pasakius, jei norėjau sukurti pertvaras, turėjau naudoti GPT skaidymo funkciją, pvz..

    Montavimas

    Sukurti prijungimo tašką:

    sudo mkdir / media / raid10

    Pastaba: Tai gali būti bet kokia vieta, aukščiau pateikiamas tik pavyzdys.

    Mes susiduriame su „surinktu prietaisu“ ne naudokite failų sistemos UUID, kuris yra montavimo įrenginyje (kaip rekomenduojama kitų tipų įrenginiams „kas yra„ linux fstab “ir kaip tai veikia” vadovas), nes sistema iš tikrųjų gali matyti failų sistemos dalį atskirame diske ir pabandyk neteisingai prijungti jį tiesiai. norėdami tai išspręsti, mes norime aiškiai laukti, kol įrenginys bus „surenkamas“, kol bandysime ją montuoti, ir mes naudosime surinktą masyvo pavadinimą („md“) fstab tai padaryti.
    Redaguokite fstab failą:

    sudo vim / etc / fstab

    Ir pridėkite prie šios eilutės:

    / dev / md0 / media / raid10 / ext4 numatytosios reikšmės 1 2

    Pastaba: Jei iš pavyzdžio pakeisite prijungimo vietą arba failų sistemą, pirmiau turite atitinkamai sureguliuoti aukščiau pateiktą informaciją.

    Naudodami automatinį parametrą (-a), naudokite laikiklį, kad imituotumėte sistemos įkrovą, todėl žinote, kad konfigūracija veikia teisingai ir kad RAID įrenginys bus automatiškai sumontuotas, kai sistema bus paleista iš naujo:

    sudo mount -a

    Dabar turėtumėte matyti masyvą, sumontuotą su „mount“ komanda be parametrų.

    El. Pašto įspėjimai apie RAID struktūrą

    Skirtingai nuo aparatinės įrangos RAID masyvų, su programinės įrangos masyvu nėra valdiklio, kuris pradėtų pyptelėti, kad praneštų, kai kažkas negerai. Todėl el. Pašto įspėjimai bus vienintelis būdas sužinoti, ar kažkas atsitiko su vienu ar keliais diskais masyve, ir taip tapo svarbiausias žingsnis.

    Sekite „Kaip nustatyti el. Pašto įspėjimus„ Linux “naudojant„ Gmail “arba„ SMTP “vadovą ir, kai baigsite, grįžkite čia, kad atliktumėte konkrečius RAID veiksmus.

    Patvirtinkite, kad „mdadm“ gali siųsti el
    Žemiau esanti komanda pasakys mdadm, kad išjungtų tik vieną el. Laišką ir uždarys.

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

    Jei esate sėkmingas, turėtumėte gauti el. Laišką, kuriame išsamiai aprašoma masyvo būklė.

    Nustatykite mdadm konfigūraciją siųsti el
    Nors tai nėra absoliuti būtinybė, malonu gauti kartkartę atnaujinimą iš mašinos, kad galėtume mums pranešti, kad el. greičiausiai jūsų el. laiškai nebus priblokšti, nes šis nustatymas turi įtakos tik pradedantiesiems (kurie serveriuose neturėtų būti daug).
    Redaguokite „mdadm“ konfigūracijos failą:

    sudo vim / etc / default / mdadm

    Pridėti -bandymas parametras DAEMON_OPTIONS kad jis atrodytų:

    DAEMON_OPTIONS = "- syslog --test"

    Jūs galite iš naujo paleisti mašiną tik tam, kad įsitikintumėte, jog jūsų „kilpa“, bet tai nėra būtina.

    „Samba“ konfigūracija

    „SaMBa“ diegimas „Linux“ serveryje leidžia veikti kaip „Windows“ failų serveris. Taigi, norėdami gauti duomenis, kuriuos mes priegloba „Linux“ serveryje pasiekiame „Windows“ klientams, įdiegsime ir sukonfigūruosime „SaMBa“.
    Juokinga pažymėti, kad „SaMBa“ paketo pavadinimas yra „Microsoft“ protokolo, naudojamo failų bendrinimui, vadinamas SMB („Service Message Block“), pavadinimu..

    Šiame vadove serveris naudojamas bandymų tikslams, todėl leisime prieigą prie jo dalies be reikia slaptažodžio, galbūt norėsite šiek tiek iškirpti, kaip įdiegti teises, kai įdiegimas bus baigtas.

    Taip pat rekomenduojama, kad nesate privilegijuotas naudotojas, kuris būtų failų savininkas. Šiame pavyzdyje mes naudojame „geek“ naudotoją, kurį sukūrėme šiai užduočiai. Paaiškinimus, kaip sukurti vartotoją ir valdyti nuosavybę bei teises, rasite mūsų „Naujo vartotojo kūrimas„ Ubuntu serveryje 9.10 “ir„ Pradedančiųjų vadovas naudotojų ir grupių valdymui Linux'e “.

    Įdiekite „Samba“:

    aptitude įdiegti samba

    Redaguokite samba konfigūracijos failą:

    sudo vim /etc/samba/smb.conf

    Pridėkite „bendro“ dalį, kuri suteiks prieigą prie prijungimo taško „/ media / raid10 / general“ pridedant žemiau esantį failą.

    [bendras]
    kelias = / media / raid10 / general
    priversti vartotoją = geek
    jėgos grupė = geek
    skaityti tik = Ne
    sukurti kaukę = 0777
    katalogo kaukė = 0777
    tik svečias = Taip
    svečias ok = Taip

    Aukščiau pateikti nustatymai suteikia galimybę adresuoti be slaptažodžio visiems ir numatytasis „geek“ failų savininkas.

    Jūsų nuoroda, šis smb.conf failas buvo paimtas iš darbo serverio.

    Iš naujo paleiskite „samba“ paslaugą, kad nustatymai būtų taikomi:

    sudo /etc/init.d/samba restart

    Kai baigsite, galite naudoti testparm komandą, kad pamatytumėte samba serverio parametrus.
    tai yra, dabar serveris turėtų būti pasiekiamas iš bet kurio lango langelio naudojant:

    serverio pavadinimas

    Problemų sprendimas

    Kai reikia išspręsti problemą arba diskas nepavyko matricoje, siūlau remtis „mdadm cheat sheet“ (tai, ką aš darau ...).

    Apskritai turėtumėte prisiminti, kad kai diskas nepavyksta, jį reikia „pašalinti“ iš masyvo, išjungti įrenginį, pakeisti nepavykusį diską ir pakeisti „naują“ diską į masyvą po to, kai sukūrėte tinkamą diską jei reikia, išdėstymas (pertvaros).

    Kai tai atliksite, galbūt norėsite įsitikinti, kad masyvas yra atstatomas ir stebi pažangą:

    laikrodis -d katė / proc / mdstat

    Sėkmės! :)

    Nuorodos:
    mdadm cheat sheet
    RAID lygiai suskaidomi
    „Linux RAID10“ paaiškino
    „mdadm“ komandos žmogus puslapis
    mdadm konfigūracijos failo puslapis
    Paaiškintos pasiskirstymo ribos


    Naudojant programinę įrangą RAID nebus daug išlaidų ... Tiesiog jūsų balsas ;-)