Заміна несправного диска в корені ZFS | INTROSERV

Заміна несправного диска в корені ZFS

Вступні поняття

Цей документ слугує посібником для адміністраторів і користувачів, які володіють певним рівнем знань про обчислювальні апаратні платформи і концепції зберігання даних, такі як RAID. Якщо ви вже добре розумієте загальний процес усунення несправностей, ви можете перейти до розділів про заміну накопичувача та ремонт пулу.

Ступені багатослівності

Щоразу, коли накопичувач виходить з ладу або має помилки, SmartOS записує багато інформації. Щоб з'ясувати причину несправності диска, необхідно заглибитися у деталі. Нижче наведено команди у порядку зменшення багатослівності:

Команда 'zpool status ' надає огляд стану пулу.

iostat надає нам кількість помилок високого рівня, а також конкретну інформацію про пристрої.

fmadm faulty допоможе нам точніше визначити причину збою диска. fmadm також здатна очистити тимчасові несправності;

Команда fmdump надасть нам журнал подій несправностей за останні {n} днів.

Окрім заміни несправних дисків, ця інформація може бути надзвичайно корисною для визначення першопричини проблеми, якщо проблема є складнішою за просту несправність диска.

Загальний процес виходу з ладу

У системі, коли відбувається збій диска, ZFS не є першим компонентом, який виявляє і реагує на нього. Замість цього відбувається наступний загальний порядок подій:

1. FMA (Fault Management Architecture - архітектура управління збоями) виявляє і реєструє несправний диск. FMA відстежує та керує апаратними несправностями в системі.

2. Як тільки FMA виявляє несправний диск, операційна система втручається і видаляє його з системи.

3. ZFS, яка є надійною та масштабованою файловою системою, дізнається про зміну стану диска. ZFS виявляє, що диск було вилучено, і реагує на це несправністю пристрою. Збій пристрою означає, що ZFS позначає диск як несправний і вживає необхідних заходів для збереження цілісності та доступності даних.

Цей загальний процес обробки збоїв гарантує, що будь-які збої диска в системі будуть негайно виявлені, зареєстровані та відреаговані відповідними компонентами. FMA робить перший крок - ідентифікує несправний диск, потім операційна система видаляє його, і, нарешті, ZFS реагує на зміну стану, створюючи помилку на пристрої. Дотримуючись такого порядку подій, система може ефективно справлятися з відмовами дисків і підтримувати загальну стабільність і надійність інфраструктури зберігання.

Зверніть увагу, що це загальний опис процесу усунення несправностей, який може відрізнятися залежно від конкретної реалізації та конфігурації системи.

Як замінити диск

Загальний огляд заміни диска, що вийшов з ладу, у корені ZFS

Примітка: Перш ніж продовжити процес заміни диска, переконайтеся, що ви правильно визначили несправний диск. Також переконайтеся, що у вас є запасний диск для заміни.

Покрокове керівництво по заміні несправного диска в корені ZFS

Припустимо, що на сервері є 2 диски: /dev/sda і /dev/sdb
Один з дисків вийшов з ладу, наприклад /dev/sdb
Пошкоджений диск потрібно замінити.

Спочатку визначимо наш пул за допомогою команди:

zpool list

Перед заміною диска бажано видалити його з масиву:

zpool detach rpool /dev/sdb

Далі вимкніть сервер, якщо у вас немає можливості гарячої заміни дисків, але все описане нижче можна зробити і без зупинки сервера - якщо у вас є контролер і hotswap

poweroff

Фізично замінити диск, що вийшов з ладу.

Визначення таблиці розділів (GPT або MBR) і перенесення її на новий диск

Після заміни пошкодженого диска потрібно визначити тип таблиці розділів - GPT або MBR.
Для цього скористайтеся gdisk. Встановіть gdisk:

apt-get install gdisk -y

Запустіть команду:

gdisk -l /dev/sda

Де /dev/sda - дійсний диск в RAID-масиві.

Для MBR результат буде приблизно таким:

Partition table scan: MBR: MBR only BSD: not present APM: not present GPT: not present

Для GPT- приблизно наступне:

Partition table scan: MBR: protective BSD: not present APM: not present GPT: present

Перш ніж додати диск до масиву, його потрібно розбити на розділи так само, як і звичайний sda-диск. Це робиться по-різному, залежно від того, яким чином розбито диск.

Копіювання розбиття для GPT

Для копіювання розбиття GPT:

Зверніть увагу: перший - це диск, на який копіюється розбиття, а другий - це диск, з якого копіюється розбиття. Якщо ви їх переплутаєте, розбиття на початково справному диску буде знищено.

sgdisk -R /dev/sdb /dev/sda

Призначте диску новий випадковий UUID:

sgdisk -G /dev/sdb

Копіювання розділу MBR

Щоб скопіювати розбиття MBR:

Зверніть увагу!
Тут ви пишете спочатку диск, з якого ви переносите розбиття, а потім диск, на який ви його переносите.

sfdisk -d /dev/sda | sfdisk /dev/sdb

Якщо розділи не відображаються в системі, ви можете перечитати таблицю розділів за допомогою команди:

sfdisk -R /dev/sdb

Встановлення завантажувача

Після розбиття диска на розділи потрібно встановити на нього завантажувач:

grub-install /dev/sdb

Додавання диска

Вказуємо, який диск ми збираємося замінити (у нашому випадку це /dev/sdb3):

zpool replace rpool /dev/sdb3

Додавання диска в рейд:

zpool online rpool /dev/sdb3

Дочекайтеся завершення синхронізації масиву:

zpool status

Висновок

Дотримуючись цих інструкцій, ви можете успішно замінити несправний диск в корені ZFS без шкоди для цілісності ваших даних. Важливо дотримуватися запобіжних заходів і виконувати кроки резервного копіювання та перевірки, щоб уникнути потенційної втрати даних і забезпечити безперебійну роботу.

VAT

  • Other

    Other

    0%
  • austria

    Austria

    20%
  • Belgium

    Belgium

    21%
  • Bulgaria

    Bulgaria

    20%
  • Croatia

    Croatia

    25%
  • Cyprus

    Cyprus

    19%
  • Czech Republic

    Czech Republic

    21%
  • Denmark

    Denmark

    25%
  • Estonia

    Estonia

    22%
  • France

    France

    20%
  • Finland

    Finland

    24%
  • Germany

    Germany

    19%
  • Greece

    Greece

    24%
  • Hungary

    Hungary

    27%
  • Ireland

    Ireland

    23%
  • Italy

    Italy

    22%
  • Latvia

    Latvia

    21%
  • Lithuania

    Lithuania

    21%
  • Luxembourg

    Luxembourg

    17%
  • Malta

    Malta

    18%
  • Netherlands

    Netherlands

    21%
  • Poland

    Poland

    23%
  • Portugal

    Portugal

    23%
  • Romania

    Romania

    19%
  • Slovakia

    Slovakia

    20%
  • Slovenia

    Slovenia

    %
  • Spain

    Spain

    21%
  • Sweden

    Sweden

    25%
  • USA

    USA

    0%
european
states
  • Other
  • canada
  • poland
  • european-union
  • france
  • germany
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria