2013-03-21 3 views
3

Я пишу скрипт, который настраивает множество различных приложений в Windows (главным образом svn и серверы с открытым исходным кодом для http, dns, mail, ftp и db). Этот сценарий предназначен для запуска на новых/чистых рабочих станциях Windows для новых разработчиков, он автоматически устанавливает все, чтобы создать среду, очень похожую на ту, что в производстве. После его выполнения все выполняется локально, и разработчик может сразу начать работу.Как создать резервную копию и восстановить конфигурацию IIS из сценария

Это не только помогает новым разработчикам, но и всем существующим разработчикам всякий раз, когда происходят изменения во всей системе, все реплицируется локально.

Единственное, что я еще не могу сделать, это сделать какую-то резервную копию IIS-сервера, на котором запущено веб-приложение (оно находится на сервере Prod), и автоматически восстановить его на машине нового разработчика, чтобы он не выполнял Не нужно устанавливать/настраивать IIS локально.

Я читал об использовании appcmd.exe для создания и восстановления резервных копий, но работает только для одного и того же компьютера (он использует ключи шифрования и эти ключи меняются между компьютерами).

Есть ли способ, сценарий, чтобы все IIS было связано с одним сервером и восстановить его на другом сервере без вмешательства пользователя и восстановление восстановленного IIS точно так же, как оригинал?

Заранее благодарен!

Франциско

+0

Ничего себе. Значок Tumbleweed заработал с этим вопросом. Я не могу поверить, что никто не мог или хотел бы ответить на что-то подобное. : - | –

ответ

0

Просто положить это здесь, так что любой, кто попадается это будет иметь представление о том, почему это не ответил. На веб-сайте имеется огромное количество переменных, связанных с ним, что предотвращает любые простые методы для копирования всей конфигурации через один или даже несколько командлетов.

Чтобы начать работу, хотя вы бы хотели ознакомиться с файлом applicationHost.config и как получить доступ к свойствам внутри него, используя Get-WebConfigurationProperty. Один из способов познакомиться с тем, как создавать скрипты против свойств webconfiguration - использовать Редактор конфигурации в IIS. Всякий раз, когда вы вносите изменения в Редактор конфигурации, перед выполнением изменений есть небольшая ссылка под названием «Сгенерировать скрипт», в которой будет вкладка «Powershell», которую вы можете использовать, чтобы помочь вам собрать правильные команды Get/Set для элементов конфигурации в приложенииHost .config файл.

Я создал что-то почти так же, как то, что ищет OP, и охватывает 4 модуля (более 20 000 строк кода) и имеет SQL-сервер, содержащий все элементы конфигурации.

Когда на веб-сайте есть все, от библиотек DLL, которые могут нуждаться в регистрации, IsapiCGI Restrictions и IsapiFilters, учетные записи, привязанные к AppPool, которые могут быть добавлены в определенные локальные группы на сервере, для защиты привязок, для которых требуется сертификат загружается на сервер. Вы можете видеть, что это не просто дело. (и это всего лишь небольшая часть переменных, которые может содержать веб-сайт).

Существует, однако, большой кусок командлетов, которые Microsoft предоставляет вам из коробки, которую вы можете использовать, чтобы помочь вам в разработке чего-то подобного внутри WebAdministration module. Я знаю, что это четыре года, но надеюсь, что кто-нибудь, кто наткнулся на это, найдет полезное.

Смежные вопросы