The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги | ]

05.02.2018 10:04  Выпуск распределенной системы хранения конфигурации etcd 3.3

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

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

Имеется встроенная возможность отслеживания изменения состояния ключа или директории с вызовом обработчика в случае обнаружения изменения (например, можно применить новое значение параметра конфигурации). Для защиты канала связи при обращении из внешней сети предоставляется поддержка TLS-шифрования, аутентификации клиентов по ключам и разграничения доступа через ACL. На типовом оборудовании etcd обеспечивает производительность порядка 10 тысяч операций записи в секунду. Для доступа к базе можно использовать утилиту etcdctl.

Основные новшества:

  • Улучшена работа бэкенда bbolt, представляющего собой форк Bolt DB, применяемый для хранения локальных данных на каждом узле. Добавлено несколько режимов поддержания списка свободных блоков, позволяющего оптимизировать доступ к блокам, ставшими неактуальными после выполнения транзакций и доступными для повторного использования (заполнения новыми данными). Список свободных блоков сохраняется на диске чтобы избежать ресурсоёмких операций сборки мусора во время запуска. Обратной стороной поддержания такого списка является существенное разрастание списка при выполнении большого числа транзакций. В качестве компромисса выбрана тактика перестроения списка свободных блоков во время выполнения операции восстановления ("recover"). На перестроение БД размером 10 Гб на современных системах тратится около 2 секунд. Для управления данным поведением представлено две опции "freelist sync" и "freelist no sync". Также увеличена производительность работы сборщика мусора;
  • Значительно улучшен механизм восстановления соединения клиента в сетях с нестабильным каналом связи, который теперь учитывает возможное сегментирование сети и временные обрывы соединения;
  • Добавлен экспериментальный режим "--experimental-corrupt-check-time" для мониторинга состояния хранилища на предмет возможных повреждений данных (например, из-за ошибок на уровне файловой системы) во время работы. Также добавлен режим "--experimental-initial-corrupt-check" который во время запуска проводит контроль целостности через запрос у пира контрольных сумм CRC32 для известной ревизии и их сверку с фактическим состоянием хранилища перед началом обработки запросов клиентов и других пиров;
  • Добавлен пакет clientv3/ordering с реализацией механизма причинной консистентности (causal consistency) для сериализированных запросов на чтение, обеспечивающий логическую целостность порядка операций чтения и записи, независимо от того к какому узлу обратился клиент (т.е. клиент всегда получит доступ к самой свежей ревизии);
  • Добавлен режим "--experimental-enable-v2v3", позволяющий эмулировать старый API v2 доступа к хранилищу поверх нового API v3 на базе gRPC, обеспечивая при этом более высокую эффективность и масштабироваие по сравнению с нативным API v2, который теперь объявлен устарвшим;
  • Добавлена возможность поддержания отдельного списка отозванных сертификатов X.509 (Certificate Revocation List), помимо штатного списка CRL от удостоверяющего центра. Для включения следует использовать опции "--client-crl-file" и "--peer-crl-file";
  • Добавлена возможность применения в TLS сертификатов, охватывающих группу поддоменов по маске (*.example.com в поле SAN (Subject Alternative Name));
  • Добавлена возможность "--peer-cert-allowed-cn" для аутентификации между пирами на основе проверки совпадения имени Common Name (CN) в сертификате;
  • Для работы в случае сегментации сети и невозможности прямого подключения клиента добавлена экспериментальная поддержка gRPC-прокси для трансляции запросов клиентов к кластеру etcd при помощи API v3;
  • Проведена большая работа по оптимизации производительности. При проведении тестирования отмечено заметное снижение задержек и увеличение пропускной способности с 32976 запросов в секунду до 35682 запросов в секунду.


  1. Главная ссылка к новости (https://coreos.com/blog/announ...)
  2. OpenNews: Релиз распределенной системы хранения конфигурации etcd 3.2
  3. OpenNews: Первый стабильный выпуск серверной Linux-системы CoreOS
  4. OpenNews: Проект CoreOS представил распределённую систему хранения Torus
  5. OpenNews: Red Hat поглощает компанию CoreOS
  6. OpenNews: Представлена распределённая операционная система DC/OS (Datacenter Operating System)
Лицензия: CC-BY
Тип: Программы
Ключевые слова: etcd
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Ajax/Линейный | Раскрыть все сообщения | RSS
 
  • 1.3, Andrey Mitrofanov (?), 16:23, 05/02/2018 [ответить] [показать ветку] [···]     [к модератору]
  • –5 +/
    пропал колобуховский https libelektra org дом I ... весь текст скрыт [показать]
     
     
  • 2.10, Аноним (-), 22:16, 05/02/2018 [^] [ответить]    [к модератору]  
  • +2 +/
    > колобуховский

    https://ru.wikipedia.org/wiki/%D0%9A%D0%B0%D0%BB

     
     
  • 3.19, Andrey Mitrofanov (?), 10:51, 06/02/2018 [^] [ответить]    [к модератору]  
  • +/
    >> колобуховский
    > https://ru.wikipedia.org/wiki/%D0%9A%D0%B0%D0%BB

    Именно. Сначала пение, потом трубы замёрзнут, потом..

     
  • 1.4, Dmitry77 (ok), 17:59, 05/02/2018 [ответить] [показать ветку] [···]    [к модератору]  
  • –2 +/
    И эти туда же
     
     
  • 2.18, Аноним (-), 10:05, 06/02/2018 [^] [ответить]    [к модератору]  
  • +/
    Эти не туда же, эти оттуда же
     
  • 1.5, Аноним (-), 20:04, 05/02/2018 [ответить] [показать ветку] [···]    [к модератору]  
  • +12 +/
    2018 года а до сих пор блокчейн не прикрутили (((
     
     
  • 2.8, ПДК (?), 21:39, 05/02/2018 [^] [ответить]    [к модератору]  
  • +/
    Каким боком тут блокчейн?
     
     
  • 3.16, Аноним (-), 07:56, 06/02/2018 [^] [ответить]    [к модератору]  
  • +1 +/
    > Каким боком тут блокчейн?

    Чтобы никто не мог просто так настройки поломать, вот представь себе вордпресс на блокчейне.

     
     
  • 4.21, tonys (??), 13:03, 06/02/2018 [^] [ответить]    [к модератору]  
  • +/
    Каждому вордпрессу по Nvidia 1080Ti.
     
  • 1.6, exSun (ok), 20:48, 05/02/2018 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    systemd-etcd нет ещё?
     
  • 1.17, Аноним (-), 09:58, 06/02/2018 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Внезапно мы видим приехавший реестр а-ля Windows
     
     
  • 2.22, Аноним (-), 13:04, 06/02/2018 [^] [ответить]    [к модератору]  
  • +3 +/
    В каждой новости про етцд находится школьник, сравнивающий его с реестром.
     
     
  • 3.23, Аноним (-), 14:38, 06/02/2018 [^] [ответить]    [к модератору]  
  • +3 +/
    Потому что школьнику не снятся откаты от покупки вендорлока для работодателя-терпилы, и он может говорить правду.
     
     
  • 4.24, Товарищъ Анонимус (?), 10:59, 12/02/2018 [^] [ответить]    [к модератору]  
  • +/
    Говорить - это все, что может школьник.
     
  • 4.25, Аноним (-), 03:25, 15/02/2018 [^] [ответить]     [к модератору]  
  • +/
    Омг, ты бы хоть почитал, что это и зачем нужно Никто не будет заменять dconf в ... весь текст скрыт [показать]
     
  • 1.26, Ne01eX (ok), 09:11, 16/02/2018 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    gconf работает со схемами в xml, которые всё-таки можно поправить в обычном текстовом редакторе, в случае чего. В отличии от бинарного dconf, нарушающего всю идиллию мира *nix. Ну и, несмотря ни на что, - gconf никогда в гегемоны не набивался, ограничиваясь лишь Gnome DE. В отличии, блджад, от...

    З.Ы. В любом случае, etcd не об этом, так что расходимся, пaцаны... :-)

     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:


      Закладки на сайте
      Проследить за страницей
    Created 1996-2018 by Maxim Chirkov  
    ДобавитьПоддержатьВебмастеруГИД  
    Hosting by Ihor