A maioria dos recursos de bootstrap do Windows é focada no Hosted Chef e usa o knife-windows
plugin.
No entanto, isso deve ser possível com o Chef solo.
Se você não está criando uma AMI com chef-client
, o primeiro passo é obter o Full Chef Windows Installer lá.
Felizmente, se bem me lembro, winrm
está ativado por padrão nas AMIs da Amazon do Windows.
Dê uma olhada aqui para uma possível solução de bootstrap: link
Você pode fazer o bootstrap de outras coisas ao mesmo tempo; como Ruby Windows Installer etc. No mesmo processo, pegue seus livros de culinária, papéis, etc. e inicie o provisionamento do seu Chef.
UPDATE
Eu comecei a fazer isso de uma maneira um pouco diferente, usando --user-data-file
ao criar a instância. Isso pode ser usado com a API da AWS, ferramentas de linha de comando ou simplesmente colado na interface da Web quando Ativando a Instância .
Estou usando o Chocolatey , um gerenciador de pacotes, para instalar o chef-cliente.
<script>
@powershell -NoProfile -ExecutionPolicy unrestricted -Command "iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))" && SET PATH=%PATH%;%systemdrive%\chocolatey\bin
cinst chef-client
</script>
Basicamente:
<script>
diz aos scripts de dados do usuário da AWS que temos um arquivo em lote para processar.
@powershell...
(etc) é um comando para instalar o Chocolatey em são documentos .
cinst chef-client
instala o chef-client
package .
Nada disso requer qualquer entrada do usuário. Os dados do usuário são executados como um administrador local.
Todas as AMIs da Amazon executam os dados do usuário na primeira inicialização (por padrão) e não nas inicializações subseqüentes. Portanto, esta é uma maneira muito simples de obter chef-client
no lugar sem precisar se conectar ao RDP ou até mesmo obter sua senha de administrador.