Мы планируем перестроить наше небольшое производственное предприятие с резервными серверами с установкой IIS, .Net 4, MSSqlServer 2003.
Предыдущая конфигурация с тремя серверами развивалась органически и имела множество настраиваемых вручную частей, которые как бы связаны вместе, но не полностью. К тому же история развертывания - это набор неверсированных скриптов PowerShell, которые работают большую часть времени. То же самое с файлами конфигурации, немного отличается между производством и разработкой (и не автоматически сгенерированным способом). То же самое с ведением журнала, мониторингом и т. Д.
Мне любопытно, есть ли консенсус относительно того, как такие вещи должны быть настроены в соответствии с соглашением о конфигурации, чтобы минимизировать усилия по системному администрированию.
В мире Ruby, похоже, существует консенсус относительно образов виртуальных машин + Chief / Puppet + GitHub. Или сервисы вроде EngineYard для внешнего хостинга. Но мне не удалось найти аналогичный совет для среды MS / .Net.
Я ищу недорогое решение, а не универсальное корпоративное программное обеспечение, которое было бы излишним для 4-6 виртуальных машин.
Если вы используете любую лицензию vSphere, кроме бесплатной, вы можете настроить свою виртуальную машину Windows и использовать ее в качестве шаблона. vSphere позволит вам выполнить развертывание на основе этого шаблона и применить настройки (например, задать имя системы, настроить параметры IP, ввести ключ продукта).
Вы можете прочитать больше об этом здесь: http://vinf.net/2009/07/09/how-to-deploy-a-windows-2008-server-from-a-template-with-vsphere/
Честно говоря, групповая политика предназначена для управляемой конфигурации и, вероятно, может быть использована для того, что вы хотите. (Это было изобретено не только для управления настольными компьютерами.) Вы можете управлять ими с помощью Chef / Puppet / CFEngine, но мне кажется, что Windows - это второсортный гражданин в Chef.
Chef и Puppet написаны с мышлением * nix, что «все является файлом», а в Windows такое редко бывает.