Выпуск распределенной системы хранения конфигурации etcd 2.0

Проект CoreOS, развивающий основанное на идеях контейнерной изоляции серверное окружение, представил первый стабильный релиз проекта etcd, в рамках которого развивается высоконадёжное распределённое хранилище параметров конфигурации, задаваемых в форме ключ/значение. Код etcd написан на языке Go и распространяется под лицензией Apache.

Etcd позволяет организовать единое хранилище конфигурации для группы серверов, которое реплицируются на все узлы и поддерживается в синхронизированном состоянии с использованием протокола Raft. Наличие копии данных на всех хостах позволяет исключить потерю конфигурации при выходе из строя отдельного узла. Основным назначением etcd является предоставление унифицированного механизма хранения конфигурации и информации о работающих сервисах для изолированных контейнеров с типовой начинкой. В etcd также могут сохраняться временные данные, для которых предусмотрена возможность определения времени жизни записи. Отдельно развивается надстройка etcd-lock для обеспечения блокировки записей.

Для доступа к конфигурации предоставляется простой интерфейс, основанный на использовании HTTP и JSON. Для доступа к базе можно использовать утилиту etcdctl или любой http-клиент, такой как сurl или wget (например, для запроса ключа можно использовать команду «curl -L http://127.0.0.1:4001/v2/keys/mykey»). Для наглядного управления базой данных и внесения изменений в ручном режиме предусмотрен web-интерфейс etcd-browser.
Аутентификация выполняется на основе SSL-ключей. При помощи FUSE-модуля etcd-fs возможен доступ к хранилищу в виде файловой системы.

Основные новшества выпуска etcd 2.0:

  • Внутренний протокол улучшен в направлении защиты от случайной неправильной настройки;
  • Добавлена команда «etcdctl backup», предназначенная для создания резервной копии хранилища;
  • Добавлены команды «etcdctl member list/add/remove» для упрощения управления кластером etcd;
  • Повышена надёжность хранения данных на диске. Добавлен контроль целостности по контрольным суммам и хранение в форме дополняемого лога.
  • Улучшен алгоритм достижения консенсуса при определении актуального состояния данных после выхода из строя отдельных узлов хранилища;
  • Ускорено проведение тестирования состояния узлов;
  • Задействованы официально закреплённые организацией IANA за etcd номера портов TCP 2379/2380.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.