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

Миграция LDAP на новый сервер LDAP

Мне нужно переместить мой ldap-сервер на более новый. В настоящее время он работает на сервере Ubuntu 7.04. Есть ли способ сделать резервную копию этого сервера, установить новый сервер openldap на новый сервер Ubuntu 11.04 и восстановить на нем старую базу данных?

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

Любая помощь приветствуется, спасибо

Вы не можете выполнить миграцию с использованием репликации, ubuntu 7.1 поставляется с openldap 2.2, у которого нет syncrepl, у него есть только slurpd. Ubuntu 11 поставляется с openldap 2.4, в котором используется syncrepl, а не slurpd. Возможен онлайн-переход с Openldap 2.2 на Openldap 2.3 и openldap 2.3 на Openldap 2.4, но определенно не с Openldap 2.2 на Openldap 2.4.

Вам нужно сделать резервную копию вашего дерева ldap и добавить снова.

Создайте резервную копию данных на старой системе сервера LDAP с помощью ldapsearch или slapcat.

$ldapsearch -x -LLL -b "dc=yourbase,dc=com" -D "cn=Manager,dc=yourbase,dc=com"  -W  >> mybackup.ldif

или используйте slapcat, но перед запуском slapcat убедитесь, что slapd остановлен.

$slapcat -l /tmp/backup.ldif 

После экспорта в файл удалите указанные ниже атрибуты из файла резервной копии. Если используется метод slapcat.

entryUUID|creatorsName|structuralObjectClass|createTimestamp|entryCSN|modifiersName|modifyTimestamp| contextCSN

Импортируйте файл ldif с помощью команды ldapadd

$slapadd -F /etc/openldap/slapd.d/ -n 0 -l /tmp/backup1.ldif

В случаях, когда в ubuntu 7.1 используются сторонние файлы схемы, после копирования файлов схемы в ubuntu11, если происходит какое-либо нарушение схемы, например, OID, используемый в сторонних файлах схемы, может быть несовместим с версиями OpenLDAP ubuntu 11, в этом случае свяжитесь с поставщик, предоставивший файлы схемы.

Ваша конфигурация должна быть всего в одном файле. 7.04, я полагаю, у вас был /etc/ldap/ldap.conf, где находится ваша конфигурация. У вас должна быть возможность переместить файл конфигурации в новую систему и либо запустить openldap с этим файлом конфигурации с аргументом -f, либо вы также можете преобразовать его в динамический бэкэнд, что вы, вероятно, не захотите делать, потому что дополнительной сложности. Поскольку вы могли сбросить содержимое с помощью slapcat и импортировать его, единственным недостающим битом является файл конфигурации.

Если вы переходите с 32-битной машины на 64-битную, данные OpenLDAP могут быть несовместимы. Мне не удалось найти документацию по процессу переноса данных в документации OpenLDAP, но документы Zimbra могут указать вам правильное направление: http://wiki.zimbra.com/wiki/Network_Edition:_Moving_from_32-bit_to_64-bit_Server

Это сработало для меня:

Получите копию своих данных на старом сервере, выполнив следующую команду:

ldapsearch -z max -LLL -Wx -D "cn=admin,dc=your,dc=domain" -b "dc=your,dc=base" > save.ldif

Переместите файл на новый сервер и импортируйте его, запустив:

ldapmodify -c -Wx -D "cn=admin,dc=your,dc=domain" -a -f save.ldif