etcd — распределённая система хранения параметров конфигурации, задаваемых как пара «Ключ»-«Значение». Система разрабатывается командой CoreOS и уже нашла применение, например, в одном из проектов Google — Kubernetes или в PaaS от Huawei. В новой версии etcd представлены обновлённый API и модель данных. При разработке API были учтены как пожелания пользователей etcd 2.0, так и практический опыт масштабирования решений на основе этой версии. При этом для облегчения миграции на новую версию обратная совместимость с etcd 2.0 сохранена.
Основные изменения:
- на смену JSON пришёл gRPC, совместимость со старым форматом обмена данными сохранена через использование gRPC-шлюза;
- внедрена система версионирования хранилищ, что позволяет обратиться к прежним версиям хранимых параметров;
- поддержка транзакций;
- повышена производительность;
- возможность сохранения снапшотов;
- возможность самодиагностики;
- поддержка квот для избежания ситуаций с повышенной утилизацией ресурсов сервера;
- добавлена поддержка зеркалирования данных на другие дата-центры;
- набор ключей имеет единый TTL.