Nota : La rama main
puede estar en un estado inestable o incluso rota durante el desarrollo. Para versiones estables, consulte lanzamientos.
etcd es un almacén de valores clave confiable y distribuido para los datos más críticos de un sistema distribuido, con un enfoque en ser:
Simple : API bien definida y orientada al usuario (gRPC)
Seguro : TLS automático con autenticación de certificado de cliente opcional
Rápido : comparado con 10.000 escrituras/seg.
Fiable : distribuido correctamente utilizando Raft
etcd está escrito en Go y utiliza el algoritmo de consenso Raft para administrar un registro replicado de alta disponibilidad.
Muchas empresas utilizan etcd en producción, y el equipo de desarrollo lo respalda en escenarios de implementación críticos, donde etcd se combina frecuentemente con aplicaciones como Kubernetes, locksmith, vulcand, Doorman y muchas otras. La confiabilidad se garantiza aún más mediante rigurosas pruebas de robustez .
Consulte etcdctl para obtener un cliente de línea de comandos simple.
Imagen original acreditada a xkcd.com/2347, modificaciones de Josh Berkus.
Los mantenedores se esfuerzan por dar forma a una cultura de proyecto de código abierto inclusiva donde los usuarios sean escuchados y los contribuyentes se sientan respetados y empoderados. Los mantenedores tienen como objetivo construir relaciones productivas entre diferentes empresas y disciplinas. Lea más sobre el rol y las responsabilidades de los mantenedores.
La forma más sencilla de obtener etcd es utilizar uno de los binarios de lanzamiento prediseñados que están disponibles para OSX, Linux, Windows y Docker en la página de lanzamiento.
Para obtener más guías de instalación, consulte play.etcd.io y el funcionamiento de etcd.
Primero inicie un grupo de un solo miembro de etcd.
Si etcd se instala utilizando los binarios de versión prediseñados, ejecútelo desde la ubicación de instalación como se muestra a continuación:
/tmp/etcd-descargar-prueba/etcd
El comando etcd se puede ejecutar simplemente como tal si se mueve a la ruta del sistema como se muestra a continuación:
mv /tmp/etcd-download-test/etcd /usr/local/bin/ etcétera
Esto abrirá la escucha de etcd en el puerto 2379 para la comunicación con el cliente y en el puerto 2380 para la comunicación de servidor a servidor.
A continuación, configuremos una única clave y luego recuperémosla:
etcdctl pone mi clave "esto es increíble"etcdctl obtiene mi clave
etcd ahora se está ejecutando y atendiendo las solicitudes de los clientes. Para obtener más información, consulte:
Parque infantil interactivo, etc.
Demostración rápida animada
Los puertos oficiales de etcd son 2379 para solicitudes de clientes y 2380 para comunicación entre pares.
Primero instale goreman, que administra aplicaciones basadas en Procfile.
Nuestro script Procfile configurará un clúster de ejemplo local. Empiece con:
comienzo goreman
Esto mostrará 3 miembros de etcd infra1
, infra2
e infra3
y, opcionalmente, etcd grpc-proxy
, que se ejecuta localmente y compone un clúster.
Cada miembro del clúster y proxy acepta lecturas de valores clave y escrituras de valores clave.
Siga los comentarios en el script Procfile para agregar un nodo de aprendizaje al clúster.
Vaya a go.etcd.io/etcd/client/v3
Ahora es el momento de profundizar en la API etcd completa y otras guías.
Lea la documentación completa.
Revise las preguntas frecuentes de etcd.
Explora la API gRPC completa.
Configure un clúster de varias máquinas.
Aprenda el formato de configuración, las variables de entorno y las banderas.
Encuentre enlaces de idiomas y herramientas.
Utilice TLS para proteger un clúster etcd.
Sintonización, etc.
Correo electrónico: etcd-dev
Slack: canal #sig-etcd en Kubernetes (recibe una invitación)
Reuniones comunitarias
Los contribuyentes y mantenedores de etcd se reúnen cada semana a 11:00
a. m. (EE. UU. Pacífico) los jueves y las reuniones alternan entre reuniones comunitarias y reuniones de clasificación de problemas. Las agendas de las reuniones se registran en un documento compartido de Google y todos pueden sugerir temas adicionales u otras agendas.
Las reuniones de clasificación de problemas tienen como objetivo superar nuestra acumulación de RP y problemas pendientes. Las reuniones de clasificación están abiertas a cualquier colaborador; ¡No es necesario ser revisor o aprobador para ayudar! También pueden ser una buena forma de empezar a contribuir.
El rol de líder de la reunión se rota para cada reunión entre los mantenedores de etcd o los líderes de sig-etcd y se registra en una hoja compartida de Google.
Las grabaciones de las reuniones se cargan en el canal oficial de YouTube de etcd.
Obtenga invitaciones de calendario uniéndose al grupo de correo etcd-dev.
Únase al canal Zoom financiado por CNCF: zoom.us/my/cncfetcdproject
Consulte CONTRIBUCIÓN para obtener detalles sobre cómo configurar su entorno de desarrollo, enviar parches y el flujo de trabajo de contribución.
Consulte community-membership.md para obtener información sobre cómo convertirse en miembro del proyecto etcd. ¡Damos la bienvenida y esperamos sus contribuciones al proyecto!
Consulte también la hoja de ruta para obtener más detalles sobre las prioridades para las próximas versiones principales o menores.
Consulte informar errores para obtener detalles sobre cómo informar cualquier problema. Antes de abrir un problema, verifique que no esté cubierto en nuestras preguntas frecuentes.
Consulte el proceso de divulgación y publicación de seguridad para obtener detalles sobre cómo informar una vulnerabilidad de seguridad y cómo la gestiona el equipo de etcd.
Consulte las pautas de clasificación de problemas para obtener detalles sobre cómo se gestionan los problemas.
Consulte Gestión de relaciones públicas para obtener pautas sobre cómo se administran las solicitudes de extracción.
Estos mantenedores eméritos dedicaron una parte de su carrera a etcd y revisaron el código, clasificaron errores e impulsaron el proyecto durante un período de tiempo sustancial. Su contribución es muy apreciada.
Fan Min Shi
Antonio Romano
Brandon Philips
jose betz
Gyu Ho Lee
Jingyi Hu
xiang li
Ben Darnell
Sam Batschelet
Piotr Tabor
Hitoshi Mitake
etcd está bajo la licencia Apache 2.0. Consulte el archivo de LICENCIA para obtener más detalles.