среда, 15 июля 2009 г.

Как обойтись меньшим количеством IBM DS Storage Partition в Windows

Каждая группа устройств которая получает дисковую емкость от IBM DS требует одну лицензию, так называемую Storage Partition. Их количество в системах по умолчанию не велико, к примеру в 3400 их 4 штуки, в 4700 тоже 4. Это позволяет использовать дисковую для, к примеру, 4-х кластеров поскольку у каждого кластера одинаковый набор LUN’ов и поэтому это 1 Storage Partition. Ситуация ухудшается если мы хотим использовать дисковую для загрузки по SAN серверов, либо просто раздавать LUN’ы серверам индивидуально, тогда требуется по одной дополнительной Storage Partition на каждый такой сервер. Примерная стоимость лицензий на расширение составляет для ds4700 – 4400USD увеличение с 2 до 8 партиций (т.е. за 6 партиции, примерно 700USD за партицию), для ds3400 - 1700USD увеличение с 4 до 8 партиций (т.е. за 4 партиции, примерно 400USD за партицию).

Но можно несколько облегчить себе жизнь и сэкономить эти самые Storage Partition вот каким путем. Можно организовать Failover Cluster на который требуется одна Storage Partition и распределять LUN’ы через консоль failover cluster. Общая процедура выглядит так:

1. Выдаем все LUN’ы с дисковой системы на группу серверов.

2. Заходим на один из серверов и переводим все диски в on-line, инициализируем их, создаем на них партиции как требуется.

3. Создаем кластер из серверов которые у нас будут пользоваться этими LUN’ами и заводим эти самые LUN’ы как Storage Resources кластера. По умолчанию они все будут находиться на этом самом сервере с которого мы их только-что заводили, а нам нужно их перемещать по разным серверам. Просто так дисковые ресурсы переключать нельзя, можно переключать только кластерные группы, поэтому нужно сделать кластерные группы.

4. Создаем через раздел “Services and applications” пустую кластерную группу (там есть такой пункт), называем её “сервер1” и добавляем в неё все LUN’ы которые относятся к Серверу1. Теперь переключаем её на Сервер1. Чтобы в случае перезагрузки эта самая группа не переходила на другие сервера нужно в консоли оставить этот сервер единственным для её размещения и отключить переходы на другие сервера.

5. Результат получен.

Надо сказать, что данный путь требует включения Failover Cluster на всех серверах которым мы раздаем Storage Partition, что требует Windows Server версии Enterprise или Datacenter, поскольку разница в цене со Standart у них больше чем соимость одной IBM DS Storage Partition, то наворачивать такую структуру только ради этого – бессмысленно. НО если у вас уже есть кластер, например из 4 узлов и понадобилось одному из узлов выдать свою емкость для индивидуального использования, а Storage Partition не хватает то это абсолютно рабочий вариант.

Более интересный вопрос можно ли сэкономить Storage Partition для загрузки этих самых серверов в кластере. По этому поводу есть мысль сделать это используя динамические диски, но сначала надо проверить эту процедуру. Я думаю что попробую проверить это на днях.

Если я правильно понимаю, аналог IBM DS Storage Partition есть и у других вендоров, там это тоже должно работать.

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

3 комментария:

  1. Кстати можно без Кластера обойтись. Если добавить группу серверов в Storage Partition, то LUN`ы можно убрать - поотключав их через Device Manager\Disk Drivers в Windows (просто задисаблить) - найти нужные LUN`ы можно по их id - выбрав "Propeties" на диске. Еще проще если есть MPIO c 2мя HBA - в таком случае у нас создаются Multi-Path disk drivers - у них тоже в свойствах есть параметр Lun id, отключив его - он автоматически дисаблит диск с обеих HBA`шек :) Вот такой способ без Кластеров :) Пробовал у себя на DS3400 - работает до сих пор :)

    ОтветитьУдалить
  2. Имею ввиду класическую ситуацию: Имеет 2 сервера (например Standart Edition), 2 LUN`а (Например LUN 10 для 1го сервера и LUN 15 для второго сервера) на DS3400 и 1 партицию. Делаем следующее:
    1. Добавляем оба сервера и оба LUN`а в партицию.
    2. Заходим на первый сервер в Device Manager\Disk Drivers, видим два диска (если у нас по одной HBA), заходим в их свойства и смотрим цифру напротив "LUN", помня что первому серверу надо отдать LUN 10. Находим ненужный LUN 15 и дисаблим его. Соответственно 1й сервер Windows перестанет воспринимать LUN второго.

    По аналогии поступаем со вторым сервером.

    Плюсы данного решения: Ненадо покупать Enterprise или Datacenter.

    Минусы: Надо запоминать/записывать какой LUN какому серверу пренадлежит, т.к. в случае переустановки сервера - надо проделать вышеописанную манипуляцию.

    ОтветитьУдалить
  3. Ну соответственно можно так поступать и с большим количеством серверов и LUN`ов :)

    ОтветитьУдалить