Usando o Chef para atualizar uma instância do EC2

2

Eu fui jogado no fundo do Chef na semana passada, e estou preso em uma coisa no momento. Eu criei uma instância na AWS (muitas vezes neste momento) e quando o chef entra para fazer a sua coisa eu recebo um erro de compilação. Tudo bem, vou descobrir o que está acontecendo e reaplicar.

Minha pergunta: Como posso atualizar uma instância existente? Eu posso usar $ knife ec2 server create [coptions] , mas há um comando de atualização correspondente? Meu cérebro quer executar algo como $ knife ec2 server update [AWS instance ID] -x userXXX -r 'recipe[yyy::zzzz]' Eu não vejo atualização como uma opção, então há algo semelhante?

Eu não quero continuar criando e encerrando instâncias enquanto resolvo o que está acontecendo com a receita, eu prefiro aplicar alterações a uma instância existente.

    
por bryan 08.10.2013 / 22:04

2 respostas

3

Experimente faca solo que lhe permite atualizar o servidor remoto com chef-solo ( não chef-cliente) como:

knife solo cook ec2-user@your-node-fqdn -o "your-run-list"

No contexto do servidor do chef, você não atualiza o servidor ec2 remoto, apenas atualiza o objeto node do seu ec2 server, e o chef-client sincroniza suas alterações quando ele é iniciado. Então você só precisa atualizar seu nó / função / ambiente via faca.

    
por 09.10.2013 / 00:44
0

Se o Chef for bootstrapado com sucesso no servidor, execute

knife ssh -m [server-id] chef-client

link

Com o EC2, o server-id é o ID da instância atribuído pela AWS.

    
por 15.10.2013 / 20:46