TDC 2015 Floripa - Criando ambientes de forma simples com Docker e Ansible
-
Upload
stefan-teixeira -
Category
Software
-
view
469 -
download
2
Embed Size (px)
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 [email protected] / 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: [email protected]• 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