Estou fazendo muitas coisas com o Chef em meu projeto atual e estava procurando uma maneira de testar a arquitetura cliente-servidor do Chef. Eu poderia conseguir algumas máquinas não utilizadas com o pessoal de TI, mas isso não é uma coisa legal de se fazer.
Que tal isso – vários ambientes em minha própria máquina de desenvolvimento, que eu posso estragar o quanto quiser, apagar tudo e reiniciar meu teste quantas vezes eu quiser em um flash? Isso seria fofo!
Diga olá para o Vagrant. Eu tenho o Vagrant configurado na minha máquina, e você também deve tê-lo. Se você ainda não fez isso, este post irá ajudá-lo a fazer exatamente isso.
Chega de bate-papo, vamos descobrir o que é multi-ambiente.
Eu quero duas máquinas virtuais independentes, uma rodando lucid32 outra rodando precisão32, apenas para a demonstração. Vou usá-los como meus clientes-chef para testar o Chef.
Destruí minha VM existente executando:
vagrant destroy
Modifiquei meu Vagrantfile para ficar assim:
Vagrant::Config.run do |config|
config.vm.define :node1 do |node_config|
node_config.vm.box = "lucid32"
node_config.vm.network :bridged
end
config.vm.define :node2 do |node_config|
node_config.vm.box = "precise32"
node_config.vm.network :bridged
end
end
a máquina lucid32 é node1 e precise32 é node2
Em uma guia do terminal, eu executo:
vagrant up node1
vagrant ssh node1
vagrant @ lucid32: ~ $
e em uma segunda guia:
vagrant up node2
vagrant ssh node2
vagrant@precise32:~$
Ai está .