Chef: windows_batch: как передать пароль администратора Windows с рабочей станции Chef на узел Chef

Я запускаю серверы Windows (выпуск 2008r2 Datacenter Edition) на Amazon EC2 с помощью Chef. В этом сценарии я запускаю скрипт.

railsdev@deb7> knife ec2 server create -VV -I ami-xxxxxxx --flavor=m1.medium --groups=windows_target --region=us-east-1 --ssh-key=deployme --identity-file=/home/railsdev/Development/me-chef-repo/.chef/deployme.pem --bootstrap-protocol winrm --template-file=/home/railsdev/Development/me-chef-repo/windows-chef-client-msi.erb --user-data=/home/railsdev/Development/me-chef-repo/enable-winrm.ps1 --run-list 'role[me-win]' --node-name=jgodse-xx-65

Этот скрипт успешно запускает узел EC2 и запускает мои рецепты.

Один из рецептов Chef, который я хочу запустить, использует ресурс windows_batch следующим образом:

windows_batch "start_me" do
   cwd "C:/me"
   code 'C:\Ruby193\ruby.exe C:\me\start_me.rb'    
end

'start_me.rb' запускает службу Windows, которая запускается от имени пользователя «Локальная системная учетная запись». Однако мне нужно запустить службу от имени администратора, и поэтому мне нужно передать скрипту пароль администратора.

Я предполагаю, что новый windows_batch будет выглядеть так:

windows_batch "start_me" do
   cwd "C:/me"
   code 'C:\Ruby193\ruby.exe C:\me\start_me.rb pass=' + passwd    
end

Я знаю, что пароль Windows существует на стороне рабочей станции Chef в переменной ножа Chef::Config[:knife][:winrm_password]. Однако, когда я сбросил Chef::Config с этим ресурсом:

windows_batch "Chef::Config[:knife]" do
  code <<-EOHH
  @ECHO OFF

  ECHO Chef::Config[:knife] = #{Chef::Config[:knife].inspect} >> %SystemDrive%\plchef_config_knife_jgodse.txt
  EOHH
end

Я получил большой жирный "{}" в plchef_config_knife_jgodse.txt на узле Chef. то есть данные Chef::Config[:knife] не попали с рабочей станции Chef на узел Chef.

Как я могу получить пароль администратора Windows, который хранится в Chef::Config[:knife][:winrm_password] на сервере, чтобы он был доступен поставщику windows_batch(){}, который работает на узле Chef внутри одного из моих Рецепты от шеф-повара?


person Jay Godse    schedule 18.07.2013    source источник


Ответы (1)


Вы не можете сделать именно то, что вы просите. Параметры конфигурации инструмента администратора, ножа, никак не передаются на сервер.

person Julian Dunn    schedule 12.06.2014