Релиз LDAP-сервера ReOpenLDAP 1.1.7
24 февраля 2018 года
Состоялся релиз LDAP-сервера ReOpenLDAP 1.1.7, в рамках которого развивается форк проекта OpenLDAP, в котором проведена работа по устранению ошибок и внесению улучшений для стабильной работы репликации. Проект ориентирован на надежность и производительность при использовании в решениях с высокой нагрузкой и промышленных системах в сфере телекоммуникаций.
ReOpenLDAP уже применяется в инфраструктуре ПАО МегаФон, обеспечивая высоконагруженную обработку запросов в multi-master кластере с full-mesh репликацией, демонстрируя производительность на уровне 10 тысяч обновлений и 25 тысяч операций поиска в секунду на наборе данных 100 млн записей (100 Гб данных). В новом выпуске добавлен перевод системных руководств на русский язык, обеспечена поддержка привязки открытых ключей (PKP, Public key pinning), удалён ldap_pvt_thread_rmutex, добавлен рекурсивный POSIX мьютекс для libevent, реализована функция ldap_connect().
Причиной создания форка является отказ включения в основной состав OpenLDAP ряда исправлений из-за желания сохранения совместимости с устаревшими Си-компиляторами (совместимость с компиляторами без поддержки вариативных макросов, которые появились в стандарте C99, нарушалась лишь в одном патче из большой серии исправлений). После форка ветка ReOpenLDAP master поддерживается в стабильном состоянии и соответствует OpenLDAP/2.4.x, с добавлением отдельных доработок из OpenLDAP/master. Ветка ReOpenLDAP next соответствует следующей версии OpenLDAP/2.5.x.
Особенности ReOpenLDAP:
- Корректная и надёжная работа репликации в режиме multi-master;
- Команда "reopenldap [iddqd] [idkfa] [idclip]";
- Новые настройки:
- quorum { [vote-sids ...] [vote-rids ...] [auto-sids] [auto-rids] [require-sids ...] [require-rids ...] [all-links] }
- "quorum limit-concurrent-refresh
- "biglock { none | local | common }
- syncprov-showstatus { none | running | all }
- crash-backtrace on|off
- coredump-limit {mbytes}
- memory-limit {mbytes}
- Модернизация хранилища mdbx для повышения масштабируемости и улучшения репликации;
- Поддержка срезов состояния (checkpoint) при изменении раздела или по таймеру;
- Поддержка опции requirecheckpresent для syncrepl;
- Поддержка настройки keepalive для входящих соединений;
- Встроенная система проверки памяти с поддержкой ls-malloc;
- Пригодность для отладки в AddressSanitizer и Valgrind;
- Возможность применения оптимизации на стадии компоновки (LTO, Link-Time Optimization) при сборке в GCC и Clang;
- Поддержка OpenSSL 1.1.x, Mozilla NSS, GnuTLS и LibreSSL 2.5.x;
- Перенос всех исправлений из веток openldap/master и openldap/2.4;
- Большое число исправлений, связанных с репликацией;
- Устранено около 5 тысяч предупреждений при сборке в GCC/clang и 1 тысяча предупреждний при проверке в ThreadSanitizer
- Устранено большинство утечек памяти;
- Решены проблемы, выявленные статистическими анализаторами PVS-Studio и Coverity.
Источники править
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.