ldap - 启用多主复制的备份和恢复 OpenLDAP 2.4
问题描述
我们有一个运行有 2 个主(生产者)和 1 个消费者的 openLDAP 集群。我阅读了以下指南,并对使用 slapcat/ldapsearch 和 slapadd/ldapadd 来备份和恢复数据有了足够的了解。
对我来说,将 ldapsearch 与 ldapadd 一起使用可以进行备份和恢复。但是,我最终更改了条目的 entryUUID、contextCSN、create 和 modifyTimestamp。
ldapsearch -x -H ldaps://ldap.server.net -D "dc=mycompany,dc=net" -W -b "dc=admin,dc=mycompany,dc=net" -LLL > ldapd-"`date +%Y%m%d`".ldif
ldapadd -x -c -H ldapi:/// -D "dc=admin,dc=mycompany,dc=net" -y "${PASSWORD_FILE}" -f "ldapd-"`date +%Y%m%d`".ldif
我想检查这是否是进行备份和恢复操作的首选方式,还是有更好的做法?
解决方案
我建议尝试安装 Bacula 社区开源产品 ( www.bacula.org ) 并按照此处的指南进行操作。您只需创建一个将 DIT 导出到单个文件中的脚本。然后,您只需要创建一个使用 Bacula 备份此文件的作业。该解决方案的好处是稍后可以使用 Bacula 从您的基础架构中备份其他内容,它几乎是一个通用系统。
推荐阅读
- c# - 进度条值 > 整数在 if 语句中不起作用?
- javascript - 如何使用 JavaScript 将日期时间从 MySQL 显示到 Web 应用程序?
- javascript - Bootstrap 3仅在打开的面板上更改折叠图标图像?
- ms-access - 带有模式的 MS Access 查询
- php - (1231) 变量 'time_zone' 不能设置为 'NULL' 的值
- python - 如何适当地勾勒出 django-duo-auth 的路径?
- c# - 通过 id-array 以通用方式将子实体附加到父实体
- java - 将 Boomi JMS 连接器配置到 ActiveMQ Artemis
- django - 按方法排序不适用于查询集
- python - 用于摄取数据集并拆分为具有单独名称的较小数据集的功能?