mdadm - помощна програма за работа със софтуер RAID-масиви на Linux. В статията ще разгледаме как да работите с помощната програма mdadm (множество дискове администратор) за създаване на масив, добавяне на дискове, управление на дискове, добавяне на гореща резервна и много по-полезна информация.
Съдържание:
- Инсталирайте софтуерна програма за управление на RAID - mdadm
- Създаване на RAID от 2 диска
- Създаване на файлова система на RAID, монтиране
- Преглед на състоянието, проверете целостта на RAID масива
- Възстановяване на RAID при неуспех, подмяна на диска
- Добавяне и премахване на дискове в RAID масив на Linux
- Добавяне на Hot-Spare диск към RAID масив
- Изтриване на масив
- Mdmonitor: Мониторинг на RAID състоянието и имейл сигналите
- RAID масивът е неактивен
Инсталирайте софтуерна програма за управление на RAID - mdadm
За да инсталирате помощната програма mdadm, изпълнете командата за инсталиране:
- За Centos / Red Hat се използва yum / dnf:
yum инсталирате mdadm
- За Ubuntu / Debian:
apt-get инсталирайте mdadm
В резултат на това на системата ще бъде инсталирана помощната програма mdadm и необходимите библиотеки:
Текуща транзакция Инсталиране: libreport-file system-2.1.11-43.el7.centos.x86_64 1/2 Инсталиране: mdadm-4.1-1.el7.x86_64 2/2 Проверка: mdadm-4.1-1.el7.x86_64 1/2 Проверка: libreport-file system-2.1.11-43.el7.centos.x86_64 2/2 Инсталиран: mdadm.x86_64 0: 4.1-1.el7 Инсталирана зависимост: libreport-filesystem.x86_64 0: 2.1.11-43.el7. centos Complete!
Създаване на RAID от 2 диска
Имам два допълнителни диска, инсталирани на сървъра и искам да понижа софтуерно огледало (RAID1). Дисковете са празни, данните не са им писани. За да започнете, трябва да нулирате всички суперблокове на дисковете, които ще добавим към масива RAID:
# mdadm --zero-superblock --force / dev / vd b, c
Имам два има два празни диска VDB и VDC.
mdadm: Неразпознато md компонентно устройство - / dev / vdb mdadm: Неразпознато md компонентно устройство - / dev / vdc
Този списък означава, че никой от дисковете не е добавен към масива преди..
За сглобяване на софтуера RAID1 от два диска в устройството / dev / md0, използвайте командата:
# mdadm --create --verbose / dev / md0 -l 1 -n 2 / dev / vd b, c
Къде "-l 1„Тип масив, в нашия случай RAID1
A "-n 2„Броят на дисковете, добавени към масива.
Ако трябва да създадете RAID0 в лентов режим, за да увеличите скоростта на четене / запис на данни чрез паралелизиране на команди между няколко физически диска, използвайте командата:# mdadm --create --verbose / dev / md0 --level = 0 --raid-devices = 2 / dev / vdb / dev / vdc
RAID 5 от три или повече дискове:
# mdadm --create --verbose / dev / md0 --level = 5 --raid-устройства = 3 / dev / vdb / dev / vdc / dev / vdd
След като изпълните командата, трябва да потвърдите действията и масивът ще бъде създаден:
Сега, когато преглеждаме информацията за диска, виждаме нашия масив:
# lsblk
ИМЕ МАЙ: МИН RM РАЗМЕР RO TYPE MOUNTPOINT vda 253: 0 0 20G 0 диск ├─vda1 253: 1 0 512M 0 част / зареждане └─vda2 253: 2 0 19.5G 0 част / vdb 253: 16 0 20G 0 диск └ ─md0 9: 0 0 20G 0 raid1 vdc 253: 32 0 20G 0 диск └─md0 9: 0 0 20G 0 raid1
Създаване на файлова система на RAID, монтиране
За да създадете файлова система ext4 в нашия масив от два диска RAID1, използвайте командата:
# mkfs.ext4 / dev / md0
Създайте резервната директория и монтирайте RAID устройството върху нея:
# mkdir / архивиране
# mount / dev / md0 / архивиране /
# df -h
Използвана размер на файловата система Наличност Използва се% Монтиран на devtmpfs 485M 0 485M 0% / dev tmpfs 496M 0 496M 0% / dev / shm tmpfs 496M 44M 452M 9% / run tmpfs 496M 0 496M 0% / sys / fs / cgroup / dev / vda2 20G 1.4G 19G 7% / / dev / vda1 488M 100M 353M 23% / зареждане tmpfs 100M 0 100M 0% / run / user / 0 / dev / md0 20G 45M 19G 1% / резервно копие
Масивът беше монтиран без грешки. За да не монтираме устройството всеки път ръчно, ще направим промени в fstab:
# nano / etc / fstab
/ dev / md0 / архивиране ext4 по подразбиране 1 2
Преглед на състоянието, проверете целостта на RAID масива
За да проверите целостта на данните в масива, използвайте командата:
#echo 'check'> / sys / block / md0 / md / синхронизиране
След което трябва да погледнете изхода на файла:
#cat / sys / block / md0 / md / mismatch_cnt
Ако получите 0 в резултат, всичко е наред с вашия масив:
За да спрете валидирането, използвайте командата:
#echo 'idle'> / sys / block / md0 / md / синхронизиране
За да проверите състоянието на всички RAID масиви, налични на сървъра, използвайте командата:
# cat / proc / mdstat
Личности: [raid1] md0: активен raid1 vdc [1] vdb [0] 20954112 блокира супер 1.2 [2/2] [UU]
В списъка на екипите виждаме информация за предишно създадения ни рейд.
За повече информация относно конкретен масив от рейд вижте командата:
# mdadm -D / dev / md0
Нека анализираме основните моменти от списъка на екипа:
- Версия - версия на метаданните;
- Време за създаване - дата и час на създаване на рейд масива;
- Raid Level - ниво на рейд масива;
- Array Size - дисково пространство за raid масива;
- Използван Dev Size - използван обем за устройства;
- Raid Device - броят на дисковете в рейд масива;
- Общо устройства - броят на дисковете, добавени към рейд масива;
- Състояние - текущо състояние (чисто - всичко е наред);
- Активни устройства - броят на активните дискове в рейд масива;
- Working Devises - броят на работещите дискове в рейд масива;
- Failed Devices - броят на устройствата с повреди в рейд масива;
- Резервни устройства - броят на резервните дискове в рейд масива;
- Политика за последователност - параметър, определящ вида на синхронизацията след неуспех в рейд масив, Rsync - пълна синхронизация след възстановяване на рейд масив (налични са bitmap, journal, ppl режими);
- UUID - идентификатор на рейд масив
Кратката информация може да бъде разгледана с помощта на помощната програма Fdisk:
# fdisk -l / dev / md0
Диск / dev / md0: 21,5 GB, 21457010688 байта, 41908224 сектори Единици = сектори от 1 * 512 = 512 байта Размер на сектора (логически / физически): 512 байта / 512 байта Размер на I / O (минимален / оптимален): 512 байта / 512 байта
Възстановяване на RAID при неуспех, подмяна на диска
Ако сте се провалили или повредили един от дисковете в RAID масива, можете да го замените с друг. Първо, нека да определим дали дискът е повреден и кой диск трябва да променим..
# cat / proc / mdstat
Личности: [raid1] md0: active raid1 vdb [0] 20954112 блокира супер 1.2 [2/1] [U_]
От командата за списък виждате, че е активен само един диск. Също така говори за проблема [u_]. Когато и двата диска работят, изходът ще бъде [UU].
Подробната информация за RAID показва също, че има проблеми:
# mdadm -D / dev / md0
/ dev / md0: Версия: 1.2 Време за създаване: вторник, 29 октомври 12:39:22 PM Ниво на Raid: raid1 Размер на масива: 20954112 (19,98 GiB 21,46 GB) Използван Dev Размер: 20954112 (19,98 GiB 21,46 GB) Raid Devices: 2 Общо Устройства: 2 Устойчивост: Суперблокът е постоянен Време за актуализация: Вторник Октомври 29 14:41:13 2019 Състояние: чисти, влошени Активни устройства: 1 Работни устройства: 1 Неуспешни устройства: 1
Състояние: чист, влошен
- този ред показва, че дискът в рейд масива е повреден.
В нашия случай трябва да заменим неуспешния диск / dev / vdc. За да възстановите масива, трябва да премахнете празен диск и да добавите нов.
Премахване на неозвучен диск:
# mdadm / dev / md0 --remove / dev / vdc
Добавете нов диск към масива:
# mdadm / dev / md0 --add / dev / vdd
Възстановяването на диска ще започне автоматично след добавяне на нов диск:
# mdadm -D / dev / md0
/ dev / md0: Версия: 1.2 Време за създаване: вторник, 29 октомври 12:39:22 PM Ниво на Raid: raid1 Размер на масива: 20954112 (19,98 GiB 21,46 GB) Използван Dev Размер: 20954112 (19,98 GiB 21,46 GB) Raid Devices: 2 Общо Устройства: 2 Устойчивост: Суперблокът е постоянен Време за актуализация: вторник 29 октомври 14:50:20 2019 Състояние: чист, влошен, възстановяващ Активни устройства: 1 Работни устройства: 2 Неуспешни устройства: 0 Резервни устройства: 1 Политика на консистенция: Ресинхронизиране Повторно възстановяване Състояние: 69% завършено Име: server.vpn.rucript (локален за хост сървъра.vpn.ru) UUID: 9d59b1fb: 7b0a7b6d: 15a75459: 8b1637a2 Събития: 42 Брой Основни малки RaidDevice State 0 253 16 0 активен синхронизация / dev / vdb 2 253 48 1 резервна възстановка / dev / vdd
възстановяване състояние: 69% завършен
- показва текущото състояние на възстановяване на масива.
резервно възстановяване / dev / vdd
- показва кой диск е добавен към масива.
След възстановяване на масива списъкът на дисковете изглежда така:
Състояние: чисти активни устройства: 2 работни устройства: 2 повредени устройства: 0 резервни устройства: 0
Добавяне и премахване на дискове в RAID масив на Linux
За да анализирате предварително създаден масив, трябва да го демонтирате:
# umount / архивиране
И изпълнете командата:
# mdadm -S / dev / md0
mdadm: спря / dev / md0
След анализа на масива той не трябва да бъде дефиниран като устройство:
# mdadm -S / dev / md0
mdadm: грешка при отваряне / dev / md0: Няма такъв файл или директория
За да сглобим масив, който преди това сме анализирали ръчно, изпълнете командата:
# mdadm - събрание -scan
Тази команда ще сканира дискове от разглобен или свит RAID масив и ще се опита да събере RAID от тях с помощта на метаданни.
Ако трябва да премахнете работния диск от масива и да го замените с друг, първо трябва да маркирате работния диск като неработен:
# mdadm / dev / md0 --fail / dev / vdc
Тогава дискът може да бъде изтрит с командата ::
# mdadm / dev / md0 --remove / dev / vdc
Добавя се нов диск, както е в случая с неработен диск:
# mdadm / dev / md0 --add / dev / vdd
Добавяне на Hot-Spare диск към RAID масив
Можете да добавите към масива гореща резервна устройство с възможност за гореща смяна, ако някой от активните дискове се повреди. Добавете безплатен диск към желания масив:
# mdadm / dev / md0 --add / dev / vdc
След като проверим състоянието на рейд масива, ще видим този диск като резервен:
За да проверите дали „гореща размяна " диск, маркирайте някой от устройствата като неработещ и проверете състоянието на рейд масива:
# mdadm / dev / md0 --fail / dev / vdb
След това при проверка на състоянието на масива ще се види, че възстановяването на масива е започнало:
диск / dev / vdb маркирани като неработещи и горещият резервен диск стана един от активните RAID дискове и процесът на възстановяване стартира.
За да добавите допълнителен работен диск към RAID, трябва да извършите две стъпки.
Добавете празен диск към масива:
# mdadm / dev / md0 --add / dev / vdb
Сега това устройство ще се покаже като гореща резервна, за да работи, разширете рейд масива:
# mdadm -G / dev / md0 -raid-устройства = 3
Тогава ще започне процесът на възстановяване на масива:
След възстановяването всички дискове станаха активни:
Брой Основен мален RaidDevice State 3 253 32 0 активна синхронизация / dev / vdc 2 253 48 1 активна синхронизация / dev / vdd 4 253 16 2 активно синхронизиране / dev / vdb
Изтриване на масив
Ако искате окончателно да изтриете рейд масива, използвайте следната схема:
# umount / архивиране
- демонтиране на масива от директорията
# mdadm -S / dev / md0
- спрете RAID устройството
След това изчистваме всички суперблокове на дисковете, от които е бил сглобен:
# mdadm --zero-superblock / dev / vdb
# mdadm --zero-superblock / dev / vdc
Mdmonitor: Мониторинг на RAID състоянието и имейл сигналите
Можете да използвате услугата, за да наблюдавате състоянието на RAID масив. mdmonitor. Първо трябва да създадете файл /etc/mdadm.conf с конфигурацията на текущия масив:
# mdadm -detail -scan> /etc/mdadm.conf
В края на файла /etc/mdadm.conf добавете имейл адреса на администратора, на който трябва да изпратите сигнали за проблеми с RAID:
MAILADDR [email protected]
Спря рестартирането на mdmonitor услугата чрез systemctl:
# systemctl рестартирайте mdmonitor
След това системата ще ви уведоми по имейл за грешки в mdadm и дефектни дискове.
RAID масивът е неактивен
В случай на повреда на оборудването или аварийно изключване на захранването, масивът може да премине в състояние неактивен. Всички дискове са маркирани като неактивни, но няма грешки в устройствата.
# cat / proc / mdstat
Личности: [линеен] [многопът] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] md0: неактивен vdc [1] vdb [0] 20954112 блокира супер неизползвани устройства:
В този случай трябва да спрете масива с командата:
# mdadm - стоп / dev / md0
И го възстановете:
# mdadm --сглобяване --scan -force
Ако масивът е регистриран в / etc / fstab, трябва да го пренастроите с командата:
# mount -a
полезност mdadm опростява работата с Raid масиви в Linux. В тази статия описах основните моменти на работа с тази помощна програма и засегнах най-често срещаните въпроси, които възникват при работа с нападение-масиви през помощната програма mdadm.