Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Docker Swarm Cluster

766 views

Published on

Apresentação sobre Docker Swarm, demo de como iniciar uma orquestração de containers Docker no DevOpsDay Brasília.

Published in: Technology
  • Be the first to comment

Docker Swarm Cluster

  1. 1. Containers Cluster Docker Swarm
  2. 2. Fernando Ike @fernandoike fernando.ike@highwinds.com fernando.ike@gmail.com http://www.fernandoike.com
  3. 3. Docker Swarm Docker Swarm e Swarmkit são "AS" ferramentas de gerenciamento de clusters nativo (Engine 1.12) para containers Docker.
  4. 4. Bacanices ● Gerenciamento de cluster integrado com Docker Engine ● Escalável ● Modelo Declarativo de serviço ● Multihost ● Service Discovery ● Balanceamento de carga ● TLS habilitado por padrão ● Rolling Updates ● Compatível com versões anteriores
  5. 5. O que é "Containers Orchestration"
  6. 6. Orquestração de containers “Automação contínua, scheduling, coordenação e gerenciamento de sistemas complexos de componentes em containers e os recursos por eles consumidos" Karl Isenberg
  7. 7. "Container Orchestration Systems" ● Docker Swarm ● CoreOS Fleet ● Kubernetes ● Mesosphere Marathon ● Cloud Foundry Diego
  8. 8. Manager e Workers
  9. 9. Managers ● Gerencia todos os nós de cluster Swarm ● Algoritmo Raft Consensus ● Managers podem ser usados como Workers ● Não use todos os nós como Managers ● Managers também pode ser Workers
  10. 10. Workers ● Workers são os nodes que "rodam" os containers "fim" ● Eles não participam das eleições dos managers ● Eles podem ser promovidos à manager ● Não há um limite de Workers
  11. 11. Raft Consensus Algoritmo para "resolver o problema" de Managers elege o líder Líder é responsável por enviar o status entre todos os managers Caso o líder caia, uma nova eleição é realizado com os restantes
  12. 12. Service Discovery
  13. 13. Preparando a instalação
  14. 14. $for N in $(seq 1 4); do docker-machine create -d virtualbox node$N; done Docker-Machine
  15. 15. $docker-machine ssh node1 $docker-machine ssh node2 $docker-machine ssh node3 $docker-machine ssh node4 No baremetal
  16. 16. $docker info|grep Swarm Check Swarm
  17. 17. $docker-machine ip node1 $docker swarm init --advertise-addr 192.168.99.100 Iniciando o cluster
  18. 18. $docker swarm join --token TOKEN_SWARM 192.168.99.100:2377 Adicionando um node
  19. 19. $docker node ls && docker node promote node3 && docker node ls Criando rede wordpress
  20. 20. $docker network create --driver overlay wordpress && docker network ls Promovendo um Worker para Manager
  21. 21. $docker service create --name mysql --network wordpress --env MYSQL_ROOT_PASSWORD=wordpress --env MYSQL_DATABASE=wordpress --env MYSQL_USER=wordpress --env MYSQL_PASSWORD=wordpress mysql Wordpress
  22. 22. $docker service create --name wordpress --network wordpress --env WORDPRESS_DB_HOST=mysql:3306 --env WORDPRESS_DB_PASSWORD=wordpress --publish 8000:80 wordpress $docker service ls MySQL
  23. 23. $curl || firefox http://IP_NODE1:8000/ $curl || firefox http://IP_NODE2:8000/ $curl || firefox http://IP_NODE3:8000/ $docker service ps wordpress Testando...
  24. 24. $docker service rm wordpress Removendo serviço
  25. 25. Links 1. https://commons.wikimedia.org/wiki/File:Tanjong_Pagar_container_terminal_from_Asia_Square._(13947299293).jpg 2. https://en.wikipedia.org/wiki/File:Container_terminal_northport.jpg 3. https://en.wikipedia.org/wiki/File:BNSF_5216_West_Kingman_Canyon_AZ_(293094839).jpg 4. http://pt.slideshare.net/KarlIsenberg/container-orchestration-wars 5. http://thesecretlivesofdata.com/raft/ 6. http://www.slideshare.net/jfnredes/what-you-need-to-do-containers-orchestration-interdevops-2016-sp 7. http://www.slideshare.net/linux.rafa/docker-112-swarm-mode?qid=c6eea02a-ba53-418e-8900-2b01423dfd4b&v=&b=&from_search=3
  26. 26. Fernando Ike @fernandoike fernando.ike@highwinds.com fernando.ike@gmail.com http://www.fernandoike.com
  27. 27. Bônus
  28. 28. Bônus ● Discovery Service ● Schedule ● Storage ● HealthCheck ● Segurança - TLS ● Mesh ● Rebalance

×