В нашем отделе есть машина с 88-ядерным процессором. Представьте, что есть 11 исследователей, которые хотят использовать машину, когда им нужно протестировать новый подход. Мы сделали 11 виртуальных машин на хосте VMWare ESXI, по одной для каждого исследователя.
Вопрос в том, как разделить ЦП между виртуальными машинами, чтобы достичь следующего: (так что это честно и может использоваться наилучшим образом)
Мое предложение состояло в том, чтобы назначить все 88 ядер каждой виртуальной машине и выделить каждую 1/11 мощности процессора зарезервированной . Напротив, наш системный администратор хотел назначить каждой виртуальной машине 8 ядер. Он рассудил, что если одна виртуальная машина, например, получает все ядра на 100%, когда другая виртуальная машина пытается использовать ЦП, она получает только зарезервированное количество, а не 50%.
На основе того, что я прочитал здесь и здесь Я предполагаю, что VMWare ESXI освободит ресурсы и передаст их второй виртуальной машине в случае, упомянутом выше. Кто-нибудь может нам помочь?
Мое предложение состояло в том, чтобы назначить все 88 ядер каждой виртуальной машине и дать каждой 1/11 мощности процессора зарезервировано.
ПОЖАЛУЙСТА, не делайте этого, пожалуйста - возможно, вы не были на курсах vSphere, верно?
Не используйте никакую форму распределения ресурсов, пока не получите проверенная проблема. Что бы вы ни делали, не выделяйте больше виртуальных ЦП, чем на самом деле есть у ваших физических сокетов - то есть 22 в данном случае - вы можете сделать это, если действительно хотите, но в целом это ужасная идея (Google 'NUMA' и 'vNUMA 'если у вас будет время).
Я бы выделил 4, 6 или 8 виртуальных ЦП на каждую виртуальную машину и просто позволил ESXi работать с этим, он предназначен для того, чтобы запускать все самостоятельно.