Linux: Ubuntu создаем софтварный raid 5 Сегодня расскажем как в Linux сделать массив RAID-5. Показывать будем на Ubuntu установленной на виртуальной машине VMWare.

[ad#ad-2]
Сначала расскажем почему RAID-5. RAID-5, действительно, самый популярный из уровней – в первую очередь благодаря своей экономичности. Жертвуя ради избыточности емкостью всего одного диска из массива, мы получаем защиту от выхода из строя любого из винчестеров тома. На запись информации на том RAID-5 тратятся дополнительные ресурсы, так как требуются дополнительные вычисления, зато при чтении (по сравнению с отдельным винчестером) имеется выигрыш, потому что потоки данных с нескольких накопителей массива распараллеливаются.
Недостатки RAID-5 проявляются при выходе из строя одного из дисков – весь том переходит в критический режим, все операции записи и чтения сопровождаются дополнительными манипуляциями, резко падает производительность, диски начинают греться. Если срочно не принять меры – можно потерять весь том. Поэтому, (см. выше) с томом RAID5 следует обязательно использовать диск Hot Spare.

Итак создаем RAID-5 на Ubuntu.
В нашем компьютере установлено 4ре диска
Один 20Г и еще 3 по 500Г
мы оставим 20Г под системой а 3 по 50Г объединим в софтварный RAID-5

Для начала установим mdadm

sudo aptitude install mdadm

Потом при помощи fdisk создадим на наших дисках первичные разделы

rroot@desktop:~# fdisk /dev/sdc
Устройство не содержит ни верной таблицы разделов DOS, ни метки диска Sun, SGI или OSF
Building a new DOS disklabel with disk identifier 0x0882f1d2.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.

Количество цилиндров для этого диска установлено в 65270.
С этим все в порядке, но значение больше, чем 1024,
и в отдельных установках могут возникнуть проблемы с:
1) программами, запускаемым при загрузке (напр., старые версии LILO)
2) загрузкой и программами разметки из других ОС
   (напр., DOS FDISK, OS/2 FDISK)
Предупреждение: неверный флаг 0x0000 таблицы разделов 4 будет исправлен записью

Команда (m для справки): n
Действие команды
   e   расширенный
   p   основной раздел (1-4)
p
Номер раздела (1-4): 1
Первый цилиндр (1-65270, по умолчанию 1):
Используется значение по умолчанию 1
Last цилиндр, +цилиндры or +size{K,M,G} (1-65270, по умолчанию 65270):
Используется значение по умолчанию 65270

Команда (m для справки): w
Таблица разделов была изменена!

Вызывается ioctl() для перечитывания таблицы разделов.
Синхронизируются диски.
root@:~# fdisk /dev/sdd


Действие второе: При помощи mdadm создадим устройство нашего RAID-5

root@desktop:~# mdadm --create /dev/md0 --chunk=64 --level=raid5 --raid-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1
mdadm: array /dev/md0 started.

Действие третье: форматируем нашу дисковую систему

root@desktop:~#mkfs.ext3 /dev/md0
mke2fs 1.41.9 (22-Aug-2009)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
65536000 inodes, 262140576 blocks
13107028 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=0
8000 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
	4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968,
	102400000, 214990848

Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 30 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

Монтируем наш массив

mount /storage/ /dev/md0

Проверяем что все хорошо

root@desktop:~# df -k
Файловая система           1K-блоков      Исп  Доступно  Исп% смонтирована на
/dev/sda1             19734388   3318268  15413668  18% /
udev                    254668       252    254416   1% /dev
none                    254668       220    254448   1% /dev/shm
none                    254668        92    254576   1% /var/run
none                    254668         0    254668   0% /var/lock
none                    254668         0    254668   0% /lib/init/rw
/dev/md0             1032109440    204264 979477064   1% /storage

Смотрим детальную информацию по нашему массиву

root@desktop:~# mdadm --detail /dev/md0
/dev/md0:
        Version : 00.90
  Creation Time : Tue Feb  2 20:22:44 2010
     Raid Level : raid5
     Array Size : 1048562304 (999.99 GiB 1073.73 GB)
  Used Dev Size : 524281152 (499.99 GiB 536.86 GB)
   Raid Devices : 3
  Total Devices : 3
Preferred Minor : 0
    Persistence : Superblock is persistent

    Update Time : Tue Feb  2 20:27:42 2010
          State : clean, degraded, recovering
 Active Devices : 2
Working Devices : 3
 Failed Devices : 0
  Spare Devices : 1

         Layout : left-symmetric
     Chunk Size : 64K

 Rebuild Status : 3% complete

           UUID : babb7f34:f0994a2a:29c59303:2f54af85 (local to host ioann-desktop)
         Events : 0.7

    Number   Major   Minor   RaidDevice State
       0       8       17        0      active sync   /dev/sdb1
       1       8       33        1      active sync   /dev/sdc1
       3       8       49        2      spare rebuilding   /dev/sdd1

Создаем запись в /etc/fstabfstab для монтирования массива при загрузке

root@desktop:~# cat >> /etc/fstab
/dev/md0	/storage	ext3	defaults	0	1

Если очень хочется проверить что получилось и все ли работает — перезагружаем Linux.


Similar Posts:

Теги:
 

5 Responses to Linux: Ubuntu создаем софтварный RAID-5

  1. Интересно даже для бухгалтера :) ))))

  2. Фдуч:

    О да! А добавить строчки в mdadm.conf забыли! Linux сам не найдет RAID при перезагрузке.

  3. После сборки архива и форматирования выполняем следующую команду:
    ~# mdadm —detail —scan
    берем из вывода строку, соответствующую нашему массиву и переносим ее в /etc/mdadm/mdadm.conf, если этого не сделать, то после перезагрузки массив не поднимется.

  4. Поправочка:
    ~# mdadm —detail —scan

  5. admin:

    спасибо за поправки!

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>