gpt4 book ai didi

windows - 自动应用程序部署

转载 作者:可可西里 更新时间:2023-11-01 13:13:47 25 4
gpt4 key购买 nike

我想在 Windows 2012 R2 基础架构上自动部署应用程序/角色/功能(无人值守),这个项目需要很多小时的编程,这就是我在这里提问的原因。

我想部署以下应用程序和角色:Active Directory、DNS、Sql Server 2012、Citrix XenApp 服务器、Citrix XenDesktop 服务器、Citrix Datacollector、Citrix 许可证服务器、Citrix Storefront 服务器。

所以基本部署会在8台服务器上(已经安装在ESXi上,只配置ip)。

我想象了这个场景:

我将填写一个包含所有信息的 CSV 文件,并执行 Powershell 脚本来部署所有内容,我们可以想象 1 个脚本将为每个组件(sql、ad、dns、citrix 等)调用不同的脚本。

我不想依赖任何工具(sccm、puppet 或其他任何工具),这就是我想从头开始创建它的原因 -> 但也许我错了.

我还了解到,有一项名为 Powershell DSC 的新功能可简化应用程序部署 http://blogs.technet.com/b/privatecloud/archive/2013/08/30/introducing-powershell-desired-state-configuration-dsc.aspx有一个简单的例子:如果你需要 4 个 iis webserver,那么执行这个代码:

Configuration DeployWebServers
{

Node ("test1.domain.com","test2.domain.com","test3.domain.com","test4.domain.com")
{
Windows-Feature IIS
{
Name = "Web-Server"
Ensure = "Present"
}

}
}

DeployWebServers -OutputPath "C:\scripts"
Start-DscConfiguration -path "C:\scripts" -Verbose -Wait -Force

但在我的例子中,每个应用程序/角色或功能只有 1 个服务器,如果我理解得很好,只有当您需要在 (x) 个服务器上部署相同的配置时,此功能才有意义

您有什么建议?我应该选择从头开始编写 powershell 脚本吗?或者选择像 puppet 或 chef 这样的解决方案(更容易),但在这种情况下,我将依赖于工具。

最好的解决方案是使用 sql 数据库 -> 我项目的最终目标是一个带有数据库的 web 应用程序,它将执行我的 powershell 脚本来部署我的基础设施

当然,从这个 Web 应用程序,我将通过表单填充我的数据库,我的 powershell 脚本将查询该数据库以获取信息(IP 地址、客户端名称、域名、密码、用户...)**

感谢您的建议。

最佳答案

Chef 或 Puppet 将是最简单的前进方式,这两种工具已经存在了足够长的时间,您不必担心它们会从实习生中消失。两者几乎都是开箱即用的,并且与您设计自己的系统相比,它们可以让您在更短的时间内启动和运行。

话虽如此,使用 PS 解决方案的一个好处是它不需要在目标框上安装任何代理(连接得益于 WinRM)。最终,您可以将它包装成一个 Powershell 模块,将其交给您的系统管理员,并保留对幕后发生的事情的完全控制。PS 解决方案将使您能够完全控制、更好地理解底层流程——但这将以时间和其他设计难题为代价。

总结一下:如果你有时间、意志或特定用例,那就选择 PS。否则就做大男孩做的事,省得自己重新发明轮子——或者十七岁。

免责声明:我为以前的雇主做过 PS 的事情。

关于windows - 自动应用程序部署,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24288266/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com