понедельник, 2 апреля 2012 г.

Сколько вешать в мегабайтах или VIOS Advisor tool

Зачастую вопрос сайзинга VIOS весьма затруднителен. Ну как же: я доверил виосу, нет, даже двум, обеспечивать мои LPAR'ы дисками и сетью, но как заранее узнать сколько для этого потребуется процессоров и памяти, какие процессоры брать - Dedicated или из Shared pool'а и какой вес задать в случае режима Shared+Uncapped.

Как обычно ответа нет. Ну вернее точного ответа нет. Есть некие формулки по которым можно прикинуть сколько нужно процессоров и памяти для обслуживания виртуального SCSI и SEA и даже с примерами рассчета. Вы можете найти их вот здесь, на инфоцентре по ключевой фразе "planning for the Virtual I/O Server".
Если в кратце, то там дают вот такую табличку.

А потом говорят: Вот, предположим, 5 ваших LPAR'ов хотят виртуальные scsi диски и чтоб по 2000 восьмикилобайтных iops'ов каждый - тогда вам надо 47 000 * 2000 * 5 / 1 650 000 000 = 0.29 ProcessingUnit'ов или PrU. И это для Power5 1.65 GHz. Теперь лихо в знаменателе заменяем 1.65GHz на 4.2GHz (ну мол код то тот же и тактов надо столько же, но у Power6 или 7 тактов в секунду случается больше) и получаем цифру 0.1 PowerШесых PrU.

Для Shared Ethernet Adapter'а там дается схожая схема. Применяем и ее, суммируем полученные данные, накидываем еще немного процессоров (сколько не жалко, чтобы получилось не страшно) и вот он, вот ОН САЙЗИНГ нашей мечты! Допустим получилось 0.7 PrU PowerСедьмого. Некоторые скажут - ну так и отдайте один целый Dedicated процессор!
Почему-то мне больше симпатична мысль сделать VIOS в shared pool'е в режиме Uncapped  с весом, большим чем у других, особенно у тех LPAR'ов которых он обслуживает (ну чтоб он успевал обслужить их, а не они его успевали перегрузить).

С памятью все значительно проще. Вам просто хватит 1GB. И это даже почти не шутка. Вообще, если верить текущей рекомендации, то нужно 3.7 - 4GB Сюда, по всей вероятности заложены возможные нагрузки на VIOS, если он используется для Active Memory Sharing и Live Partition Mobility. И если второе у вас еще и может быть, то в наличии первого я сильно сомневаюсь. В любом случае начать есть с чего.

Именно начать, так как полученные нами величины, это только способ не брать числа с потолка. Дальше мы конечно будем наблюдать на VIOS'е за утилизацией процессоров и за занятой памятью, за очередями к настоящим дискам и за производительностью SEA.
И добавлять... добавлять процессоры и память по мере необходимости.

Вот тут то к нам и приходит интересное средство для... скажем так - постсайзинга. Разработано Nigel'ом Griffiths'ом и называется VIOS Advisor Tool.
Инструмент собирает на работающем VIOS'е метрики утилизации, размеры очередей и т.п., и на основе собранных данных выносит некоторые рекомендации.
Итак, не будем тянуть. От нас требуется следущее:

1. Качаем vios_advisor.zip (Windows, MacOS, Linux...AIX - куда хотите! лишь бы был браузер) и распаковываем его
2. Находим в распакованном файл vios_advisor и копируем в VIOS. Например, так:
scp <folder_with_advisor>/vios_advisor   padmin@<vios_ip>:/home/padmin
3. Идем на VIOS и переходим в root'а командой oem_setup_env
4. Убедившись, что есть права на исполнение запускаем vios_advisor:

# ./vios_advisor 30&

где 30 - это время сбора данных в минутах.
можно запускать на время от 5 до 1440 (24 часа) минут. Рекомендуют интервал в 30.
Программа абсолютно молчалива и после себя оставляет только файлик vios_advisor.xml. Вот его-то мы и тащим обратно на тот хост, где распаковывали vios_advisor.zip, в тот же каталог. Если там уже есть файл с таким именем, то просто заменяем его. Дело за малым:

5. Открываем файл vios_advisor.xml в браузере и видим



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


Приведу еще пару скринов





По-моему, мило =)

Очевидно, многие рекомендации инструмент выдает не на основе измерений, а исходя из некоего best practice. Например, памяти в 3.7GB для этого конкретного VIOS'а явно многовато. Тем не менее НЕ воспользоваться vios_advisor просто как-то странно и неправильно - все очень просто и понятно, а уж делать что-то потом с VIOS'ом или нет, дело ваше.

Кстати, вот тут говорят, что оверхеда от программки копейки:


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

Читать дальше......