我正在尝试在远程虚拟机上使用Powershell远程调用“厨师本地模式”。
我使用的是Powershell代码:invoke-command -session $session -ScriptBlock{}
调用Chef recipe的代码在远程VM远程桌面Powershell窗口中正常工作。
但它始终无法进入该配方的“调用msi”步骤。(顺便说一下,我正在使用官方厨师SQL Server配方)。
错误日志没有显示任何内容,但它看起来就像我在远程VM上本地安装时手动强制关闭SQL Server安装应用程序的弹出窗口。
关于新窗口spawn或其他东西的Powershell远程控制有限制吗?
我有类似的问题直接使用Powershell脚本调用MSI,我必须首先安排Windows任务并立即启动它。
答案 0 :(得分:0)
PowerShell远程处理受到严格限制,请参阅Quota Management for Remote Shells,最重要的是MaxMemoryPerShellMB
,默认值为1GB。即使非预期的SQL安装正确,由于此约束,MSI可能会耗尽内存。可以修改默认值,请参阅Learn How to Configure PowerShell Memory。
但很可能您无法正常运行无人参与的安装。远程会话不允许与桌面交互,所以不,它们不能生成窗口。阅读Install SQL Server 2014 from the Command Prompt和Install SQL Server 2014 Using a Configuration File。只有在本地验证无人参与安装正确后,才尝试远程运行它。
我不知道“官方SQL Server”的配方是做什么的,但我不相信任何此类配方。我会确保运行正确的无人值守安装并从中构建自己的配方。
答案 1 :(得分:0)