Tabela de conteúdos
Swarm
Criando um cluster swarm
Para construir um cluster swarm você vai precisar de:
- Um ou mais nós (máquina virtual ou física) em rede (virtual ou física).
- Um volume NFS a ser compartilhado entre os nós em um mesmo ponto de montagem.
Passo a passo:
- Instale o Docker em cada nó.
- Monte o volume NFS em
/share
em cada nó. - Instale o plugin Docker
local-persist
em cada nó. instruções - Ative o modo swarm no nó líder. Para isso rode
docker swarm init
. Anote a saída desse comando. Ela dará as orientações para realizar a entrada dos demais nós no swarm. - Registre os demais nós no swarm do líder. Siga as orientações obtidas do comando
docker swarm init
executado no líder. - Registre esse cluster swarm no portainer. O portainer possui assistentes para ambientes docker. Ir para o Portainer
TODO: Expandir discussão.
O plugin local-persist
permite que sejam criados volumes Docker fora do /var/lib/docker/volumes
, ou seja, no /share
.
Volumes
Os volumes docker são privados em cada nó. Ou seja, são criados no nó que o container subir. Se o container cair de um nó e subir em outro, outro volume será criado naquele novo nó.
TODO: Exemplos
Precisamos de volumes compartilhados entre os nós, de modo que se um container no nó A cair e subir no nó B ele encontre em B o mesmo volume que havia em A.
TODO: Exemplos
Obtemos isso especificando que o volume do container deve residir no host em /share
. O /share
deve ser uma montagem NFS existente em todos os nó do cluster.
O Docker não permite volumes fora de /var/lib/docker/volumes
. Para conseguirmos especificar o local onde o volume reside no host usamos o local-persist
.