Translate

неділю, 16 червня 2013 р.

RAID: теорія та практика

Жорсткий диск завжди вважався "вузьким" місцем системи в плані надійності і, зазвичай, швидкості. Саме тому людство придумало таку технологію як RAID, що здатна в певній мірі підвищити ці показники, проте звісно не без втрат. Про це і піде далі мова.
   RAID (англ. redundant array of independent/inexpensive disks) - надлишковий масив дисків, що покликаний підвищити надійність та/або швидкість роботи постійної пам'яті. В залежності від рівня, RAID буває:

1) RAID 0 - масив, як мінімум із 2-х дисків, дані на яких розподіляються частинами (блоками) і записується відповідно на кожен диск. Тобто кожен блок знаходиться лише на одному диску. Таким чином цей масив значно підвищує швидкість запису/читання проте аж ніяк не підвищує надійність.


2) RAID 1 - дзеркальний масив. Дані на кожному із дисків ідентичні. Організація масиву в RAID 1 підвищує швидкість  читання та рівень надійності дискової системи (при пошкодженні одного із дисків, система буде працювати з іншим робочим), але все це за рахунок втрати корисної ємності одного із дисків. Тобто використовуючи два диски місця буде доступно вдвічі менше, адже вони оперують тими ж самими даними.


неділю, 9 червня 2013 р.

Використання Logical Volume Manager (LVM)

Вирішив написати пару слів про LVM, адже використання цієї технології при налаштуванні серверів досить актуальне та і щоб просто не забути.

LVM (Logical Volume Manager) - менеджер логічних томів, додатковий рівень абстракції між фізичними (/dev/sda1, /dev/sda2 і  т.д.) та логічними томами ( /home, /root, /boot і т.д.), що значно підвищує гнучкість файлової системи. Використовуючи менеджер логічних томів, можна відносно легко змінювати розмір вже існуючих логічних томів (додавши новий HDD, можна просто пододавати місця на уже створені розділи, таким чином вирішивши проблему браку місця) чи робити бекапи без перевантаження/вимкнення/зупинки сервісів. Створення розділів з LVM не обмежене розміром фізичного диска, тобто один розділ може займати розмір декількох вінчестерів чи розділ може знаходитись частково на декількох HDD.

Отже схематично рівні знаходяться так:


PV- Physical volume, фізичний том. Це власне диск чи просто розділ на диску.
VG - Volume group, группа томів. Найвищий рівень абстрактної моделі LVS. До групи томів входять фізичні томи.
LV - Logical volume, логічний том. Власне це еквівалент звичайного розділу в не-LVM системі. В данному випадку Volume group поділяється на окремі розділи на зразок /dev/mapper/diskone, /dev/mapper/disktwo. Наділі кожний логічний том монтується в відповідну директорію /, /usr, /home і т.д.

Переходимо до практики. Перш за все встановимо пакет для підтримки LVM:

# apt-get install lvm2

Необхідно створити чи використати існуючі неформатовані розділи. За допомогою fdisk я створив два тестових розділи /dev/sda7 та /dev/sda8 і ініціалізував їх для використання як розділів для LVM:

# pvcreate /dev/sda7
# pvcreate /dev/sda8