Emitindo um único comando de um cluster de servidores?

1

Eu tenho um cluster de servidores que executará um comando simples ruok com fallover. O comando será algo simples como curl -X POST http://foo.com/status . Devido ao fato de que eu terei de 3 a 300 nós neste pool, quero ter certeza de que esse comando seja emitido apenas uma vez a cada dez minutos. Eu corri para o problema que eu não posso simplesmente adicionar um crontab aos meus servidores, a menos que eu queira que todos eles emitem a cada X minutos.

Comecei a usar o HashiCorp Consul como altamente disponível e aparentemente mais fácil do que etcd ou Zookeeper . Eu não sei como criar algo que faça isso.

Eu vou estar usando este script em todos os servidores

#!/bin/bash

curl -i -H "Accept: application/json" \
-H "Content-Type:application/json"    \
-X POST --data '{"status":"ruok"}' "https://foobar.com/status"

Então, como eu escreveria o Consul para executar isso uma vez em um pool de nós?

    
por ehime 15.02.2016 / 20:22

1 resposta

1

Você pode usar este .

Apenas o Google "distribuiu o cron usando o consul".

    
por 16.02.2016 / 21:11