Назад | Перейти на главную страницу

Производительность SQL Server в VSphere 4.0

У нас возникла проблема с производительностью, которую мы не можем объяснить с помощью нашей среды VMWare, и я надеюсь, что кто-то здесь сможет помочь. У нас есть веб-приложение, использующее серверную часть базы данных. У нас есть установка кластера SQL 2005 в Windows 2003 R2 между физическим узлом и виртуальным узлом. Оба физических сервера идентичны 2950 с двумя четырехъядерными процессорами Xeaon x5460 и 64 ГБ памяти, из которых 16 ГБ выделены для ОС. Мы используем iSCSI San для всех дисков кластера. Проблема заключается в том, что при использовании приложения при повторном стресс-тестировании, которое добавляет ЦП к узлам кластера, физический узел масштабируется с 1 до 8 ПКП, что означает постоянное повышение производительности. При тестировании узла, на котором работает Vsphere, мы получили ожидаемое снижение производительности на 12% из-за того, что он виртуальный, но мы по-прежнему масштабируемся с 1 виртуального ЦП до 4 виртуальных ЦП, таких как физические, но помимо этого производительность падает, к тому времени, когда мы дойдем до 8 виртуальных ЦП, мы увидим производительность цифры хуже, чем у 4 vCPU. Опять же, оба узла настроены одинаково с точки зрения оборудования, гостевой ОС, конфигураций SQL и т. Д., И в системе нет трафика, кроме тестирования. На виртуальном сервере нет других виртуальных машин, поэтому конкуренции за ресурсы быть не должно. Мы связались с VMWare за помощью, но они на самом деле не предлагали никаких вещей, таких как настройка SQL Processor Affinity, которая, хотя и была полезной, имела бы одинаковый общий эффект для каждого окна и ни в коей мере не должна изменить наши результаты. Мы просмотрели все руководства VMWare по настройке SQL в отношении VSphere без каких-либо преимуществ, пожалуйста, помогите!

У вас здесь довольно изящная настройка ;-)

Используются ли виртуальные ЦП на полную мощность? Что вам говорят графики ожидания ЦП, готовности ЦП и использования ЦП?

Чем больше виртуальных ЦП вы добавляете к виртуальной машине, тем больше накладных расходов создается в хост-системе для управления виртуальными ЦП и сопоставления их с физическим. В какой-то момент вы не сможете повысить производительность виртуальной машины, просто добавив больше виртуальных ЦП.

Вы проверили, нет ли проблем с производительностью iSCSI SAN? Проверьте графики запросов на чтение и запись на диск и, конечно же, скорости чтения и записи на диск и сравните их с данными члена физического кластера.

Возможно, некоторые из ценностей могут указать вам правильное направление.

Я не решаюсь вводить это в качестве ответа, потому что у меня нет конкретной поддержки для этого, но это может быть причиной проблемы, которую вы видите. Я слышал раньше (и этот page, поддерживает это), что планирование ЦП VMWare труднее, когда у виртуальной машины несколько ЦП. Для виртуальной машины с одним ЦП необходимо запланировать только один хост-процессор. Однако, когда виртуальная машина имеет более одной, VMWare должна запланировать несколько процессоров, которые будут доступны для виртуальной машины, что может занять больше времени. Это будет становиться все труднее и труднее планировать по мере увеличения числа процессоров виртуальной машины, а это означает, что виртуальная машина фактически видит худшую производительность, потому что ей труднее выделить время процессора.

Кроме того, я перечитал ваш последний комментарий, и в последнее время у меня также были проблемы с конкуренцией в vSphere. Еще одна вещь, которую вы, возможно, захотите попробовать (если вы еще этого не сделали), - это увеличить выделение ресурсов для этой виртуальной машины, хотя на данный момент это единственная виртуальная машина.

Чтобы уточнить, вы используете 8-ядерный (2 x 4) ESX-блок для размещения одной виртуальной машины с 8 виртуальными ЦП и не видите реального увеличения производительности для 5-го и последующих виртуальных ЦП, верно? Могу я задать вопрос, почему вместо этого вы не используете тот же хост в качестве физического SQL-сервера? Вы используете там лицензии Enterprise Plus на сумму около 5-6 тысяч долларов, что не принесет никакой пользы (даже если вы не заметили проблем с производительностью) - мне не жаль.