Поделиться через


Виртуальные контроллеры домена

Жаркой осенью, 4 года назад не утихали споры по поводу виртуализации контроллеров домена под управлением самой совершенной серверной ОС Windows 2008R2. Было сломано много копий, и лучшие умы боролись с решением задачи. Что характерно, споры не затихают и сегодня, поскольку существует множество слухов из серии «PDC очень нагружает систему, намного больше, чем другие DC», или «надо все виртуализировать по любому, поскольку это не страшно, и вендоры одобряют».

Давайте разбираться.

С новыми возможностями  WS 2012, такими как VM-Generation ID, вопросы виртуализации вроде как отпали совсем, и виртуализировать контроллеры стало можно без страха и упрека. И Microsoft прямо говорит в документации, virtualize, virtualize, virtualize! Но:

«Maintain physical domain controllers in each of your domains. This mitigates the risk of a virtualization platform malfunction that affects all host systems that use that platform.»

http://technet.microsoft.com/en-us/library/virtual_active_directory_domain_controller_virtualization_hyperv(WS.10).aspx

Есть еще нюанс, помогающий виртуализировать все контроллеры:

“Windows Server 2012 introduces an “anti-affinity” function so you can specify that two particular VMs shouldn’t run on the same host. This would defeat the benefits of guest clustering. VMM 2012 SP1 supports this, as well as extending this functionality to non-clustered, standalone hosts it also manages”

http://technet.microsoft.com/en-us/magazine/jj663520.aspx

Не нужно забывать также и про Azure, к котором также можно создать полностью виртуальную инфраструктуру. Вместо облака, конечно, можно использовать свой датацентр. Но так как же быть с физикой?

Все просто. В первой ссылке ясно рекомендуется, но не требуется держать несколько или один контроллер на физике. Нужно стараться избегать единых точек отказа инфраструктуры, Avoid Creating Single Points of Failure. Эти рекомендации были даны для 2008 R2б но справедливы также и в 2012 R2.

Напоследок, немного ТЗ:

Никаких best practices (или, как говорят более осторожные коллеги, current recommendations) НЕ СУЩЕСТВУЕТ :)

Есть только requirements. Почему это так? Да потому, что рекомендации меняются со временем. Потому, что идеальных рекомендаций не бывает, бывают только применимые к текущим требованиям. Зачастую видно, как кто-то бодро применяет все рекомендации всех-на-свете вендоров и радуется, говоря, что все сделано круто и хорошо. Это печально, поскольку в этот момент просто водят пальцем по бумажке, отключив голову и все «применяют». Такое часто случается, и часто среду стараются подогнать под рекомендации, забывая про требования. Потом у «бестпрактикеров» возникает недоумение, «как же так, я вот все сделал, как написано, а не работает. Это все потому, что ОС плохая».

Применительно к генеральной линии статьи хотелось бы пояснить, что взвесив все риски и промоделировав ситуации, можно все виртуализировать. Или нельзя :). Все зависит (всегда) от Ваших требований к среде.

См. также [[Локальная учетная запись CLIUSR]]