Como o CoreOS migra os contêineres do Docker quando os volumes do Docker estão em uso?

2

Estou apenas aprendendo como usar o CoreOS e já corri para o primeiro problema que realmente me incomoda: Ao usar o fleetctl para iniciar e gerenciar unidades, aprendi que uma unidade é movida automaticamente para outra máquina, quando a máquina escolhida para executar a unidade reinicia ou fica inacessível para o cluster por outro motivo. Imagine agora uma situação em que você tenha uma unidade executando um contêiner Docker que tenha acesso a um determinado diretório (por meio de um volume Docker) presente apenas em uma máquina específica.

O que acontece se a unidade que está executando esse contêiner for movida para outra máquina? Suponho que a unidade falhará, pois o diretório que deveria estar montado como um volume do Docker não está presente na nova máquina. Isso realmente acontece? E como eu poderia contornar esse problema? Geralmente, como posso persistir os dados de trabalho usados por um contêiner do docker sob as circunstâncias de contêineres de migração automática?

    
por Ignatius Tremor 23.09.2014 / 22:22

2 respostas

3

Acho que, por enquanto, é sua responsabilidade garantir que os dados estejam disponíveis. Você pode querer verificar o link que é especificamente projetado para tomar cuidado ao coletar dados juntamente com contêineres docker. Acho que depende dos recursos do ZFS, que podem excluir seu uso no CoreOS. A única alternativa que eu poderia encontrar é usar um volume externo altamente disponível montado no CoreOS.

    
por 24.09.2014 / 06:57
0

Você pode considerar executar algum sistema de arquivos distribuído sobre o cluster CoreOS. Desta forma, qualquer que seja a máquina na qual seu contêiner de serviço de banco de dados termine, ele sempre poderá usar o banco de dados montado a partir do DFS.

    
por 24.11.2014 / 10:54