В нашем отделе программного обеспечения есть сервер с VMWare Server 2. Обычно у нас есть 8-10 виртуальных машин, работающих в качестве тестовых сред (Win XP и Server 08) для различных версий нашего программного обеспечения, и одна виртуальная машина, которая используется в качестве сервера сборки (Win XP). .
Хост работает под управлением Server 2003 R2. Он имеет 32 ГБ оперативной памяти, 8-ядерный процессор Xeon с тактовой частотой 3,16 ГГц, один диск для хост-ОС и два raid-диска для виртуальных машин.
В большинстве случаев эта установка работает очень хорошо, и нареканий нет. В других случаях виртуальные машины могут сильно тормозить. Иногда, но не всегда, это связано с большой нагрузкой на сервер сборки.
Я разработчик программного обеспечения, а не ИТ-специалист, но мне кажется, что эта машина должна быть достаточно мощной, чтобы обрабатывать такое количество виртуальных машин. Вероятно ли это случайное снижение производительности только из-за того, что мы выходим за пределы возможностей оборудования, или мне следует искать другого виновника?
Из того, что я прочитал, я предполагаю, что если есть узкое место, вероятно, это дисковый ввод-вывод, когда все эти виртуальные машины работают с двух дисков (особенно на сервере сборки). Приведет ли размещение виртуальных машин на большем количестве дисков и / или переход на твердотельные накопители к значительному увеличению производительности?
Прочие вещи, которые я прочитал, могут повысить производительность:
Может ли кто-нибудь подтвердить или опровергнуть, улучшают ли какие-либо из них производительность? Какие еще хорошие настройки я пропустил?
Хороший набор настроек. Однако настройка, которая, например, улучшает производительность процессора, бесполезна, если вы привязаны к диску. Я предлагаю начать с сеанса работы с Perfmon (особенно посмотрите статистику дискового ввода-вывода), чтобы определить, в чем заключается проблема.
Если вы не используете предварительно выделенные диски, будет продуктивно внимательно изучить фрагментацию диска хоста, равно как и перестройку виртуальных машин XP с выровненными границами разделов диска.
Большая палка перейдет на ESXi, который предлагает гораздо лучшую производительность, если у вас есть совместимость с оборудованием.
Вы выбрали несколько хороших показателей производительности (ваш список маркеров), и вы правы, что дисковый ввод-вывод может быть проблемой, но я думаю, что вы упускаете один трюк.
Если вам не нужно использовать для чего-то неоткрывающуюся ОС S2K3, то почему бы не прекратить использовать «Сервер 2» (который на самом деле не очень хорошо работает в качестве сервера) и вместо этого использовать бесплатный гипервизор ESXi? Хорошо, вы потеряете базовую ОС Windows, но увидите значительное улучшение производительности и лучшую видимость поведения вашей виртуальной машины, что позволит вам подтвердить любые узкие места ввода-вывода (которые на самом деле можно исправить, только потратив деньги).
О, и меня заинтриговал этот 8-ядерный Xeon, который у вас есть, действительно ли у него есть двухъядерные четырехъядерные Xeon - просто еще нет 8-ядерного Xeon 3,16 ГГц. Эта информация могла бы лучше сообщить нам.
Я работал с сервером, похожим на ваш - Windows 2003 R2, VMware Server 2, машина сборки XP и несколько других виртуальных машин, достаточное количество оперативной памяти и шестидисковый RAID 5 для виртуальных машин. Каждый раз, когда запускалась машина сборки, вы определенно могли заметить это на других виртуальных машинах. Иногда было больно.
Я искал в Google и пробовал каждую оптимизацию, которую смог найти, но увидел лишь незначительный прирост производительности. Затем я перенес эту виртуальную машину на ее собственный хост VMware ESXi, и все машины повсюду были намного счастливее.
Этот опыт побудил меня в целом избегать VMware Server - особенно для приложений, интенсивно использующих диск. Это нормально для сценариев с низким уровнем использования, но использование ESXi (или сервера Hyper-V, который мне тоже нравится) в целом значительно упрощает жизнь.
Теперь у меня есть машина для сборки, использующая аналогичный, хотя и немного более мощный сервер, со многими другими виртуальными машинами под Hyper-V, и она отлично работает.
Поскольку в моей установке было намного больше дисков, чем у вас, я был бы осторожен, просто предполагая, что большее количество дисков решит ваши проблемы.