Sobre o projeto

etcd é um armazenamento de chave-valor distribuído e confiável projetado para os dados mais críticos de um sistema distribuído. Escrito em Go, ele usa o algoritmo de consenso Raft para gerenciar um log replicado altamente disponível, tornando-o adequado para implantações de produção onde consistência e confiabilidade importam. O projeto enfatiza quatro qualidades: uma API gRPC voltada para o usuário simples e bem definida; segurança por meio de TLS automático com autenticação opcional de certificado de cliente; velocidade, com benchmarks citados em 10.000 gravações por segundo; e confiabilidade por meio de distribuição adequada baseada em Raft. Ele é usado em produção por muitas empresas e é frequentemente emparelhado com sistemas como Kubernetes, locksmith, vulcand e Doorman. A equipe de desenvolvimento também mantém testes de robustez rigorosos. Começar é simples: binários de lançamento pré-construídos estão disponíveis para OSX, Linux, Windows e Docker. Executar o binário etcd inicia um cluster de membro único escutando na porta 2379 para comunicação de cliente e na porta 2380 para comunicação servidor‑para‑servidor. Um cliente de linha de comando simples, etcdctl, permite operações básicas como colocar e recuperar chaves. Para experimentação de múltiplos nós localmente, um script Procfile e o goreman podem levantar um cluster de três membros com proxy gRPC opcional. Bibliotecas de cliente estão disponíveis, incluindo um cliente Go v3. A documentação cobre a API completa, clustering, configuração, segurança, ajuste e integrações. O projeto está sob a licença Apache 2.0 e é um projeto CNCF. O engajamento da comunidade ocorre por meio de uma lista de discussão, canal Slack do Kubernetes, reuniões semanais da comunidade e de triagem de problemas, e um canal no YouTube. Diretrizes de contribuição, um roteiro, instruções de relato de bugs e um processo de divulgação de segurança estão todos documentados.