servidor de configuração etcd: backup – nenhum (boo!), métricas – sim (yay!)

Tenho a sorte de responder a algumas perguntas sobre infraestrutura que suportam nossos servidores. Selecionamos um servidor de descoberta de configuração / serviço altamente disponível chamado ‘etcd’ . É muito fácil de configurar, no entanto, parte da documentação é um pouco deficiente.

Portanto, aqui estão duas dicas rápidas:

Não há backup

Pelo menos, nada documentado. O etcd usa seu próprio mecanismo e formato de armazenamento de dados que consiste em duas coisas: um arquivo de log (contendo todas as atualizações) e uma série de instantâneos (salvamentos pontuais do estado do etcd).

Portanto, suas duas principais opções de backup são:

  1. Consultar recursivamente o etcd por meio de sua API para recuperar os pares de chave / valor, serializando-os e persistindo em algum lugar.

  2. Alternativamente, encontre uma maneira (confiável) de arquivar os dados do etcd. Os candidatos principais são rsync ou usando algo como LVM.

A restauração pode ser complicada – não gire um com os dados e presuma que os outros vazios apenas serão sincronizados. Como parte do algoritmo de consenso, é provável que uma das instâncias vazias assumirá o ‘papel de liderança’, momento em que não sabe nada …

Existem métricas

Você só precisa cavar na documentação de depuração para encontrá-lo.

Bom e simples, você tem duas opções para isso –

  1. você pode usar o ponto de extremidade métrico baseado em HTTP fornecido pelo etcd.

  2. Você pode enviar dados para o Graphite (supondo que você tenha uma caixa de grafite funcionando).

Se você seguir o caminho do Graphite, esteja ciente de que receberá métricas com o namespace etcd. nome da máquina .