-
Notifications
You must be signed in to change notification settings - Fork 1
Docker Swarm
- Prover alta disponibilidade
- Orquestração de Containers
- Cluster nativo(built in Docker)
- Simples, fácil instalação
- Limitado comparado com outras ferramentas, exemplo K8S e etc..
Responsável por fazer a orquestração dos containers em caso de indisponibilidade de uma máquina que possua o container
- Nodes: Instâncias de docker engine que participam de um cluster swarm;
- Manager Node: Executam a orquestração e gerenciamento de um cluster(somente um manager por cluster);
- Worker Node: Recebe e executa tarefas disparadas pelo manager, o manager node também é um worker node(default);
- Service: Definição de tarefas para serem executadas no manager ou worker nodes.
- Task: Processo executado dentro do container;
- Load Balancer: Expor services disponíveis para o “mundo externo”
Criando o cluster
Inicializar o cluster swarm através do manager, no qual será gerado um TOKEN
$ docker swarm init –advertise-addr 192.168.1.2
Inserir o TOKEN gerado e rodar o comando nos hosts worker1 e 2
$ docker swarm join –token <TOKEN> 192.168.1.2:2377
No host manager, podemos verificar os nodes do cluster
$ docker node ls
Iniciar um serviço no cluster, o publish é utilizado para expor a porta para fora do cluster
$ docker service create –name demo –publish 80:80 nginx
Listar os services
$ docker service ls
Listar detalhes do service
$ docker service ps demo
Escalar o service
$ docker service scale demo=3
Visualizar o serviço distribuído no cluster
$ docker service ps demo
Abrir a página do Nginx para teste http://localhost:8090
Visitas