TDC 2015 Floripa - Criando ambientes de forma simples com Docker e Ansible

Post on 20-Jul-2015

472 views 2 download

Transcript of TDC 2015 Floripa - Criando ambientes de forma simples com Docker e Ansible

Globalcode – Open4education

Criando ambientes de forma simples com Docker e Ansible

Stefan Teixeirastefanfk@gmail.com / stefanteixeira.com.br

About meStefan Teixeira

• QA / DevOps• Bacharel em Ciência da Computação pela UFRJ• MBA em Garantia de Qualidade de Software pela Escola Politécnica da

UFRJ• Mantém um blog técnico sobre testes: stefanteixeira.com.br• Entusiasta de Testes Automatizados, Agile Testing e da cultura DevOps

Contatos:

• E-mail: stefanfk@gmail.com• Twitter: twitter.com/stefan_teixeira• Facebook: facebook.com/stefan.teixeira• LinkedIn: linkedin.com/in/stefanteixeira• GitHub: github.com/stefanteixeira• SlideShare: slideshare.net/stefanteixeira

Containers x VMs

História dos Containers

• Oracle Solaris Zones (2004)

• LinuX Containers (LXC - 2008)

• Google’s lmctfy (“Let Me Contain That For You” - 2013)

• Docker (2013)

Docker Hub

Ansible• Gerenciamento de configuração radicalmente simples

• Agentless (precisa somente de Python e SSH :)

• Arquivos (playbooks) escritos em YAML

• Quase 300 módulos para executar tasks

• Facilmente extensível

• Desenvolvido em Python

Idempotência

• "É a propriedade de executar uma operação que produz o mesmo resultado independente de ser executada uma ou múltiplas vezes"

• Assim como outras ferramentas (Puppet, por exemplo), o Ansible garante que a mesma configuração seja mantida mesmo que você rode um playbook uma ou múltiplas vezes

Playbook

Módulos

Docker modules

Docker + Ansible = <3

https://developer.rackspace.com/blog/move-fast-and-dont-break-things-testing-with-jenkins-ansible-and-docker/

mongodb-docker

mysql-docker

app-scala-docker

memcached-docker

app-node-docker

app2-node-docker

app3-node-docker

Case

Test ServerCI Server

Demo

• Config do Ansible no host (/etc/ansible/hosts)

• Projeto de exemplo no GitHub: https://github.com/stefanteixeira/demo-ansible-docker

• Dockerfiles

• Playbooks

• Execução de playbooks

• Vendo o resultado na máquina (EC2)

Livros recomendados

Referências• Projeto de exemplo da demo - https://github.com/

stefanteixeira/demo-ansible-docker

• Palestra “How Twitter Uses Ansible” - https://www.youtube.com/watch?v=fwGrKXzocg4

• The Docker Book - http://www.amazon.com.br/The-Docker-Book-Containerization-virtualization-ebook/dp/B00LRROTI4

• Ansible for DevOps - https://leanpub.com/ansible-for-devops

Globalcode – Open4education

Obrigado!

Stefan Teixeirastefanfk@gmail.comstefanteixeira.com.br@stefan_teixeira