CRIANDO E CONFIGURANDO SERVIDORES NA AMAZON UTILIZANDO FERRAMENTAS DO CHEF: KNIFE-SOLO E KNIFE-EC2

Já pensou em criar e configurar servidores com apenas 3 comandos?

Imaginamos que a cozinha (kitchen) seja onde ficam as receitas (cookbooks), e os servidores (nodes) os pratos das receitas a serem criados.

Primeiramente vamos configurar a kitchen:

SO: Ubuntu Server 12.04.3 LTS

1 – Instalar componentes necessários para rodar as API’s Knife-solo e Knife-ec2

#apt-get update
#apt-get install build-essential
#apt-get install ruby1.9.1-full

2 – Instalando knife-ec2 e knife-solo

#gem install knife-ec2
#gem install knife-solo

3 – Definindo Path de configurações

#knife solo init /opt/kitchen/--librarian

4 – Configure o arquivo /opt/kitchen/.chef/knife.rb

cookbook_path    ["cookbooks","site-cookbooks"]
node_path        "nodes"
role_path        "roles"
environment_path "environments"
data_bag_path    "data_bags"

knife[:berkshelf_path]="cookbooks"
knife[:aws_access_key_id]="Chave de acesso da conta na Amazon"
knife[:aws_secret_access_key]="Chave Secreta da conta na Amazon"
knife[:chef_mode]="solo"
knife[:region]="us-east-1"
knife[:availability_zone]="us-east-1c"

5 – Copie sua chave SSH da amazon para acesso aos servidores:

/opt/kitchen/.chef/ssh_key.pem

6 – Crie o arquivo JSON de acordo com os cookbooks que necessita executar /opt/kitchen/nodes/ip_server.json

{"run_list":["recipe[cookbook_aplication]","recipe[cookbook_database]"]}

Com a kitchen devidamente configurada podemos criar e configurar as máquinas na Amazon:

1 – Executar o comando para criar um server na amazon. Lembrar de estar setado a pasta /opt/kitchen:

/opt/kitchen# knife ec2 server create --private-ip-address [ip_server]-f [tamanho_instancia]-I [AMI]-g [security_group_id]-s [subnet_id]
-T NAME=[tag_name]-S [ssh_key]

OBS: exemplo de tamanho_instancia: m1.small, t1.micro

2 – Instalar chef-solo no server criado:

/opt/kitchen# knife solo -i .chef/ssh_key.pem prepare ubuntu@ip_server

3 – Executar cookbooks no server criado:

/opt/kitchen# knife solo -i .chef/ssh_key.pem cook ubuntu@ip_server

Pronto. O seu server está criado e configurado de acordo com os cookbooks definidos na sua run_list. Esta técnica permite centralizarcookbooks e facilita a criação e reconfiguração de servidores na Amazon.

Escrito por: Olavo Queiroz Guimarães (olavoqueirozg@gmail.com) e Edmagne Lira Santos Santos (edmagne@bedigital.com.br).

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s