Как минимизировать использование памяти и установить роль Hyper-V на Windows Server 2008 R2 с уже установленным SQL Server

Как установить и настроить роль Hyper-V на Windows Server Std. 2008 R2 с уже установленным SQL Server 2012. SQL Server является приоритетом на этой машине. Будет установлена ​​только одна виртуальная машина, которая будет использоваться для тестирования восстановлений после аварийного восстановления из резервных копий образов серверов. По завершении тестирования виртуальную машину можно удалить, чтобы мы могли протестировать другой сервер. Другие серверы аналогичны или менее мощны с меньшим объемом памяти.

Я не планирую создавать для этого раздел. На данный момент у нас достаточно места на наших RAID-дисках. Я думал использовать статическую память и ограничить виртуальную машину 4 ГБ ОЗУ и установить 12 ГБ для SQL Server. Сервер для размещения Hyper-V - это Dell PowerEdge 2900 с 16 ГБ ОЗУ, Intel Xeon, E5345 @ 3,33 ГГц (2 процессора).

Обсуждение:

  1. Сколько памяти будет использовать Hyper-V, если у нас НЕ установлены какие-либо виртуальные машины или используются / тестируются виртуальные машины?
  2. Сколько памяти будет использовать Hyper-V, если у нас действительно установлена ​​виртуальная машина и мы тестируем восстановление (очень простое тестирование).
  3. Есть ли способ легко «выключить» Hyper-V, когда он нам не нужен? или надо постоянно менять настройки памяти?

ОБНОВЛЕНИЕ 9 ноября

Я должен был упомянуть, что мы установили следующие роли сервера: Active Directory, DNS, File Services, WSUS, IIS. Хотя IIS используется только для WSUS. Мы используем два контроллера домена в нашем домене. Это, пожалуй, самая большая причина, по которой нам не следует также устанавливать SQL-сервер и добавлять роль Hyper-V. Поэтому мы планируем купить отремонтированный сервер Dell, чтобы протестировать аварийное восстановление, и не использовать Hyper-V вообще. Это позволяет тестировать восстановление изображений на нашем производственном сервере, что, на мой взгляд, является разумным.


person user610064    schedule 01.11.2012    source источник


Ответы (1)


  1. Это зависит от вашего сервера и установленных ролей, а также от того, открываете ли вы консоль управления Hyper-V или нет. В вашей конфигурации со только что загруженным сервером, на котором вы не открывали консоль управления Hyper-V, он, вероятно, будет в диапазоне 10-20 МБ активной памяти и практически без ЦП (вероятно, ближе к 10, чем 20). Хороший способ получить довольно хороший показатель для вашей настройки - это выполнить чистую загрузку без запущенных виртуальных машин и проверить свободную память, затем остановить службы Hyper-V и снова проверить количество. Отключите эти службы, перезагрузитесь, проверьте объем памяти, затем, наконец, запустите службы и снова проверьте объем. Разница между первыми двумя и вторыми двумя числами даст вам хорошее представление о том, сколько Hyper-V занимает в вашей конфигурации.

  2. Использование памяти Hyper-V увеличивается по мере использования, но базовая служба Hyper-V в основном просто запускает экземпляры vmwp.exe, на которых работает каждая виртуальная машина. Процессорное время отделяется от основного процессора, а основная ОС гарантирована собственным (довольно большим) кусочком процессора и памяти. Один vmwp.exe запускается для каждой виртуальной машины, и они занимают 20-50 МБ (в зависимости от конфигурации виртуальной машины) плюс объем памяти, выделенной виртуальной машине. Время ЦП трудно оценить, поскольку оно также зависит от конфигурации виртуальной машины и нагрузки сервера, но обычно время ЦП виртуальной машины играет вторую строку для ОС хоста. Хороший способ подсчитать это количество - выполнить чистую загрузку без запущенных виртуальных машин, отметить объем свободной памяти, а затем запустить обычную виртуальную машину. Подождите, пока эта виртуальная машина завершит загрузку, а не количество свободной памяти, затем войдите в виртуальную машину и, наконец, еще раз взгляните на объем свободной памяти на сервере. Разница между этими 3 должна дать вам хорошее представление о том, что используется.

  3. Hyper-V - это, по сути, службы и некоторые процессы, которые выполняются, по 1 на каждую виртуальную машину. Вы можете остановить Hyper-V, если остановите службу nvspwmi (служба управления сетью Hyper-V), службу vmms (управление виртуальными машинами Hyper-V) и службу vhdsvc (служба управления образами Hyper-V). ПРИМЕЧАНИЕ: ВЫ ДОЛЖНЫ ВЫКЛЮЧИТЬ ВСЕ ВИРТУАЛЬНЫЕ МАШИНЫ ПЕРЕД ОСТАНОВКОЙ ДАННЫХ УСЛУГ. Каждая виртуальная машина работает внутри экземпляра vmwp.exe. Они отключатся, когда вы остановите Hyper-V. ПРИМЕЧАНИЕ. Эти имена различны для server 2012. Хотя это не устранит 100% памяти / процессора, используемого Hyper-V, оно должно легко уменьшить их на 99+ процентов.

person William M. Rawls    schedule 06.11.2012
comment
Я слышал, что делать то, что я хочу, не рекомендуется. Сочетание ролей с Hyper-V никогда не рекомендуется и не поддерживается, по словам партнера Microsoft. Они сказали сделать SQL-сервер виртуальной машиной и установить свой хост ТОЛЬКО с включенной ролью Hyper-V. - person user610064; 07.11.2012
comment
Да это правда. В идеале сервер с ролью Hyper-V должен быть первым, средним и последним гипервизором (будь то единственное, что он делает). Однако в лабораторных и тестовых настройках может оказаться неизбежным добавление нескольких ролей к гипервизору. Тем не менее, вообще говоря, вы можете запускать любые дополнительные роли на виртуальных машинах. Это становится очень удобным, когда нужно вернуть это пространство обработки (которое использует SQL Server). - person William M. Rawls; 09.11.2012
comment
В вашем случае это звучит так, будто выделенный Hyper-V может быть, а может и не быть подходящим вариантом. Нет ничего, что говорило бы, что у вас не может быть Hyper-V плюс другие вещи. Я сам это сделал. В вашем случае казалось, что Hyper-V не так важен, как SQL Server. Вы получите (небольшой) удар при запуске SQL Server на виртуальной машине. Возможно, вы захотите протестировать это и посмотреть, что лучше всего подходит для вас. - person William M. Rawls; 09.11.2012