LDAP学习笔记之六:389-DS(RHDS)主从复制

一、前置操作

1.新增一台ldap服务器,除主机名称外其他相同,也可以用之前生产的安装文件安装,修改文件中 FullMachineName 及ServerIdentifier字段为本机主机名称,通过 setup-ds-admin.pl -s -f setupxxx.inf,命令行在设置suffix时注意修改为master服务器suffix 

2.新服务器需要配置好TLS,通过ldapsearch -x -ZZ命令验证

[root@ldap-slave1 ~]# egrep -v '#|^$' /etc/openldap/ldap.conf
TLS_CACERT /etc/openldap/certs/cacert.pem
BASE dc=ldap-server1,dc=example,dc=com 
HOST ldap-slave1.example.com
SASL_NOCANON	on

二、slave创建复制用户并开启复制

 

 

启用复制

三、master端配置同步

启用Changelog

设置为主(LDAP可以有多个主,有多种架构,我们这里是最简单的一主一从架构)

 

配置复制协议

 

 

 

 

 

 配置后有时不会立即同步,如果发现此种情况存在,则进行以下操作(再初始化一下,让后重新发送更新)

 

slave查看:

四、测试

1.测试maser修改后,salve是否立即同步master数据

新增数据,查看slave是否有更新,步骤略...

2.模拟master宕机slave是否可以查询

[root@nis-client ~]# egrep -v '#|^$' /etc/openldap/ldap.conf
BASE dc=ldap-server1,dc=example,dc=com
HOST ldap-server1.example.com ldap-slave1.example.com  #同时配置master slave地址,master在前
TLS_CACERT /etc/openldap/certs/cacert.pem

#服务端关闭服务,模拟服务宕机
[root@ldap-server1 CA]# systemctl stop dirsrv.target
[root@ldap-server1 CA]# netstat -tnlp

#客户端再次测试石菲可以正常查询
[root@ldap-slave1 ~]# ldapsearch -x -ZZ

3.模拟master宕机slave是否作为系统账号验证

[root@nis-client ~]# vim /etc/nslcd.conf 
uri ldap://ldap-server1.example.com #默认使用uri第一次设置的服务器,其他作为备
uri ldap://ldap-slave1.example.com
[root@nis-client ~]# systemctl restart nslcd
[root@nis-client ~]# su - nis-user9
上一次登录:三 3月 30 12:42:34 CST 2022pts/3 上
[nis-user9@nis-client ~]$ 

参考:https://linux.die.net/man/5/nslcd.conf  

  

posted @ 2022-04-01 21:20  百衲本  阅读(503)  评论(0编辑  收藏  举报
cnblogs_post_body { color: black; font: 0.875em/1.5em "微软雅黑" , "PTSans" , "Arial" ,sans-serif; font-size: 15px; } cnblogs_post_body h1 { text-align:center; background: #333366; border-radius: 6px 6px 6px 6px; box-shadow: 0 0 0 1px #5F5A4B, 1px 1px 6px 1px rgba(10, 10, 0, 0.5); color: #FFFFFF; font-family: "微软雅黑" , "宋体" , "黑体" ,Arial; font-size: 23px; font-weight: bold; height: 25px; line-height: 25px; margin: 18px 0 !important; padding: 8px 0 5px 5px; text-shadow: 2px 2px 3px #222222; } cnblogs_post_body h2 { text-align:center; background: #006699; border-radius: 6px 6px 6px 6px; box-shadow: 0 0 0 1px #5F5A4B, 1px 1px 6px 1px rgba(10, 10, 0, 0.5); color: #FFFFFF; font-family: "微软雅黑" , "宋体" , "黑体" ,Arial; font-size: 20px; font-weight: bold; height: 25px; line-height: 25px; margin: 18px 0 !important; padding: 8px 0 5px 5px; text-shadow: 2px 2px 3px #222222; } cnblogs_post_body h3 { background: #2B6695; border-radius: 6px 6px 6px 6px; box-shadow: 0 0 0 1px #5F5A4B, 1px 1px 6px 1px rgba(10, 10, 0, 0.5); color: #FFFFFF; font-family: "微软雅黑" , "宋体" , "黑体" ,Arial; font-size: 18px; font-weight: bold; height: 25px; line-height: 25px; margin: 18px 0 !important; padding: 8px 0 5px 5px; text-shadow: 2px 2px 3px #222222; } 回到顶部 博客侧边栏 回到顶部 页首代码 回到顶部 页脚代码