导出当前DSC配置导入到另一台服务器(以IIS网站为例)

Export current DSC configuration for import to another server (using IIS website as an example)

我正在努力了解 PowerShell 4.0 中的 DSC,什么是可能的,什么不是。我已经安装 xWebAdministration Module.

我可以在 IIS 中创建一个网站,然后以某种方式将其导出到 .ps1 文件(我认为是 MOF 格式)。例如,txWebAdministration 有一个名为 xWebAdministration\Examples\Sample_xWebsite_NewWebsite.ps1 的示例。我可以使用现有网站来构建这样的文件吗?还是我必须手动输入所有内容?

我基本上是想跳进去尝试一些事情,而不是从头到尾阅读。我希望 Get-DscConfiguration 能以某种方式读取我的 IIS 配置并创建这样一个文件。

例如,在 SQLServer 中,您可以使用 SQL Studio Management Studio (SSMS) 的图形用户界面创建数据库和表格,然后导出脚本重新创建这些另一台服务器上的相同表。

DSC 可以实现这样的概念吗?还是我错过了机会。

目前没有此类内容。

请记住,DSC 非常新而且非常稀疏。 DSC 资源工具包由 Microsoft 人员创建,但不受支持或完全不受官方支持。

您可以编写脚本来解析现有网站并将其导出到 PS1 中的配置,或者甚至直接导出到 MOF(它也是一个文本文件),但没有什么比目前存在此功能。

此时您最好的选择可能是手动输入。

有一个工具可以从名为 GuardRail 的现有机器创建 DSC 配置,但我认为它不支持实验性 xWebAdministration 模块。正如 briantist 所说,创建一个使用 WebAdministration 命令行开关生成 DSC 配置的 powershell 脚本并不难。

事实上今天有个同事问了我同样的问题,我正在考虑写一个。如果您愿意,我将在几天内使用可以执行此操作的脚本更新我的答案。