Рассказ о трудной, но успешной истории вывода на высоконагруженную промышленную орбиту клона общеизвестного OpenLDAP для применения в инфраструктуре ПАО МегаФон. Восход Солнца Вручную потребовал два года работы и вылился в создание собственного клона исходного проекта.
Для понимания масштаба и контекста пара слов о том, где сейчас работает ReOpenLDAP в режиме 24x7, цитата: "NGDR представляет собой UDR (User Data Repository), согласно стандарту 3GPP 23.335, и является централизованным узлом для хранения данных обо всех видах услуг абонентов в ИТ-инфраструктуре оператора связи", подробности см. https://www.billing.ru/sites/default/files/documentation/ngdr_2015_a4_rus.pdf
Кроме истории "как это было", в докладе будут рассмотрены:
- Выявленные недостатки RFC-4533 при работе в multi-master режиме (экранирование удаления).
- Исходные проблемы OpenLDAP (неконсистентность трансляции GUID в DN для записей на получателе репликации, массовое удаление на получателе репликации, просто падения...).
- Проблемы движка хранения LMDB (повреждение memory-mapped базы, DoS из-за долгого чтения).
- А также соответствующие доработки в ReOpenLDAP и MDBX.
Стоит отметить, что ReOpenLDAP и MDBX являются проектами с открытым исходным кодом и доступны публично на https://github.com/ReOpen.
Постепенно мы пришли к выводу, что только наш ReOpenLDAP обеспечивает горячую синхронизацию по RFC-4533 в объемах и с производительностью, необходимыми для промышленной эксплуатации в инфраструктуре оператора мобильной связи федерального масштаба.