Contêineres do Docker em vários hosts com o docker-compose

0

Eu uso o docker-compose para executar um pequeno harém de contêineres para dar suporte a um aplicativo. O uso do resolvedor de DNS interno do Docker (por exemplo, db resolve para o contêiner de back-end do banco de dados) é a chave para isso. Eu uso uma rede privada em ponte criada com docker network .

Eu estou querendo saber se existe uma maneira fácil e direta, sem a burocracia do Kubernetes e que, para aproveitar o mecanismo de descoberta do DNS ao distribuir os contêineres em vários servidores físicos. Uma opção é simplesmente criar uma instalação separada do Docker e rede de rede privada em outro servidor e fazer com que esses contêineres atualizem as entradas DNS para eles mesmos no meu servidor PowerDNS na inicialização, e há um mecanismo existente para isso. No entanto, prefiro aproveitar a descoberta de DNS interno do Docker.

Qualquer ponteiro seria apreciado!

    
por Alex Balashov 25.03.2018 / 23:17

2 respostas

0

Eu sugiro que você analise o Docker Swarm, na minha experiência mais fácil de configurar. Ele deve se estender bem do seu docker-compose.yml atual também.

Você já deve ter o swarm se você executar um mecanismo docker recente, basta ativá-lo executando docker swarm init . Você pode experimentá-lo em play-with-docker .

Você pode querer olhar para o github de Bret Fisher para algumas amostras. Esse repo é o material de acompanhamento para o curso da autora da Udemy, que também oferece uma boa visão geral.

    
por 29.03.2018 / 19:37
0

Sim, você pode conseguir isso com o Docker Swarm. O Docker Swarm fornece uma solução para o Docker e compõe limitações com recursos atraentes como:

  • Ele usa a CLI do Docker Engine para criar um enxame de Mecanismos Docker, onde você pode implantar serviços de aplicativo sem nenhuma ferramenta de orquestração adicional. -Swarm é um cluster de motores Docker.
  • Escalonamento automático do gerenciador de enxames para alcançar o estado desejado - ampliação e redução fáceis de escala
  • Descoberta de serviço: os nós do gerenciador de enxame atribuem a cada serviço no enxame um nome DNS exclusivo e os balancetes de carga executando contêineres. Você pode consultar todos os contêineres em execução no enxame por meio de um servidor DNS incorporado no enxame.
  • Atualizações e segurança contínuas - Cada nó no swarm aplica a autenticação mútua e a criptografia TLS para proteger as comunicações entre si e todos os outros nós.

Como você pode ver, ele tem suporte de alta disponibilidade de nós múltiplos e nós principais. Para começar a usar o Docker Swarm, leia o guia Docker Swarm 101 . Quando estiver confiante com o Docker Swarm, leia o Guia de Introdução ao Kubernetes para mergulhar no Kubernetes

    
por 01.04.2018 / 14:09