суббота, 26 марта 2011 г.

Как разбивать диски или что я делал не так.

Т.к. за годы работы я себе понабивал много шишек, то расскажу об одной из них.
А именно как я разбиваю диски в линухах. Напомню, что корень там всё равно один, а вот дисков может быть тьма.

Что я люблю использовать в этом деле.
1. Это LVM, о нем я расскажу чуток позже, но штука крайне полезная, особенно когда надо расширять дисковое пространство.
2. Мозг. Да бывало не использовал.

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

Что хорошего в этих подходах.
В первом - не заморачиваемся. Один раздел подо всё. Но с другой стороны в случае каких-либо ошибок на разделе приготовьтесь, что ждать проверки при 2-4 Тб, вам придется очень долго. И  бэкап целого раздела, в таком случае, это что-то с чем-то.

Много всяких разделов - муторно обслуживать, постоянно надо следить за пространством. Но в случае lvm бывает удобно. Надо поднять виртуалку - нате отдельный раздел. Надо ограничить папки пользователей - для каждого пользователя свой раздел на тцать гигов(хотя есть и квоты для этого дела). В общем гибкость есть в этом деле.

Что лучше? В общем ситуация тут такая. Когда места много и система стабильна разницы то и нет. Но, когда мы подходим к лимиту места, вот тут-то и появляется разница.
Ну например. У нас такая схема. Перечисляю каталоги у которых отдельные разделы(partitions)
/var/www # каталог для веба
/var/db # каталог для БД
/var/mail # каталог для почты
/var/log  # каталог логов
/ # корневой каталог

Например мы взяли и что-нибудь скачали в /root и практически под завязку забили корневой раздел(так делать не стоит, но иногда бывает, бэкап пишется в сеть, а сетевая шара смонтированная в раздел /root/backups отпала, вот и пишет он в корень). В случае если у нас один раздел на всё, то у нас скорее всего быстро отпадут логи, откажет БД на запись, и веб-сервер перестанет нормально функционировать, а также почта упадет. Т.е. сервер получил авто-dos(denial of service). Что не очень приятно. А вообще даже и катастрофично может быть. В случае когда под эти сервисы будут выделены отдельные разделы, то забивание корневого раздела это не беда.
Важно то, что если раздел сервиса почты вдруг переполнится, то БД не упадет и веб будет жить. Т.ч. в серверном варианте я за этот метод.

А по скольку каждому отдавать? Тут всё зависит от вас. И не читайте best-practice, где кто-то говорит 5.43Гига хватит под этот каталог, это бред, т.к. человек не знает вашей задачи. И ... беда, в начале вопрос сколько места и куда решить практически не возможно. В этом и вся загвоздка для начинающих. Место нужно сказать сейчас, а конкретно как оно будет на самом деле, хрен его знает. По этому часто и выбирают всё на одном разделе.

Вот например есть у меня самба, с хранением профилей подоконных пользователей.
В начале я выдал на профили 40 Гб, на шару 60Гб. И уже через 2 года места для профилей не осталось. И это при 10 пользователях. На самом деле всё место сожрали только 3 пользователя. А думал, что места хватит на 5 лет :) (Оптимист хренов). Спустя шесть лет(в сумме 8 лет) могу сказать, что профили пользователей весят в сумме 80Гиг, шара и хомяки (жарг. - домашние папки) весят 80Гиг. Вот такая беда. А раздел в начале был один на всех - 100 Гиг (Хардянки были по 120 Гигов в RAID1).

Так как же побороть страх перед множеством разделов? Вот об этом в следующем посте про LVM, тут он нам будет другом.

Комментариев нет: