URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 114969
[ Назад ]

Исходное сообщение
"Выпуск  LDAP-сервераReOpenLDAP 1.1.9 "

Отправлено opennews , 02-Авг-18 13:53 
Состоялся (https://github.com/leo-yuriev/ReOpenLDAP/releases/tag/v1.1.9) релиз LDAP-сервера ReOpenLDAP 1.1.9 (https://github.com/leo-yuriev/ReOpenLDAP/) "Airborne Positive" — форка проекта OpenLDAP, с устранением массы ошибок и ряда доработок для стабильной работы репликации. Проект ориентирован (https://github.com/leo-yuriev/ReOpenLDAP/wiki) на надежность и производительность при использовании в решениях с высокой нагрузкой и промышленных системах в сфере телекоммуникаций.


В версии 1.1.9 исправлено несколько ошибок, в частности в коде поддержки SSL/TLS устранены взаимоблокировки и гонки при инициализации/завершении. В набор тестов добавлена проверка функционирования репликации с SSL/TLS. В configure добавлена проверка наличия библиотеки libnsspem.so, из-за отсутствия которой возникают малопонятные ошибки при использовании сертификатов в PEM-формате.

Особенности 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

-  Устранено большинство утечек памяти;

-  Решены проблемы, выявленные статистическими анализаторами.


URL: https://github.com/leo-yuriev/ReOpenLDAP/releases/tag/v1.1.9
Новость: https://www.opennet.ru/opennews/art.shtml?num=49067


Содержание

Сообщения в этом обсуждении
"Выпуск  LDAP-сервераReOpenLDAP 1.1.9 "
Отправлено ryoken , 02-Авг-18 13:53 
> Команда "reopenldap [iddqd] [idkfa] [idclip]";

0_o. А что это? (Ну и kfa - неправославно, надо просто fa. И вместо idclip - idspispopd :D ).


"Выпуск  LDAP-сервераReOpenLDAP 1.1.9 "
Отправлено Zomby , 02-Авг-18 17:44 
> 0_o. А что это?

Эх, молодо-зелено...


"Выпуск  LDAP-сервераReOpenLDAP 1.1.9 "
Отправлено Аноним , 02-Авг-18 18:28 
Ну, я эти сочетания помню, а что они делают в сабже?

"Выпуск  LDAP-сервераReOpenLDAP 1.1.9 "
Отправлено Аноним , 03-Авг-18 00:04 
> Ну, я эти сочетания помню, а что они делают в сабже?

Тут несложно догадаться:
iddqd - при запуске сервера его невозможно более остановить. kill -9 не сработает
idkfa - запущенный сервер может прибивать другие, мешающие его работе демоны
idclip - игнорирование настроек фаервола


"Выпуск  LDAP-сервераReOpenLDAP 1.1.9 "
Отправлено xxxx , 03-Авг-18 12:51 
это как в антивирусе касперского опция - не давать работать другим программам?!

"Выпуск  LDAP-сервераReOpenLDAP 1.1.9 "
Отправлено Аноним84701 , 03-Авг-18 13:18 
> это как в антивирусе касперского опция - не давать работать другим программам?!

Это как в любом травлении баек - главное, делать это с серьезнейшим видом:
https://github.com/leo-yuriev/ReOpenLDAP/blob/41203741313b5c...


.B reopenldap [iddqd] [idkfa]
Управляет специфичными для ReOpenLDAP флагами и режимом совместимости
с исходным OpenLDAP. Надеемся, Вы оцените нашу дань борьбе с монстрами
и прочей нечистой силой в начале 90\-х.
.RS
.TP
.B iddqd
Выключает режим совместимости с OpenLDAP; при этом меняется интерпретация
некоторых параметров конфигурации и поведение службы:
.RS
.LP
1) Число, задающее в директиве \fBcheckpoint\fP интервал для \fBmdb\fP, будет
интерпретироваться как секунды, а без \fBiddqd\fP как минуты. При большом



"Выпуск  LDAP-сервера ReOpenLDAP 1.1.9 "
Отправлено Аноним , 02-Авг-18 18:03 
Круто, интересно когда дистрибутивы будут его использовать вместо openldap

"Выпуск  LDAP-сервера ReOpenLDAP 1.1.9 "
Отправлено Аноним , 02-Авг-18 19:59 
Скорее поехавший напишет systemd-lightweightdirectoryserverd, который автоматом попадёт из федоры во все дистрибутивы.

"Выпуск  LDAP-сервера ReOpenLDAP 1.1.9 "
Отправлено kvaps , 03-Авг-18 02:45 
В этих краях уже давно используют 389ds

"Выпуск  LDAP-сервера ReOpenLDAP 1.1.9 "
Отправлено Аноним , 03-Авг-18 06:21 
389ds слишком нетак написан, его надо переписать.

"Выпуск  LDAP-сервера ReOpenLDAP 1.1.9 "
Отправлено Аноним , 03-Авг-18 02:21 
Когда будет репы для разных дистибутивов с мета-пакетом совместимости с офф. лдап

"Выпуск  LDAP-сервера ReOpenLDAP 1.1.9 "
Отправлено Аноним , 03-Авг-18 06:47 
Как нам Re-организовать Рабкрин (с) :)))

"Выпуск  LDAP-сервера ReOpenLDAP 1.1.9 "
Отправлено PnDx , 03-Авг-18 11:33 
"reopenldap [iddqd] [idkfa] [idclip]" и "Новые настройки" — надо полагать, секретные? Т.к. не нашли отражения в манах.

* Озадачился сборкой .deb, т.к. автор похоже забил (и я уже́ где-то понимаю, почему).
* Тесты "test050-syncrepl-multimaster" и "test019-syncrepl-cascade" вылетают.
Предположительно, из-за короткого таймаута. (Создаётся несколько серверов и между ними гоняют данные. Тут же проверка и вылет если не сошлось.)
Также срабатывает регрессия its8667. (slapcat неверно работает с ключом "-g") и its8800 "changes are not refreshed when an old db is reloaded". Это всё под ubuntu 14.04 (и ничего смешного ©).


"Выпуск  LDAP-сервера ReOpenLDAP 1.1.9 "
Отправлено erthink , 03-Авг-18 12:35 
Пакеты решено не делать до слома совместимости в следующих версиях. Если кратко, то будет новый форма mdb-базы (см https://github.com/leo-yuriev/libmdbx) и изменение в API libreldap ради устранения вороха предупреждений от Coverity.

На медленных или сильно нагруженных машинах некоторые тесты действительно могут отваливаться по таймаутам, например такое регулярно происходит на старых Эльбрусах, ARM-ах, MIPS-ах и т.д. В 2014-2015 годах задаваемые таймауты целенаправленно максимально уменьшались для того чтобы ускорить прохождение тестов (примерно с часа-двух до 15-20 минут). В планах сделать расчет таймаутов динамическим в зависимости от "мегагерцев" на нагрузки на машину, но пока некогда.

С тестом test019-syncrepl-cascade всё сложнее, он действительно "мигающий". В частности из-за https://github.com/leo-yuriev/ReOpenLDAP/issues/121 также сбоит ITS8444 и что-то еще. Проблема унаследована от OpenLDAP и не понятно что с ней делать. Если переписывать репликацию/синхронизацию, то лучше сразу начинаться с переписывания всего кода... Удалять delta-режим я пока не стал, хотя для ReOpenLDAP с полноценно работающей не-delta репликацией это логично.

Регресcия its8667 была исправлена в mater коммитом e8b90cc92c от 2018-06-27, а следующим коммитом 313cc6203c отключено игнорирование результатов соответствующего теста. К выходу релиза 1.1.9 этот тест запускался более 500 раз. Поэтому я не знаю почему он у вас отвалился.

В любом случае, pull-request-ы с исправлениями приветствуются.


"Выпуск  LDAP-сервера ReOpenLDAP 1.1.9 "
Отправлено PnDx , 03-Авг-18 13:03 
* Касаемо таймаутов, у меня сборочный "стенд" запускался с обрезанными до 100 iops. Полагаю, причина в этом. С богомипсами там как раз таки неплохо.

* its8667 я стало быть получил, счекаутясь на стабильную 1.1.8. Уйдёт в 1.1.9.
"""
git checkout origin/stable/1.1
Note: checking out 'origin/stable/1.1'.

HEAD is now at fb0b291... reopenldap: regenerate configure for 1.1.8
"""
* Я ни разу не билд-инженер и собираю под свои местечковые нужды. Так что checkout делал "на глазок", углядев отдельную ветку stable. Если Вас не затруднит, добавьте пожалуйста хинт "для тупых" типа "чтобы собрать стейбл чекаут вон-туда".

* На дебианизацию точно придётся кого-то подписывать. Или сначала перефаршивать потроха оригинала, вынося захардкоженный путь к базе etc. Я пока взял "рыбу" из базара и добавил критичное из имеющегося openldap. Критично "--with-tls=openssl", т.к. местный tls протух с 2013 г.


"Выпуск  LDAP-сервера ReOpenLDAP 1.1.9 "
Отправлено erthink , 03-Авг-18 13:15 
> * Касаемо таймаутов, у меня сборочный "стенд" запускался с обрезанными до 100
> iops. Полагаю, причина в этом. С богомипсами там как раз таки
> неплохо.

Да, видимо дело в этом.

> * its8667 я стало быть получил, счекаутясь на стабильную 1.1.8. Уйдёт в
> 1.1.9.
> """
> git checkout origin/stable/1.1
> Note: checking out 'origin/stable/1.1'.
> …
> HEAD is now at fb0b291... reopenldap: regenerate configure for 1.1.8

Хм, может вы git pull забыли.
В https://github.com/leo-yuriev/ReOpenLDAP/commits/stable/1.1 уже есть 1.1.9.

> * На дебианизацию точно придётся кого-то подписывать. Или сначала перефаршивать потроха
> оригинала, вынося захардкоженный путь к базе etc. Я пока взял "рыбу"
> из базара и добавил критичное из имеющегося openldap. Критично "--with-tls=openssl", т.к.
> местный tls протух с 2013 г.

В ReOpenLDAP давно были влиты все релевантные правки от меинтейнеров OpenLDAP в Debian и RHEL/Fedora, кажется даже из SUSE.
В купе с переходом на актуальную версию autotools с путем к /etc нет никаких проблем, см опции configure.


"Выпуск  LDAP-сервера ReOpenLDAP 1.1.9 "
Отправлено erthink , 03-Авг-18 12:45 
iddqd и idkfa описаны в man-страницах, например
https://github.com/leo-yuriev/ReOpenLDAP/blob/87c635d512b75d...

Видимо вы куда-то не туда смотрите и/или не то запускаете.

А для idclip есть https://github.com/leo-yuriev/ReOpenLDAP/issues/156, он в целом это внутренняя настройка которая помогает примерно только при отладке.


"Выпуск  LDAP-сервера ReOpenLDAP 1.1.9 "
Отправлено PnDx , 03-Авг-18 13:08 
> iddqd и idkfa описаны в man-страницах, например
> https://github.com/leo-yuriev/ReOpenLDAP/blob/87c635d512b75d...

  Только по-русски? Я в английской локали проверял.
Вряд ли у меня в манах отсебятина, т.к. специфика типа "dreamcatcher" в man slapd-mdb — на месте.

> Видимо вы куда-то не туда смотрите и/или не то запускаете.
> А для idclip есть https://github.com/leo-yuriev/ReOpenLDAP/issues/156, он в целом это
> внутренняя настройка которая помогает примерно только при отладке.

  Ага, спасибо.


"Выпуск  LDAP-сервера ReOpenLDAP 1.1.9 "
Отправлено erthink , 03-Авг-18 13:17 
>> iddqd и idkfa описаны в man-страницах, например
>> https://github.com/leo-yuriev/ReOpenLDAP/blob/87c635d512b75d...
>   Только по-русски? Я в английской локали проверял.
> Вряд ли у меня в манах отсебятина, т.к. специфика типа "dreamcatcher" в
> man slapd-mdb — на месте.

https://github.com/leo-yuriev/ReOpenLDAP/blob/4023a0db765e05...
Предполагаю что у вас установлен slapd из дистрибутива и man показывает его станицы.


"Выпуск  LDAP-сервера ReOpenLDAP 1.1.9 "
Отправлено xxxx , 03-Авг-18 12:52 
как затестить?
готовые пакеты есть для centos6, centos7, с возможностью поднятия оригинального config?

"Выпуск  LDAP-сервера ReOpenLDAP 1.1.9 "
Отправлено erthink , 03-Авг-18 13:04 
Пакетов нет. Поэтому ./configure --prefix=XXX && make install.

Причины могу повторить еще раз - будет слом совместимости, поэтому сейчас пакеты решено не делать.
Для миграции нужно будет переливать базы через slapcat + slapadd.

Ветка master и релизы 1.1.x совместимы с оригинальным OpenLDAP 2.4.x.

Ветка devel будущие релизы 1.2.x пока совместимы с будущим OpenLDAP 2.5.x по конфигу, но не по формату mdb-базы (см. https://github.com/leo-yuriev/libmdbx).

В 1.2 я также заменю оригинальную/хромую хеш-функцию в индексах на t1ha (https://github.com/leo-yuriev/t1ha).
Совместимость оригинальный OpenLDAP 2.5.x с базами 2.4.x также не обеспечивается, в частности из-за перехода с 32-битного хеша на 64-битный (ради уменьшения коллизий).


"Выпуск  LDAP-сервера ReOpenLDAP 1.1.9 "
Отправлено x , 05-Авг-18 09:12 
а что за поддержка ls-malloc ? как-то негуглится путного нечего

"Выпуск  LDAP-сервера ReOpenLDAP 1.1.9 "
Отправлено erthink , 05-Авг-18 11:30 
> а что за поддержка ls-malloc ? как-то негуглится путного нечего

https://github.com/leo-yuriev/ReOpenLDAP/blob/master/servers...