Repolode
etcd-io

etcd-io/etcd

Распределённое надёжное key-value хранилище для критически важных данных распределённых систем на основе консенсуса Raft с gRPC API.

Звёзды
52,401
Форки
10,541
Открытые issues
391
Последний коммит
20 часов назад

Что это?

etcd — распределённое key-value хранилище, написанное на Go. Оно реплицирует данные между участниками кластера с помощью алгоритма консенсуса Raft, поэтому кластер остаётся доступным и согласованным при сбоях отдельных участников. Клиенты работают с ним через gRPC API. В проект также входит etcdctl — CLI-клиент для чтения и записи ключей.

etcd предназначен для хранения небольших фрагментов критически важных данных координации, например конфигурации и метаданных сервисов, а не больших объёмов данных. Поддерживаются автоматическая настройка TLS и опциональная аутентификация клиентов по сертификатам. Участники кластера обмениваются данными через порт 2380, а клиенты по умолчанию подключаются через порт 2379.

etcd широко используется как хранилище для Kubernetes и применяется вместе с другими проектами для распределённых систем. В репозитории есть настройка локального кластера из нескольких участников с помощью Procfile и goreman, а также клиентские библиотеки Go для v3 API.

Ключевые возможности

  • 01Репликация на основе Raft поддерживает согласованность и доступность кластера при сбоях участников.
  • 02Чётко определённый gRPC API для чтения, записи и отслеживания изменений ключей.
  • 03Автоматическая настройка TLS и опциональная аутентификация клиентов по сертификатам.
  • 04CLI-клиент etcdctl для работы с кластером.
  • 05Клиентские библиотеки Go для v3 API.
  • 06Настройка локального кластера из нескольких участников с помощью Procfile и goreman.

Сценарии использования

  • Хранение состояния и конфигурации кластера для control plane Kubernetes.
  • Обнаружение сервисов и координация распределённых приложений.
  • Согласованное хранение небольших критически важных метаданных на нескольких серверах.
  • Изучение и локальное тестирование распределённых систем на основе Raft.

Быстрый старт

  1. 1

    Скачайте предварительно собранный бинарный файл релиза со страницы релизов

  2. 2

    Запустите односоставный сервер etcd

    /tmp/etcd-download-test/etcd
  3. 3

    Задайте ключ с помощью etcdctl

    etcdctl put mykey "this is awesome"
  4. 4

    Получите ключ с помощью etcdctl

    etcdctl get mykey

Что важно знать

  • Для запуска локального кластера из нескольких участников необходимо установить goreman и использовать Procfile из репозитория.
  • Ветка main может быть нестабильной или работать с ошибками, поэтому в production используйте релизы с тегами.

Темы

Частые вопросы

Что такое etcd?
Распределённое надёжное key-value хранилище для критически важных данных распределённых систем на основе консенсуса Raft с gRPC API. etcd — распределённое key-value хранилище, написанное на Go. Оно реплицирует данные между участниками кластера с помощью алгоритма консенсуса Raft, поэтому кластер остаётся доступным и согласованным при сбоях отдельных участников. Клиенты работают с ним через gRPC API. В проект также входит etcdctl — CLI-клиент для чтения и записи ключей.
etcd можно использовать бесплатно? Какая у него лицензия?
etcd распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
etcd всё ещё поддерживается?
Активно поддерживается. Последний коммит в etcd — 19 окт. 2026 г..
Для чего можно использовать etcd?
Хранение состояния и конфигурации кластера для control plane Kubernetes. Обнаружение сервисов и координация распределённых приложений. Согласованное хранение небольших критически важных метаданных на нескольких серверах. Изучение и локальное тестирование распределённых систем на основе Raft.
Как установить etcd?
Скачайте предварительно собранный бинарный файл релиза со страницы релизов Запустите односоставный сервер etcd: /tmp/etcd-download-test/etcd Задайте ключ с помощью etcdctl: etcdctl put mykey "this is awesome" Получите ключ с помощью etcdctl: etcdctl get mykey
Где скачать etcd?
Исходный код и инструкции по установке — на GitHub: https://github.com/etcd-io/etcd

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Trivy — сканер безопасности с открытым исходным кодом, который выявляет уязвимости, ошибки конфигурации, секреты и данные SBOM в контейнерах, файловых системах, Git-репозиториях, образах VM и Kubernetes.

38,5 тыс.774GoApache-2.0Обновлён 24 часа назад