Solaris 10U10. M9000. К нему подключен VMAX. Этот массив относится к классу High End и имеет все атрибуты этих машин. Кроме прочего, для лучшей производительности EMC рекомендует создавать множество маленьких групп дисков (по 4 в зеркале в моем случае и таких групп было 60 штук). Что же видит солярис в этом случае ? Да - 60 LUN-ов. Точнее видит он их 120 штук. Поэтому включаем сначала Multipathing. Можно было бы сделать stmsboot -e и всё. Но это не работает здесь. Вот что делаем. Правим файл /kernel/drv/scsi_vhci.conf. У меня он стал вот таким:
name="scsi_vhci" class="root";
load-balance="round-robin";
auto-failback="enable";
device-type-scsi-options-list = "EMC SYMMETRIX", "symmetric-option";
symmetric-option=0x1000000;
Между EMC и SYMMETRIX - пять пробелов.
ПРоверим и если не так - поправим - в файле /kernel/drv/fp.conf строку (должно быть так):
mpxio-disable="no";
/etc/system:
set md_mirror:md_resync_bufsz=2048
set md:mirrored_root_flag=1
set noexec_user_stack=1
set ssd:ssd_max_throttle=20
set sd:sd_max_throttle=20
set ssd:ssd_io_time=0x3c
set sd:sd_io_time=0x3c
set sq_max_size=250
set rlim_fd_max=65536
Перезагрузка. Почистим devfsadm -Cv. Теперь format видит 60 моих томов. Скриптами я получаю строку с перечнем устройств. Далее надо поставить метки на каждый.
Далее я делаю страйп на все 60 томов : metainit d100 1 60 устройство1 устройство2 ... устройство60. Но клиент не хочет что бы все 5 ТБ (такой общий размер страйпа получился) были отданы в одну файловую систему. Требование приложения - только UFS (точнее не так - НЕ ZFS!). У нас есть страйп - d100. Из него вырезаем кусок нужного размера при помощи Soft partition: metainit d200 -p d100 500gb
далее newfs /dev/md/rdsk/d200 ну и mount.
А добавить место к текущему разделу Soft Partition очень просто:
metattach d200 10gb
Запустим vdbench на создание 100 файлов по 10ГБ каждый. Около 26 тысячи IOPS, около 430 МБ в секунду. Нормально. В страйпе 240 дисков в итоге (60 групп по 4 диска в группе 2-way mirror). Диски FC 15 000 rpm.
PS: странное поведение было до этого. Я создал metaset -s vmax из этих же 60 кусков, после в этом metaset сделал тот же страйп и вырезал кусок soft partition. В этом варианте я не получал более 10 000 iops и 100 МБ в секунду. Видно что работает только один путь из 4-х FC. Убил метасет, создал страйп как описал выше и все встало на свои места. Баг или глюк - не могу сказать. Повторять было некогда ситуацию.
name="scsi_vhci" class="root";
load-balance="round-robin";
auto-failback="enable";
device-type-scsi-options-list = "EMC SYMMETRIX", "symmetric-option";
symmetric-option=0x1000000;
Между EMC и SYMMETRIX - пять пробелов.
ПРоверим и если не так - поправим - в файле /kernel/drv/fp.conf строку (должно быть так):
mpxio-disable="no";
/etc/system:
set md_mirror:md_resync_bufsz=2048
set md:mirrored_root_flag=1
set noexec_user_stack=1
set ssd:ssd_max_throttle=20
set sd:sd_max_throttle=20
set ssd:ssd_io_time=0x3c
set sd:sd_io_time=0x3c
set sq_max_size=250
set rlim_fd_max=65536
Перезагрузка. Почистим devfsadm -Cv. Теперь format видит 60 моих томов. Скриптами я получаю строку с перечнем устройств. Далее надо поставить метки на каждый.
Далее я делаю страйп на все 60 томов : metainit d100 1 60 устройство1 устройство2 ... устройство60. Но клиент не хочет что бы все 5 ТБ (такой общий размер страйпа получился) были отданы в одну файловую систему. Требование приложения - только UFS (точнее не так - НЕ ZFS!). У нас есть страйп - d100. Из него вырезаем кусок нужного размера при помощи Soft partition: metainit d200 -p d100 500gb
далее newfs /dev/md/rdsk/d200 ну и mount.
А добавить место к текущему разделу Soft Partition очень просто:
metattach d200 10gb
Запустим vdbench на создание 100 файлов по 10ГБ каждый. Около 26 тысячи IOPS, около 430 МБ в секунду. Нормально. В страйпе 240 дисков в итоге (60 групп по 4 диска в группе 2-way mirror). Диски FC 15 000 rpm.
PS: странное поведение было до этого. Я создал metaset -s vmax из этих же 60 кусков, после в этом metaset сделал тот же страйп и вырезал кусок soft partition. В этом варианте я не получал более 10 000 iops и 100 МБ в секунду. Видно что работает только один путь из 4-х FC. Убил метасет, создал страйп как описал выше и все встало на свои места. Баг или глюк - не могу сказать. Повторять было некогда ситуацию.
2 комментария:
Интересно, зачем - пять пробелов?
Отправить комментарий