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

практический опыт

Из переписки:

Добрый день Михаил!

Извините за беспокойство, очень нужен совет. Ситуация следующая: два сервака HP 380 G4 объединены в кластер DRS. На каждом хосте имеются ресурсы: 2CPUx3.6 Ghz with Hypertraiding , 8 Gb Memory. Каждый из этих хостов соединен двумя оптическими картами к хранилищу Clariion CX-400. Лун, на котором хранятся файлы ВМ имеет размер 500 Gb. Карточки Emulex. ВМ в основном 2-х процессорные с 2000 Gb памяти. При работе ВМ получаем проблему: при запуске обычного копирования любым способом (Far, Total Commander, Explorer) процессор на ВМ уходит в нагрузку 100%, ядро процессора грузится на 70-80 %. ВМ просто «умирает». При этом хосты ESX не испытывают особой нагрузки. Пробовал поиграться с оптическими картами – не помогло. Откатил дрова, которые установили Tools, менял тип адаптера с LSI на BUS Logic в настройках ВМ, тоже никакого результата. Можете что-нибудь подсказать?
...
Проблему частично удалось решить, применив пару ваших советов и благодаря блогам vmgu.ru; vm4ru.

В двух словах – для всех юзеров , решивших посвятить свою жизнь виртуализации, «читайте мануалы внимательно! Shares, Transparend Page Sharing, DRS это не просто красивые слова. Понимание принципа работы этих механизмов упростит вашу жизнь и жизнь ваших виртуальных питомцев».
...

Итак, была проблема высокой загрузки вЦПУ ВМ при копировании с FTP или просто по сети.

Изначально при построении кластера и запуске ВМ я не особо настраивал распределение ресурсов в кластере, за что потом и поплатился. Т.е. ВМ работали, кто хорошо, кто плохо. Почитав и поняв свои ошибки я проделал следующие действия:

1. Распределил все ВМ по приоритету задач, т.е одна группа ВМ работает с высокой дисковой активностью, а вторая группа ВМ выполняет какие-то приложения, в основном это WEB приложения.

2. Для первой группы ВМ прописал в файлах параметр mainMem.useNamedFile = "FALSE", отключать Transparend Page Sharing не стал, хосты на данный механизм не сильно много и тратят своих ресурсов. Создал для этой группы ВМ Port Group на vSwitch, где в настройках Traffic Shapping понизил значения Average Bandwidth и Peak Bandwidth до 4000 kb/s. Это реально понизило нагрузку на вЦПУ, хотя ВМ работать стала медленнее по сети, но этим в моей ситуации можно и пожертвовать. Также в настройках ВМ в меню Resourses – Disk – Shares – High. В настройках кластера Resourse Allocation для этих ВМ выставил Shares – High, повысил значение Reservation и Limit. После этого ВМ работают отлично, хотя и хосты прилично напрягаются.

3. Для второй группы ВМ ничего особенного не делал. Просто распределил оставшиеся ресурсы. Приложение, которые на них крутятся не особо и нагружают вЦП, а соответственно и хост.

После решения этой проблемы произошло обновление до Update 4.

Затем дали поиграться железяку HP DL 380 G5 с 6 SAS дисками. И приключилась проблема, точнее несколько. На дисках я собрал 5 RAID, общая емкость получилась 350 Gb. VMFS-раздел – 330 Gb. Скорость копирования в пределах VMFS, и на него – 2 MB/s. Это был удар ниже пояса. Я не мог смигрировать ВМ с большими vmdk. Миграция отваливалась по тайм ауту (длилась 1 час, а потом ошибка). Причем копирование из каталога Home в каталог User показывало скорость 20 MB/s. Я подумал, что нужно увеличить размер блока при форматировании в vmfs. В конфигурации Storage я выбираю Remove, затем произвел Rescan All Vmhba, затем Add Disk/Lun и не вижу ничего. Немного поигравшись, выполнил следующее:



Fdisk -l , и увидел пустоту в несколько тысяч цилиндров. Умножив количество цилиндров на емкость получив цифру в 350 Gb.

Fdisk /dev/cciss/c0d0

Command (m for help): n

Далее указал первый цилиндр, затем последний.

Далее W.

После этого при помощи ключа t в команде fdisk меняю ID файловой системы на fb. Провожу rescan hba и получаю свое хранилище обратно, даже файлы сохранились. Но проблема не ушла. Еще раз проделав все выше описанное, но уже без ключа t, применив команду vmkfstools отформатировал хранилище блоками по 2 Mb. Но и эти телодвижения не помогли. Затем железяку забрали. Проблема осталась открытой. (Конечно нужно было все заснепшотить для правильности изложения, но не подумал, пишу по памяти).



Сейчас дают два лезвия на IBM Blade Center H. Буду строить кластер HA с общим Storage на iSCSI. Затем нужно сделать NLB кластер ВМ. Не знаю, уживутся ли NLB кластер и VMotion. Очень много статей по этому поводу, так что буду наступать на свои грабли.


thx Vitaly Shindler

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

  1. Миш, а можешь автору задать пару вопросов..

    Проблемы были при копировании внутри машины или все-таки с ипользованием сетевой части?

    Какой был сетевой адаптер, какая ос?

    Какие были значения у memory swapped, swap in и swap out?

    ОтветитьУдалить
  2. Проблемы при копировании были как внутри машины, так и с сетевых ресурсов. Первую проблему удалось погасить (как я уже и говорил), прописав параметр в файле .vmx, а вторую при помощи настроек Port Group.
    На ВМ сетевой адаптер изначально был flexible, затем я поменял на Enhanced vmxnet. Особых изменений не заметил. ОС – Win2003 R2 SP2. На самих же хостах стоят 2 Broadcom Corporation NetXtreme BCM5704 Gigabit Ethernet.
    На последний вопрос затрудняюсь ответить.

    ОтветитьУдалить
  3. >На ВМ сетевой адаптер изначально был flexible, затем я поменял на Enhanced vmxnet. Особых изменений не заметил.

    И не заметите, потому что в винде после установки VMware Tools flexible и есть Enhanced vmxnet.

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