Contributor
Contributor

Вопрос о CPU Ready и Resource Limit

Здравствуйте

Существует проблема, она не столько принципиальная, сколько хотелось бы понять принцип работы гипервизора. Итак, для некоторых задач для веб сайта в хостинг провайдера был арендован выделений виртуальный сервер с 2000 Mhrz и 1Гб оперативки. В процессе работы было выявлено жуткие тормоза в работе(подключение только через vSphere client к ESX4i), показатель CPU Ready 20000ms, 4 CPU по 500 Mhz, по 5000 мс на каждый. Служба поддержки объясняет что это через ограничения ресурсов, CPU Ready большой, потому что гипервизор ограничивает ресурсы и не дает процессору больше 2000.

0 Kudos
12 Replies
Contributor
Contributor

а и VM OS Windows Server 2003 Enterprise Edition 32 bit

CPU Ready 20000 мс в момент нагрузки cpu на 100%(например CPU burn-in тест)

0 Kudos
Virtuoso
Virtuoso

Какой процессор (есть ли поддержка NUMA)?

А значения CPU %RDY и CPU %CSTP у вас есть?

:smileyplus:

А изменить конфигурацию на 1 vCPU и посмотреть на производительность реально?

0 Kudos
Immortal
Immortal

Олег, объясните, пожалуйста, а зачем при лимите в 2000 нужно 4 процессора?


---

MCSA, MCTS Hyper-V, VCP 3/4, VMware vExpert '2009

http://blog.vadmin.ru

EMCCAe, MCITP: SA+VA, VCP 3/4/5, VMware vExpert http://blog.vadmin.ru
0 Kudos
Contributor
Contributor

какой процессор не знаю, так как это хостинг в провайдера. CPU %RDY и CPU %CSTP соответственно сказать не могу, поскольку нет доступа к ssh. На 1 процессоре CPU Ready 5000 ms в момент нагрузки.

0 Kudos
Contributor
Contributor

Это вопрос к администраторам хостинга ☹, с боем убедил на 1 процессор и получил только 5000 мс в момент нагрузки. Вопрос в том нормально ли это? (такой показатель CPU ready когда установлены лимиты)

0 Kudos
Expert
Expert

что то мне подсказывает что затык имено из за 4-х vCPU. Вам бы и одно хватило и проблем меньше было. Плюс также, что провайдерские админы что то перемудрили и могли назначить вам HT ядра вручную.

Оставьте 1 vCPU для начала и посмотрите что будет.

-


VMware vExpert 2010, 2011 - http://vm.pro-it.kz
0 Kudos
Virtuoso
Virtuoso

Если клиентом vSphere пускают то процессор должен отображаться на первой вкладке.

Для ваших тестов судя по динамике (20000 -> 5000) 4vCPU вам даром не нужны Smiley Happy, но оговорюсь вы тестируете не нагрузочным тестированием веб сервер, а CPU-burn что не одно и тоже .... Веб сервер как стал шевелиться при одном vCPU?

0 Kudos
Contributor
Contributor

Там не совсем веб сервер, на виртуалке должен стоять софт для кодирования видео.

0 Kudos
Expert
Expert

Вообще такое значение возможно.

Ради эксперимента на одном тестовом веб сервере под FreeBSD сейчас сделал лимит в 500Мгц и рестартанул машину, при загрузки получил макс. значение в 16800 мс. После 18-20 мс стабильно держится.

-


VMware vExpert 2010, 2011 - http://vm.pro-it.kz
0 Kudos
Virtuoso
Virtuoso

IMHO Для кодирования видео (и не приведи господи его дистрибуции) вам лимита 2000 будет недостаточно Smiley Sad.

0 Kudos
VMware Employee
VMware Employee

Логика расчетов следующая:

1) 20 000мс = 100 % процессорного времени.

2) если у ВМ 1 vCPU, 100% = тактовой частоте

3) гость может "адресовать" 100%, но гипервизор выполнит лишь часть - до limit.

4) все, что от limit до 100% попадет в очередь - т.е. отобразится в CPU Ready.

если у вас limit ограничен 2000 MHz, и CPU Ready равен 5000, это значит что тактовая частота процессора сервера равна 2500 MHz.

Если все так, то описываемая ситуация не является неправильной.

CPU Usage, т.е. потребляемые мегагерцы, должен быть равен 15 000мс\75%.

--

-- http://www.vm4.ru/p/vsphere-book.html
Contributor
Contributor

там своя специфика с кодированием, и для конкретно моих задач 2000 хватит, но только честных 2000 ☺

0 Kudos