Архитектура

Продукт «Служба каталогов» построен на следующих архитектурных принципах:

  • поддержка гибридного формата — возможность работы в сочетании с Microsoft Active Directory в период миграции;

  • интеграция компонентов между собой «из коробки» — для построения готового к использованию решения не требуются доработки и дополнительное программное обеспечение;

  • оптимальный технологический стек — ядро реализована на высокопроизводительном языке С, пользовательский интерфейс построен на современном стеке;

  • возможность развертывать продукт в двух и более ЦОД — высокая доступность и катастрофоустойчивость;

  • отсутствие единой точки отказа — stateful компоненты поддерживают репликацию данных на несколько узлов и имеют механизмы автоматического восстановления.

На Рис. 1 представлен компонентный состав продукта «Служба каталогов».

architecture presentation
Рис. 1. Компоненты продукта «Служба каталогов»

В состав продукта входят следующие приложения и модули:

  • приложение «Служба каталогов», ядро продукта — модули для работы с AD на базе Samba (лицензия GPL — см. текст в разделе «Лицензия»):

    • «Сервисы службы каталогов» (Samba) — функциональность службы каталогов и службы DNS, аутентификация пользователей и систем по протоколам Kerberos, LDAP, NTLM, а также удаленный доступ к файлам, принтерам и другим сетевым ресурсам по протоколу SMB; состоит из следующих частей:

      • DNS-сервер — встроенный сервер для разрешения доменных имен с использованием протокола DNS;

      • KDC (Heimdal) — центр распространения ключей Kerberos в реализации Heimdal;

      • LDAP-сервер — встроенный сервер для доступа к службе каталогов по протоколу LDAP;

      • SMB-сервер — встроенный сервер для удаленного доступа к файлам, принтерам и другим сетевым ресурсам по протоколу SMB;

    • «Телеметрия» (Exporter) — сбор и публикация метрик по протоколам и транспорту, а также метрик ОС в формате Prometheus на основе анализа логов и вызова различных утилит командной строки (smbstatus, samba-tool и т. п.);

    • репликатор SYSVOL (Unison) — репликация SYSVOL для синхронизации сценариев входа и групповых политик между контроллерами домена;

  • приложение «Менеджер службы каталогов» — веб-интерфейс для администрирования доменных служб и REST API для автоматизации рутинных задач.

Также для реализации функциональности продукта используются DNS-сервер и агрегатор логов:

  • Bind 9 — DNS-сервер Bind 9;

  • Fluent Bit — сбор и отправка логов сервисов службы каталогов, Bind 9, приложения «Менеджер службы каталогов» и экспортера метрик в системы журналирования и аудита.

    Данный компонент не является частью продукта и представляет собой один из способов встраивания в ландшафт организации.