Witam.
Chciałbym zainstalować Debiana 6 na programowym RAID-zie. Wcześniej korzystałem z tzw. fakeraid na Debianie 5, z którym są podobno problemy w najnowszej wersji z powodu GRUB-a2. Zacznę od tego, że w internecie widziałem ogromną ilość stron zachwalających programowy RAID na Linuksie, a tymczasem ciężko znaleźć pełne informacje w jednym poradniku.
Zacznę chyba od pytania podstawowego: czy RAID, który można konfigurować z poziomu instalacji Debiana to mdadm?
Czy tak skonfigurowany RAID działa od razu, czy trzeba go aktywować jeszcze w systemie?
Czy są jakieś przeszkody, żeby najpierw zainstalować system, a dopiero potem spiąć go w RAID?
Paradoksalnie do programu mdadm jest bardzo dobra dokumentacja, ale instalator systemu, który ma graficzny interfejs i powinien być pomocny nie ułatwia sprawy, bo nie jest dobrze opisany. Tymczasem trzeba wpisywać długie linie poleceń w konsoli. 
Posiadam 4 dyski twarde 1TB i chciałbym spiąć je w RAID 10. Podczas instalacji pojawiły się jednak problemy. Na każdym z dysków utworzyłem dwie partycje: 8GB na partycję wymiany i reszta na cały system. Następnie dwukrotnie (osobno dla partycji wymiany i dla całego systemu) wybrałem opcję ustawiania RAID10 na odpowiednich partycjach. Wpisałem, że każdy "md" ma składać się z dwóch aktywnych dysków, połączonych w celu zwiększenia pojemności i z dwóch dysków zapasowych (lustrzanych). Niestety po tych operacjach oba RAID-y przedstawiły się z "pojedynczą" pojemnością (tzn. 1TB zamiast 2TB i 8GB zamiast 16GB) - czy powinienem wpisać inne parametry (ilości dysków) podczas konfiguracji?
Na koniec zostawiłem jeszcze jedną kwestię, o które doczytałem dopiero później. Podobno pomimo tego, że RAID10 jest wspierany z poziomu instalatora Debiana, GRUB nawet w wersji 2 ma problemy z poprawnym ładowaniem systemu - czy to prawda? Na wielu stronach zaleca się stosowanie RAID1 dla osobnej, bardzo małej partycji /boot, zatem, czy RAID1 można ustawić też na 4 partycjach?
Bardzo proszę o jakiekolwiek odpowiedzi, nawet na pojedyncze moje pytania.
Pomocne strony, z których korzystałem:
http://kromey.us/2009/08/raid-10-with-mdadm-65.html
http://techblog.tgharold.com/2006/08/cr ... dadm.shtml
http://www.unrest.ca/configuring-mdadm- ... ubuntu-910
http://www.linuxplanet.com/linuxplanet/ ... ls/6518/1/
https://wiki.archlinux.org/index.php/In ... AID_or_LVM
https://wiki.archlinux.org/index.php/Co ... em_to_RAID
http://www.howtoforge.com/install-ubunt ... re-raid-10
			
			
									
						
										
						Programowy RAID10 na Debianie6
Co innego LVM a co innego fake raid udostępniany przez bios płyty głównej.
Wielokrotnie instalowałem system na fake raid gdzie pospinane były dyski nie zaś partycje (LVM).
Jest problem błędnej konfiguracji z poziomu instalatora który to mimo uruchomienia z opcja dmraid=true nie potrafi zainstalować gruba w MBR.
Można to naprawić po instalacji systemu dzięki live cd i chroot.
			
			
									
						
										
						Wielokrotnie instalowałem system na fake raid gdzie pospinane były dyski nie zaś partycje (LVM).
Jest problem błędnej konfiguracji z poziomu instalatora który to mimo uruchomienia z opcja dmraid=true nie potrafi zainstalować gruba w MBR.
Można to naprawić po instalacji systemu dzięki live cd i chroot.
Czy to wersja mdadm - v3.2.3 - 23rd December 2011 lub nowsza?
Jeżeli tak to zmienione zostało podejście do blkid we wszystkich rodzajach macierzy.
da nam dla raid0:
O  ile partycjonowałeś dyski pojedynczo z wymuszeniem UUID (opcja -U)  przydziel także na urządzenie md12x- już blokowe w nowych wersjach mdadm niezależną sygnaturkę UUID.
Blkid powinno pokazywać coś takiego:
Dyski, stają się elementami całości i można dzielić na partycje cały raid, ale jeżeli  niezależnie wcześniej partycję miały pojedyncze dyski, może w niektórych  układach, na pewno raid0 nie uruchomić się ot choćby, jeżeli wykonamy:
Otrzymamy prawidłowy podział partycji w macierzy:
Teraz niedogodności z ładowaniem systemu.
Mój plik /etc/fstab wygląda tak
Włączał mi się:
czyli BusyBox
Poradziłem sobie z konfliktem miedzy blkid, opóźnionym mapowaniem gruba i mdadm tak.
Dodałem plik do /etc/initramfs-tools/scripts/init-top.
Plik o nazwie powiedzmy wesmar-raid i zawartości
Operacje odłączania raid, o ile sobie przypomnę mniej więcej robiłem w takiej kolejności
Przy  zakładaniu musisz zobaczyć różnicę w poleceniach, ta pierwsza jest zrozumiała, ale opcja ,,-A'' nie jest zdaje się opisana, a działała u mnie i nie była samą "assemble"
Gruba możesz już zrobić za pomocą dystrybucji livecd sysrescd.
Oto moje dane:
A to część ważniejsza grub.cfg od gruba-pc
Uwaga - nie mam wpisów w grub.cfg jak dawniej:
Są zbędne.
Porównując wyniki z windowsowym raidem i sterownikiem 10.8.0.1003 najnowszym gdy to piszę, Linux jest wydajniejszy o 2,4 %, zaś we wcześniejszych mdadm nieco słabiej, o jakieś 7%.
Jeżeli będą kłopoty nietypowe z raidem, mogę pomóc zdalnie przez tunelowanie się na mój serwer w przypadku braku możliwości uzyskania otwartego na zewnątrz portu. Wystarczy w zasadzie jakaś dystrybucja livecd uruchomiona z pendrive (np. rescuecd).
			
			
									
						
										
						Jeżeli tak to zmienione zostało podejście do blkid we wszystkich rodzajach macierzy.
Kod: Zaznacz cały
cat /proc/mdstatKod: Zaznacz cały
md126 : active raid0 sda[1] sdb[0]
      1953519616 blocks super external:/md127/0 128k chunks
md127 : inactive sdb[1](S) sda[0](S)
      5288 blocks super external:imsmBlkid powinno pokazywać coś takiego:
Kod: Zaznacz cały
root@server:~# blkid
/dev/sda: TYPE="isw_raid_member"
/dev/sdb: TYPE="isw_raid_member"
/dev/md126p1: LABEL="/" UUID="aec96098-fab1-442a-a763-6efac3c521b0" TYPE="ext4"
/dev/md126p2: LABEL="data" UUID="959c1b33-6c05-43c2-8ea0-a121e638be3e" TYPE="ext4"
/dev/md126p3: UUID="8af7bc20-ae6b-46fd-b5fe-1a5b978a44f1" TYPE="swap"
Kod: Zaznacz cały
cfdisk /dev/md126Kod: Zaznacz cały
                           cfdisk (util-linux 2.20.1)
                            Urządzenie: /dev/md126
                   Rozmiar: 2000404086784 bajtów, 2000.4 GB
         Głowic: 255   Sektorów na ścieżce: 63   Cylindrów: 243201
    Nazwa       Flagi      Typ partycjSystem plików    [Etykieta]     Rozmiar (M
B------------------------------------------------------------------------------
                            Gł/Log    Wolne miejsce                        1,05*
    md126p1     Rozruch     Główna    ext4            [/]            80015,79*
    md126p2                 Główna    ext4             [data]        1919338,68*
    md126p3                 Główna    swap                              1048,58*
mdadm --detail /dev/md126 powinno nam pokazać coś takiego:
/dev/md126:
      Container : /dev/md/imsm0, member 0
     Raid Level : raid0
     Array Size : 1953519616 (1863.02 GiB 2000.40 GB)
   Raid Devices : 2
  Total Devices : 2
          State : clean
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0
     Chunk Size : 128K
           UUID : d040870b:bcaa8577:118fcc03:45d036ce
    Number   Major   Minor   RaidDevice State
       1       8        0        0      active sync   /dev/sda
       0       8       16        1      active sync   /dev/sdb
Mój plik /etc/fstab wygląda tak
Kod: Zaznacz cały
UUID="aec96098-fab1-442a-a763-6efac3c521b0" /               ext4    errors=remount-ro 0       1
UUID="959c1b33-6c05-43c2-8ea0-a121e638be3e" /media/data     ext4    defaults,noatime  0       2
UUID="8af7bc20-ae6b-46fd-b5fe-1a5b978a44f1" none            swap    sw              0       0
//10.21.16.120/Volume_1 /media/dns cifs rw,username=guest  0        0
Kod: Zaznacz cały
Built - in shellPoradziłem sobie z konfliktem miedzy blkid, opóźnionym mapowaniem gruba i mdadm tak.
Dodałem plik do /etc/initramfs-tools/scripts/init-top.
Plik o nazwie powiedzmy wesmar-raid i zawartości
Kod: Zaznacz cały
#!/bin/sh
sleep 2
mdadm --assemble --scan
sleep 2
Kod: Zaznacz cały
service mdadm stop
mdadm --remove /dev/md126
mdadm --stop /dev/md126
i potem zawsze sprawdzanie:
mdadm --detail /dev/md126Kod: Zaznacz cały
mdadm --examine --scan >> /etc/mdadm/mdadm.conf
mdadm -A --scan
mdadm --assemble --scanOto moje dane:
Kod: Zaznacz cały
root@server:/boot/grub# cat device.map
(hd0)   /dev/disk/by-id/ata-ST1000DM003-9YN162_W1D01ACA
(hd1)   /dev/disk/by-id/ata-ST1000DM003-9YN162_W1D01ARY
Kod: Zaznacz cały
linux   /boot/vmlinuz-3.2.16-999-optimus root=/dev/md126p1 ro   quiet splash $vt_handoff
initrd  /boot/initrd.img-3.2.16-999-optimus
Kod: Zaznacz cały
insmod part_msdos
insmod ext2
insmod mdraid
itd.Porównując wyniki z windowsowym raidem i sterownikiem 10.8.0.1003 najnowszym gdy to piszę, Linux jest wydajniejszy o 2,4 %, zaś we wcześniejszych mdadm nieco słabiej, o jakieś 7%.
Jeżeli będą kłopoty nietypowe z raidem, mogę pomóc zdalnie przez tunelowanie się na mój serwer w przypadku braku możliwości uzyskania otwartego na zewnątrz portu. Wystarczy w zasadzie jakaś dystrybucja livecd uruchomiona z pendrive (np. rescuecd).