Назад | Перейти на главную страницу

Как перенести LDAP (базу данных, схему, конфигурацию) на другой компьютер

Я использую openldap 2.4.40, и мне нужно перенести мою существующую базу данных ldap, конфигурацию и схему (в основном все, что связано с сервером ldap) на новый компьютер.

проблема в том, что я больше использую конфигурацию cn = config, а не старый файл slapd.conf.

Документация, предоставляемая openldap и другими сторонними веб-сайтами, помогает только при миграции LDAP-сервера slapd.conf, но не LDAP-сервера с новым файлом конфигурации cn = config.

а также у меня есть новая схема (тип атрибута и объектный класс), есть ли способ как можно проще перенести их на новую машину?

Мне нужен другой способ, кроме перенастройки и добавления схемы вручную одну за другой на новую машину.

Это будет сделано, скорее всего, с намерением выключить старую машину.

TL; DR Есть ли способ удобно перенести базу данных, схему, конфигурацию LDAP с 1 сервера LDAP на новый сервер LDAP с намерением выключить старую машину

Спасибо.

* Разместил ответ ниже

- Хулио

Решение :

Итак, вот что я сделал, чтобы это сработало.

  1. Остановить Slapd на главном сервере
  2. Базы данных Slapcat с главного сервера (Есть 2 базы данных, которые нужно экспортировать. Я использую тег "-n"

    slapcat -n 0 -l (config file location)
    

Это будет экспортировать всю схему и cn = config и

    slapcat -n 1 -l <database backup ldif path>

При этом будут экспортированы все пользовательские данные, которые вы храните в LDAP.

  1. Подключите 2 ldif-файл к новому серверу (убедитесь, что вы установили LDAP на сервере и убедитесь, что конфигурация почти идентична, чтобы упростить задачу)
  2. остановите slapd на новом сервере.
  3. удалить содержимое папки

    /etc/ldap/slapd.d
    
  4. используйте slapadd для импорта конфигурации на новый сервер

    slapadd -n 0 -l (config ldif location)
    

    -n 0 для добавления конфигурации обратно в LDAP

    slapadd -n 1 -l (database ldif location)
    

    -n 1 для добавления базы данных обратно в LDAP

* РЕДАКТИРОВАТЬ: Каким-то образом эта команда не будет работать на моем втором третьем .... и так далее попробуйте. Итак, правильная команда, которую я подтвердил, что она работает:

  slapadd -n 0 -F /etc/ldap/slapd.d -l <config backup ldif path>

и

  slapadd -n 1 -l <data backup ldif path>
  1. измените разрешение в папке /etc/ldap/slapd.d (chown и chmod). Я перешел на openldap и chmod до 755

Также измените разрешение в папке / var / lib / ldap (chown и chmod) на openldap

если у вас есть сертификат для TLS-соединения. Скопируйте сертификаты и ключи со старого сервера на новый сервер в то же самое место. поменять разрешение на свои места.

  1. запустить slapd.

и должно быть хорошо идти.

Надеюсь, это поможет другим людям

Экспортируйте оба дерева (cn=config и ваши обычные данные) в LDIF, импортируйте их обратно на новый сервер (cn=config первый). Готово.

Также, cn=config по сути, представляет собой просто набор файлов LDIF, и можно было бы просто скопировать эту коллекцию в то же относительное место на новом сервере (в то время как slapd не работает).