Что такое LUN (лун)?

Данный раздел пополняется силами модераторов и постоянных посетителей.

Модераторы: Trinity admin`s, Free-lance moderator`s

Ответить
Аватара пользователя
gs
Сотрудник Тринити
Сотрудник Тринити
Сообщения: 16650
Зарегистрирован: 23 авг 2002, 17:34
Откуда: Москва
Контактная информация:

Что такое LUN (лун)?

Сообщение gs » 13 июл 2007, 15:10

Сначала немного теории.

LUN = Logical Unit Number

В сказевых системах (а также FC, SAS и практически всех рэйд контроллерах, даже саташных) используется следующая схема адресации устройств - шина (Bus) - адрес (ID) - подадрес (LUN). Аналогия простая: улица - дом - квартира.

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

Луном может быть не только логический диск. Это может быть например мониторинговый SES процессор или сам контроллер (для управления непосредственно через шину, без эзернетовского хвоста).



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

Внутри рэйд системы существуют массивы (array) и логические диски (logical drive). Логический диск фактически является партицией массива - только не на уровне операционки, а внутри контроллера.

Грубо говоря, LUN (Logical Drive), с представляет собой кусок рэйд массива, который контроллер представляет операционной системе в качестве "физического" диска. Именно это как правило и имеется в виду, когда говорят "лун".

Смысл разбиения массива на луны в том, что на разных лунах можно иметь разные политики кэширования, что невозможно в случае обычных софтовых партиций. А на многих контроллерах еще и разные уровни рэйд (например контроллеры Адаптек или LSI). Еще момент - не всегда операционки понимают диски более 2ТБ (хотя это со временем пройдет) - тогда большой массив можно просто порезать.


Обладатели PCI контроллеров могут дальше не читать :)

Сами по себе логдрайвы никому не видны. Для того, чтобы их увидела система, им надо присвоить номера - LUNы.

В PCI контроллерах это делается автоматом, т.к. вариантов нет (т.е. LUN=LogDrive).

Во внешних дисковых системах все гораздо сложнее. Например может существовать логический драйв, не имеющий собственного луна вообще - например разного рода теневые копии. Или наоборот, в случае инкрементального снапшота один и тот же драйв может быть опубликован под разными номерами - как снимки на разный момент времени.
Еще момент - storage partitioning. Это означает виртуальное деление дисковой системы на несколько (для удобства подключения большого количества серверов). В этом случае с разных хостов под одними и теми же номерами лунов будут видны разные логдрайвы.
LUN Mapping - маскирование лунов для разных серверов. Это для того, чтобы разные сервера не видели луны соседа и не мешали друг  другу. Можно сказать упрощенный вариант сторадж партишенинга.

В общем, во внешних системах логические диски и луны - это не одно и то же. И задание номеров лунов есть задача админа.

Аватара пользователя
gs
Сотрудник Тринити
Сотрудник Тринити
Сообщения: 16650
Зарегистрирован: 23 авг 2002, 17:34
Откуда: Москва
Контактная информация:

Re: Что такое LUN (лун)?

Сообщение gs » 11 авг 2009, 14:41


Ответить

Вернуться в «Массивы - FAQ»

Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и 8 гостей