Sprzętowej klasy RAID vs RAID oprogramowania [zamknięty]

16

Chcę zbudować niskiej klasy archiwum RAID 1 o pojemności 6 TB na starym komputerze.

MB: Intel d2500hn 64bit
CPU: Intel Atom D2500
RAM: 4GB DDR3 533 MHz
PSU: Chinese 500W
NO GPU
1x Ethernet 1Gbps
2x SATA2 ports
1x PCI port
4x USB 2.0

Chcę zbudować archiwum RAID1 na Linuksie (myślę, że CentOS 7, wtedy zainstaluję wszystko, czego potrzebuję, myślę, że ownCloud lub coś podobnego), użyję go w mojej domowej sieci lokalnej.

Czy jest lepszy kontroler PCI 10-20 $ RAID czy programowy RAID?

Jeśli nalot na oprogramowanie jest lepszy, co powinienem wybrać w CentOS? Czy lepiej jest umieścić system na zewnętrznym USB i używać 2 dysków na złączach, czy powinienem umieścić system na jednym dysku, a następnie utworzyć RAID?

Gdybym zrobił RAID 5 z 3 dyskami, czy powinienem wybrać sprzętowe złącze RAID PCI, czy po prostu złącze PCI SATA?

Igor Z.
źródło
11
Proszę nie rób R5, to niebezpieczne
Chopper3
1
Czy nie udzielono wcześniej odpowiedzi na to pytanie? Np serverfault.com/questions/214/raid-software-vs-hardware
Tommiie
3
To pytanie o opinie, znajdziesz wielu ludzi rootujących oprogramowanie i wiele osób rootujących sprzęt. Moim zdaniem to zależy. RAID oprogramowania Linux jest dobrze ugruntowany i wielokrotnie sprawdzał się, ale tworzy bardzo lekki narzut (co jest nieistotne, szczególnie w RAID 1). RAID 5 nie powinien być używany, jeśli cenisz swoje dane z powodu URE, patrz youtube.com/watch?v=A2OxG2UjiV4 Ogólna zasada jest taka, że ​​jeśli korzystasz z RAID 1 i masz opcję między tanim sprzętowym RAID a programowym RAID, wybierz oprogramowanie .
Broco,
3
@Tom Te odpowiedzi są około 9-letnie i myślę, że sprawa HW / SW-RAID zmieniła się dość mocno. OP: W twoim przypadku dubluję dyski w oprogramowaniu RAID1 łącznie z instalacją CentOS.
Lenniey,
2
Ludzie zawsze twierdzą, że sprzętowa macierz RAID oszczędza zużycie procesora. Ale użycie procesora wymagane do kopiowania danych jest prawie zerowe. Nie wyobrażam sobie użycia procesora jako problemu w programowej macierzy RAID.
usr

Odpowiedzi:

40

„Sprzętowa” karta RAID za 10–20 $ to nic innego jak nieprzezroczysta, binarna plamka sterownika z uruchomioną tylko bzdurną implementacją RAID. Trzymaj się z dala od tego.

Karta RAID za 200 $ oferuje odpowiednie wsparcie sprzętowe (np. RoC z innym nieprzezroczystym, binarnym blokiem blob, który jest lepszy i nie działa na głównym CPU hosta). Sugeruję trzymać się z dala od tych kart również dlatego, że brak bufora zapisu zwrotnego nie zapewnia żadnej wymiernej korzyści w porównaniu z programową implementacją RAID.

Warto kupić kartę RAID o wartości 300/400 $ z pamięcią podręczną zapisu chronioną przed utratą zasilania, ale nie na małe komputery PC / NAS z procesorami Atom.

Krótko mówiąc: zdecydowanie zalecam korzystanie z oprogramowania RAID dla systemu Linux. Inną opcją do poważnego rozważenia jest dublowana konfiguracja ZFS, ale z procesorem Atom i tylko 4 GB RAM, nie oczekuj wysokiej wydajności.

Aby uzyskać więcej informacji, przeczytaj tutaj

Shodanshok
źródło
Dzięki, użyję mdadm, czy radzisz umieścić system na zewnętrznym usb i dwa dyski używane jako pamięć, czy powinienem zainstalować system, a następnie utworzyć nalot z dodaniem dysku? Dzięki
Igor Z.
@ IgorZ. Nie jest dla mnie jasne, jak chcesz podłączyć dyski. Z twojego postu wydaje się, że masz tylko 2 porty SATA, więc zainstalowałbym system operacyjny na dysku twardym USB lub dysku flash USB (jeśli wybierzesz ścieżkę flash USB, koniecznie kup pendrive o przyzwoitej wydajności zapisu losowego 4k).
shodanshok
RoC? SoC byłby układem na układzie, tj. „Małym komputerem”, ale czym jest RoC?
ilkkachu
POC. Dowód koncepcji?
BaronSamedi1958,
1
RoC oznacza R pomocy O n C biodro. Zasadniczo termin marketingowy określający system osadzony z systemem operacyjnym związanym z RAID z odciążeniem sprzętowym do obliczania parzystości.
shodanshok
11

Idź ZFS. Poważnie. Jest o wiele lepszy w porównaniu ze sprzętową macierzą RAID, a powód jest prosty: wykorzystuje paski o zmiennej wielkości, dzięki czemu tryby parzystości RAID (Z1 i Z2, RAID5 i RAID6) działają na poziomie @ RAID10, a jednocześnie są niezwykle opłacalne. + możesz użyć pamięci podręcznej flash (ZIL, L2ARC itp.) z uruchomionym @ dedykowanym zestawem linii PCIe.

https://storagemojo.com/2006/08/15/zfs-performance-versus-hardware-raid/

W systemie Linux jest ZFS, ZoL.

https://zfsonlinux.org/

BaronSamedi1958
źródło
3
Normalnie zgodziłbym się tutaj całym sercem, ale ma on tylko 4 GB pamięci RAM, więc ZFS może nie działać optymalnie ...
Josh
1
+1. W każdym razie, ZRAID jest znany z niskiego IOPS w porównaniu z tworzeniem kopii lustrzanych i pasków: w zasadzie każdy vdev najwyższego poziomu ma wydajność IOPS pojedynczego dysku. Spójrz tutaj
shodanshok
Kiedy ostatnio szukałem, ZFS wymagał 1 GB pamięci RAM na TB RAID, więc OP nie ma wystarczającej ilości pamięci RAM. Czy to się zmieniło?
Mark
2
Zgoda. ZFS jest najlepszym wyborem dla danych archiwalnych. Wydajność zawsze zależy od rozmiaru paska i wielkości bloków, które zostaną zapisane na dysku, więc obliczenie go jest skomplikowane, ale bardzo łatwo jest zoptymalizować wydajność :) Ponadto ZFS nie został zaprojektowany do wirtualizacji ani intensywnego IO obciążenie pracą.
Strepsils,
1
2 Mark: To dotyczy deduplikacji pojemności.
BaronSamedi1958
3

Oto kolejny argument za oprogramowaniem w tanim systemie.

Rzeczy się psują, wiesz o tym, dlatego używasz RAID, ale kontrolery RAID również się psują, podobnie jak RAM, procesor, zasilacz i wszystko inne, w tym oprogramowanie. W przypadku większości awarii wystarczy wymienić uszkodzony element na ekwiwalent lub lepszy. Zdmuchnij zasilacz o mocy 100 W, weź 150 W i ruszaj. Podobnie z większością komponentów. Jednak w przypadku rajdu sprzętowego istnieją teraz trzy wyjątki od tego schematu: kontroler RAID, dyski twarde i płyta główna (lub inne wcześniejsze, jeśli nie karta rozszerzenia).

Spójrzmy na kartę najazdu. Większość kart rajdowych jest słabo udokumentowana i niekompatybilna. Nie można zastąpić karty przez firmę xyz kartą przez abc, ponieważ przechowują one dane w inny sposób (zakładając, że możesz dowiedzieć się, kto utworzył kartę na początek). Rozwiązaniem tego jest posiadanie zapasowej karty rajdowej, identycznej z produkcyjną.

Dyski twarde nie są tak złe jak karty RAID, ale ponieważ karty RAID mają fizyczne złącza z dyskami, musisz używać zgodnych dysków, a znacznie większe dyski mogą powodować problemy. Przy zamawianiu napędów zamiennych należy zachować szczególną ostrożność.

Płyty główne są zwykle trudniejsze niż dyski, ale mniej niż karty rajdowe. W większości przypadków wystarcza samo sprawdzenie, czy dostępne są kompatybilne automaty, ale naloty rozruchowe mogą nie oznaczać końca problemów. Sposobem na uniknięcie tego problemu są obudowy zewnętrzne, ale nie jest to tanie.

Wszystkie te problemy można rozwiązać, rzucając pieniądze na problem, ale w przypadku taniego systemu nie jest to pożądane. Z drugiej strony, naloty na oprogramowanie są odporne na większość (ale nie do końca) tych problemów, ponieważ mogą korzystać z dowolnego urządzenia blokowego.

Jedyną wadą nalotów programowych na tani system jest bootowanie. O ile wiem, jedynym bootloaderem obsługującym RAID jest grub i obsługuje on RAID 1, co oznacza, że ​​twój / boot musi być przechowywany na RAID 1, co nie jest problemem, dopóki używasz tylko RAID 1 i tylko niewielki problem w większość innych przypadków. Jednak sam grub (w szczególności blok rozruchowy pierwszego etapu) nie może być przechowywany w nalocie. Można to zarządzać, umieszczając zapasową kopię na innych dyskach.

Hildred
źródło
Sposób konfiguracji rozruchowej macierzy RAID 1 polegał na utworzeniu /bootpartycji na każdej i partycji danych na każdej z nich /(zamiast dedykowania całego dysku macierzy). Tak długo, jak utworzysz oddzielną partycję rozruchową na każdym dysku i uruchomisz grub-installna każdym dysku, wszystkie powinny być możliwe do rozruchu , a md powinien mieć możliwość zamontowania zdegradowanej tablicy. Wyobrażam sobie, że działałoby to również ze smakami innymi niż RAID 1.
nstenz
@nstenz, opisałeś moją konfigurację prawie dokładnie. Partycja danych otrzymała raid6 i lvm, a boot dostał raid 1.
hildred
1
  1. Jak powiedzieli inni, sprzętowa macierz RAID nie ma żadnych korzyści i różnych wad. Moje główne powody, dla których wolę programową macierz RAID, to fakt, że jest ona prostsza i bardziej przenośna (a przez to bardziej prawdopodobne, że rzeczywiście uda się ją odzyskać z różnych scenariuszy awarii).

  2. (Również, jak powiedzieli inni) 3-dyskowy RAID 5 to naprawdę zły schemat RAID - to prawie najgorszy ze wszystkich światów, z bardzo niewielką korzyścią. Coś w rodzaju kompromisu między RAID 0 i RAID 1, i nieco lepiej niż którykolwiek z nich, ale to jedyna dobra rzecz do powiedzenia na ten temat. RAID przeszedł na znacznie lepsze schematy, takie jak RAID 6.

  3. Moja rada (sprzęt):

    • Zdobądź 4-portową kartę SATA dla tego gniazda PCI, dzięki czemu uzyskasz sześć całkowitych portów SATA - jeden dla napędu rozruchowego i pięć dla napędów danych. Widzę jeden za ~ 15 USD, reklamowany jako sprzętowy RAID, ale możesz po prostu zignorować te funkcje i użyć go jako zwykłego SATA.

    • Zdobądź mały dysk SSD na dysk rozruchowy. Wiem, że wciąż istnieje przekonanie, że „dyski SSD są zbyt drogie”, ale to już nie jest prawda, i wcale nie jest tak małe - 120 GB to znacznie więcej niż potrzebujesz na ten dysk rozruchowy i możesz go kupić za ~ 25 USD.

    • Opcjonalnym, ale naprawdę miłym dodatkiem (jeśli obudowa komputera ma 3 wnęki na napęd 5,25 "), jest uzyskanie konwertera wnęki napędowej: możesz przekształcić 3 wnęki na napęd 5,25" (optyczny) w 5 wymienialnych na gorąco 3,5 "(HDD) wnęki, więc nie będziesz musiał rozbierać maszyny na części (a nawet wyłączać), aby wymieniać dyski. (Wyszukaj „backplane 5 in 3”).

    • Korzystaj z 5-krotnych dysków twardych o dowolnej wielkości w macierzy RAID 6 (podwójna redundancja, 3-krotne miejsce na dysku).

  4. Moja rada (oprogramowanie): spójrz na OpenMediaVault w poszukiwaniu oprogramowania dla systemu operacyjnego / serwera plików. Jest to „dystrybucja urządzenia” idealna do takiego właśnie zastosowania - oparty na Debianie (właściwie port Linux FreeNAS oparty na BSD) ze wszystkim, co jest wstępnie skonfigurowane dla serwera NAS. To sprawia, że ​​konfigurowanie i zarządzanie programowym RAID (a także LVM, udziałami sieciowymi itp.) Jest naprawdę proste.

dgould
źródło