Chef-client不能在Workstation上运行,但可以直接在服务器上运行

时间:2015-02-26 14:38:23

标签: sql-server-2012 chef

我有一个厨师食谱,为Microsoft SQL服务器运行巧克力安装。从我的工作台运行时

knife winrm [IP] 'chef-client -o "recipe[NetDevMachine::default]"' -m -x 'domain\myuser'

在节点上失败并显示错误: 532459699或有时2022834173或2057043966

但是,如果我以同一用户身份登录VM并在本地运行

chef-client -o "recipe[NetDevMachine::default]"

有效。有谁知道在本地运行chef-client和从工作台远程运行它之间有什么区别?厨师 - 客户在这方面的做法有何不同?两者都从同一个厨师服务器回购中提取食谱。

其他详情

  • 我使用的是同一个用户
  • 我已成功从工作站运行其他配方,只是这个MicrosoftSQLServer安装无法正常工作
  • running" knife winrm [IP]' choco install MicrosoftSQLServer' -m -x' domain \ myuser'也行不通

食谱内容:

powershell_script "choco install MicrosoftSQLServer2014" do
    code <<-EOH
    choco install MicrosoftSQLServer2014
  EOH
end

错误:

[ERROR] Running C:\Users\myuser\AppData\Local\Temp\MicrosoftSQLServer2014\setup.exe with 
/QUIET /IACCEPTSQLSERVERLICENSETERMS /ACTION=INSTALL /INSTANCENAME=MSSQLSERVER /FEATURES=SQL,TOOLS,LOCALDB 
/SQLSVCACCOUNT="NT AUTHORITY\Network Service" /SQLSYSADMINACCOUNTS=BUILTIN\ADMINISTRATORS 
/SKIPRULES=REBOOTREQUIREDCHECK UIMODE=AUTOADVANCE  was not successful. 
Exit code was '-532459699'.

编辑 - 我能看到的唯一区别是一个在前台运行而另一个没有。因此,编译chef-script的位置是/ temp / 2,用于失败的运行。我不知道是否有办法迫使厨师在前台跑步,或者这是否有帮助。

由于

1 个答案:

答案 0 :(得分:0)

我从来没有深究这一点,但仍然不了解如何使用刀具远程运行厨师客户端与直接在VM上运行厨师客户端不同。也许这与远程发送命令时处理凭据或权限有关。

但我确实发现删除chocolatey并将其替换为一个命令行静态安装在chef powershell资源中允许我安装MSSQL。