Como o agente de marionetes ativo lida com o puppetmaster abatido?

3

Diga que um agente de marionetes está no meio de uma atualização e paro o serviço de marionetes. Existe algum ponto que poderia potencialmente causar uma configuração incompleta ou corrompida, como descrevi abaixo?

Histórico:

Estou usando integração contínua e controle de versão (Bamboo e Stash) para meus arquivos de configuração de fantoches.

Encontrei problemas durante o processo de reimplementação. É mais perceptível quando eu faço um pedido de pull para o meu ramo de produção, mas ocorre em outro lugar também. Um agente fantoche pode estar tentando acessar um arquivo de recurso que foi excluído antes de ser retirado. Embora seja bastante raro, isso causou estragos de todos os tipos, especialmente em módulos que usam uma instrução de arquivo para enviar um diretório inteiro.

A coisa mais sensata que eu consegui fazer foi parar o serviço de marionetes durante a implantação e, em seguida, retroceder, mas não estou vendo nada sobre as ramificações de parar o mestre de marionetes, enquanto isso pode acontecer. ainda estar sendo usado.

    
por Tim Brigham 27.11.2013 / 16:24

2 respostas

3

For a recursive deploy shouldn't it be a non issue assuming that none of the files changed during the last run, therefore the file set from before would be the same as from after?

A decisão de substituir um arquivo é feita com base em uma comparação dos hashes md5 do cliente e do servidor. Se você parar o master mid-run, ele deve apenas errar em todos os recursos de arquivo restantes - você não vai acabar com uma cópia parcial de um arquivo no lugar.

    
por 28.11.2013 / 05:59
1

Existem várias partes distintas de uma marionete.

  1. O nó recupera seus fatos de si mesmo e os envia para o servidor mestre de marionetes
  2. O servidor mestre de marionetes aceita esses fatos de um servidor e compila um catálogo que deve ser executado no nó que relatou seus fatos. Isso inclui o conteúdo dos arquivos que são gerenciados.
  3. O catálogo é enviado para o nó e o nó aplica seu catálogo localmente.
  4. O nó relata sua execução

Portanto, dependendo de onde você estiver nesse processo, a execução falhará completamente ou a execução do nó continuará e falhará no relatório.

Não deve haver um problema com arquivos corrompidos, como você está mencionando.

    
por 05.12.2013 / 21:00