Проект CoreOS (http://www.opennet.me/opennews/art.shtml?num=40275), развивающий основанное на идеях контейнерной изоляции серверное окружение, представил (https://coreos.com/blog/etcd-2.0-release-first-major-stable-.../) первый стабильный релиз проекта etcd (https://coreos.com/using-coreos/etcd/), в рамках которого развивается высоконадёжное распределённое хранилище параметров конфигурации, задаваемых в форме ключ/значение. Код etcd написан на языке Go и распространяется (https://github.com/coreos/etcd) под лицензией Apache.Etcd позволяет организовать единое хранилище конфигурации для группы серверов, которое реплицируются на все узлы и поддерживается в синхронизированном состоянии с использованием протокола Raft (https://github.com/goraft/raft). Наличие копии данных на всех хостах позволяет исключить потерю конфигурации при выходе из строя отдельного узла. Основным назначением etcd является предоставление унифицированного механизма хранения конфигурации и информации о работающих сервисах для изолированных контейнеров с типовой начинкой. В etcd также могут сохраняться временные данные, для которых предусмотрена возможность определения времени жизни записи. Отдельно развивается надстройка etcd-lock (https://github.com/datawisesystems/etcd-lock) для обеспечения блокировки записей.
Для доступа к конфигурации предоставляется простой интерфейс, основанный на использовании HTTP и JSON. Для доступа к базе можно использовать утилиту etcdctl или любой http-клиент, такой как сurl или wget (например, для запроса ключа можно использовать (https://coreos.com/docs/distributed-configuration/getting-st.../) команду "curl -L http://127.0.0.1:4001/v2/keys/mykey"). Для наглядного управления базой данных и внесения изменений в ручном режиме предусмотрен web-интерфейс etcd-browser (https://github.com/henszey/etcd-browser).
Аутентификация выполняется на основе SSL-ключей. При помощи FUSE-модуля etcd-fs (https://github.com/xetorthio/etcd-fs) возможен доступ к хранилищу в виде файловой системы.Основные новшества выпуска etcd 2.0:
- Внутренний протокол улучшен в направлении защиты от случайной неправильной настройки;
- Добавлена команда "etcdctl backup", предназначенная для создания резервной копии хранилища;
- Добавлены команды "etcdctl member list/add/remove" для упрощения управления кластером etcd;
- Повышена надёжность хранения данных на диске. Добавлен контроль целостности по контрольным суммам и хранение в форме дополняемого лога.
- Улучшен алгоритм достижения консенсуса при определении актуального состояния данных после выхода из строя отдельных узлов хранилища;
- Ускорено проведение тестирования состояния узлов;
- Задействованы официально закреплённые организацией IANA за etcd номера портов TCP 2379/2380.URL: https://coreos.com/blog/etcd-2.0-release-first-major-stable-.../
Новость: http://www.opennet.me/opennews/art.shtml?num=41575
Круто!Интересно, а виндовый реестр умеет такое (распределенность)?
Active Directory? И то, с натяжкой.
умеет с превосходством, имхо конечно.
Ад - аналог не etcd, а x500 (openldap, 389ds, opends, apacheds и т.д.). Это разные области и один другим не заменишь.
Что-то я из новости не понял, какие у этой штуки отличительные особенности и почему для этой цели использовать какую-нибудь готовую распределённую key-value хранилку. Уж этого добра наплодили массу.
Потому что адепты go, ждем когда запилят его поддержку в ядре))
...на Go ;)
> Что-то я из новости не понял, какие у этой штуки отличительные особенности
> и почему для этой цели использовать какую-нибудь готовую распределённую key-value хранилку.
> Уж этого добра наплодили массу.Если кратко, то etcd и ему подобные легковеснее и удобнее для эксплуатации, но при этом не подходят для хранения огромных объемов инфы. Т.е. самое то для хранения настроек (единицы -десятки мегабайт) в больших часто меняющихся гридах (сотни и тысячи узлов).
Когда у тебя сотни и тысячи узлов - какая, на фиг,легковесность? Берём что-нибудь вроде Project Voldemort - да и всё.
А давно известный Network Information Services (NIS) для этого плохо подходит? http://www.freebsd.org/doc/ru_RU.KOI8-R/books/handbook/netwo...
А перечислите весь список, пжалуста? Их не так много на самом деле. Точнее даже напротив, примерно 0.7: etcd не может в acl, consul писали какие-то упорыши, да kv там дополнительный, а не основной функционал. Кто ещё? Зукипер скорее мертв.
Что у нас по плану идёт после контрейнеризации?
> Что у нас по плану идёт после контрейнеризации?Монетизация следующего баз-ворда, Пинки.
Мммда... Писать данную штуку минут 20 ... Даже на новость не тянет.
там полтора мегабайта кода. чтобы написать такое за 20 минут, нужно нажимать кнопики со скоростью ~1300 символов в секунду.
> чтобы написать такое за 20 минут, нужно нажимать кнопики со скоростью ~1300 символов в секунду.Откойте для себя мир копипаста, сэр.
Искренне ваш, Кэп
> Писать данную штуку минут 20За 20 минут можно не только пописать, но и покакать. А ну освобождай горшок - там полгуппы в очереди!
Да ну, просто хранилка же. Я поначалу возбудился, думал, можно /etc примонтировать и сделать распределёнку конфигурации.
Тебе мало AD яйца надавил?
а что не так с ад? по-моему, очень удобная штука, особенно по сравнению с openLdap.
Твое вендовозное "мнение" никого не интересует.
Вообще-то можно, см. https://github.com/xetorthio/etcd-fs
Но вряд ли это решение можно назвать production ready
> Поддерживается в синхронизированном состоянии с использованием протокола Raft.
> NOTE: This project is unmaintained. If you are using goraft in a project and want to carry the project forward please file an issue with your ideas and intentions. The original project authors have created new raft implementations now used in etcd and InfluxDB....при этом ссылка "new raft implementations" выдаёт 404.
Глобально, надёжно.
д3билам выше поясняю: etcd - аналог ZooKeeper
*Отдельно* развивается надстройка etcd-lock для обеспечения блокировки записей.
Чудесно, оно ещё и аналог вполне живого и матёрого проекта.
*Отдельно* развивается надстройка etcd-lock для обеспечения блокировки записей.
> *Отдельно* развивается надстройка etcd-lock для обеспечения блокировки записей.Осталось поженить это с системды. :)))))))