当数据库与 Web 服务器分离时,我可以使用 powershell 脚本来安装 db/website 吗?

当数据库与 Web 服务器分离时,我可以使用 powershell 脚本来安装 db/website 吗?

我的老板正在度假,我本应在他回来之前完成这个安装脚本。不幸的是,我意识到我开发的脚本无法在目标服务器设置上运行,而我对它了解不够,不知道如何解决。

该服务器正在运行 SQL Server 2008 R2 标准 SP1,我的安装脚本是 PowerShell v1,需要访问数据库服务器上的两个管理单元和 Web 服务器上的一个管理单元。

他将 Web 服务器与数据服务器分开,这样数据服务器只能通过 Web 服务器桌面的 RDP 访问。我在我的设置上开发的脚本运行良好,但那是因为我的 Web 服务器和数据服务器没有分开。在他的设置上,我可以在数据服务器上成功运行安装的 DB 部分,在 Web 服务器上成功运行网站部分,但他希望我为安装使用单个脚本。

我不知道如何让这两个实例相互通信以实现这一点。是否可以将其作为单个脚本运行?我甚至不知道如何开始。

答案1

在相关服务器上配置PowerShell远程会话:

Enable-PSRemoting

然后你的脚本就可以连接到它们了:

$s = New-PSSession server.domain.local
Import-PSSession $s
... continue script, remote cmdlets will now be available ...

如果你想要一个交互式的“shell”体验,只需运行

Enter-PSSession server.domain.local

根据您想要做的事情,可能还有其他选项、​​参数和命令需要调用;但这至少应该给您正确的方向强有力的推动。

答案2

这里有很多选择。在谷歌上搜索“远程安装”、“远程 powershell”、“远程执行”等都可以帮到你。

由于整个过程都在 PowerShell 中,因此您应该使用 WinRM: http://technet.microsoft.com/en-us/magazine/ff700227.aspx

WS-Management 协议和在 Windows 中实施 WS-Management 的 Windows 远程管理 (WinRM) 服务支持 Windows PowerShell 远程处理功能。运行 Windows 7 及更高版本的计算机包括 WinRM 2.0 或更高版本。在运行早期版本的 Windows 的计算机上,您需要根据需要安装 WinRM 2.0 或更高版本(如果受支持)。目前,Windows Vista Service Pack 1 或更高版本、Windows 7、Windows Server 2008 和 Windows Server 2008 Release 2 支持远程处理。

相关内容