0
点赞
收藏
分享

微信扫一扫

0626-如何监控OpenLDAP主主同步状态

殇感故事 2022-09-22 阅读 35

温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。


Fayson的github:

​​https://github.com/fayson/cdhproject​​


提示:代码块部分可以左右滑动查看噢


1

文档编写目的


前面Fayson介绍了在RedHat7上安装、使用以及与CDH集成的一系列OpenLDAP文章,具体可以参考:

​​1.如何在RedHat7上安装OpenLDA并配置客户端​​

​​2.如何在RedHat7中实现OpenLDAP集成SSH登录并使用sssd同步用户​​

​​3.如何RedHat7上实现OpenLDAP的主主同步​​

​​4.如何为Hive集成RedHat7的OpenLDAP认证​​

​​5.如何为Impala集成Redhat7的OpenLDAP认证​​

​​6.如何为Hue集成RedHat7的OpenLDAP认证​​

本篇主要介绍在OpenLDAP在实现主主同步后,如何监控服务之间主主同步状态,通过监控及时发现主主同步失败问题。


  • 测试环境

1.Redhat7.5

2.OpenLDAP版本为2.4.44


  • 前置条件

1.OpenLDAP已实现主主同步


2

环境说明


1.OPenLDAP已实现了主主同步


[root@cdh01 ~]# ldapsearch -h cdh01.fayson.net -b "dc=fayson,dc=net" -D "cn=Manager,dc=fayson,dc=net" -W |grep dn


0626-如何监控OpenLDAP主主同步状态_.net


为了能够达到OPenLDAP主主同步状态监控的目的,经过查询找到一些资料找到了关于OpenLDAP管理的一些小工具可以参考如下网址:https://ltb-project.org/start,该工具提供了基于Nagios Plugins的perl监控脚本。


3

监控脚本使用


1.监控脚本依赖Nagios Plugins插件,需要在服务器上安装依赖,命令如下:


[root@cdh03 ~]# yum -y install nagios-plugins-perl perl-Time-Piece perl-LDAP


0626-如何监控OpenLDAP主主同步状态_ios_02


2.下载监控脚本,地址如下:


https://ltb-project.org/archives/ltb-project-nagios-plugins-0.7.tar.gz


0626-如何监控OpenLDAP主主同步状态_.net_03


3.解压ltb-project-nagios-plugins-0.7.tar.gz包


[root@cdh03 ~]# tar -zxf ltb-project-nagios-plugins-0.7.tar.gz  
[root@cdh03 ~]# ll ltb-project-nagios-plugins-0.7


0626-如何监控OpenLDAP主主同步状态_ios_04


上述压缩包中提供了多个监控脚本,这里Fayson主要介绍check_ldap_syncrepl_status.pl脚本,该脚本主要是用于监控OpenLDAP同步状态。


4.check_ldap_syncrepl_status.pl脚本参数说明


0626-如何监控OpenLDAP主主同步状态_perl_05


Mandatory options参数说明:

-H: 指定slave节点的IP或hostname

-w: 指同步延迟超过多少秒警告

-c: 指同步延迟超过多少秒严重警告


Other options参数说明:

-v,-vv,-vvv:指定debug级别

-V: 输出脚本版本并退出

-h: 输出脚本的帮助说明并退出

-p: slave服务的端口号

-f: 输出deltatime数据

-U: LDAP Master的URI地址(ldap://cdh01.fayson.net)

-I: OpenLDAP主从同步时配置的rid,rid与-U参数的Master一致


脚本使用:

[root@cdh03 ltb-project-nagios-plugins-0.7]# ./check_ldap_syncrepl_status.pl -H cdh01.fayson.net -w 120 -c 120 -U ldap://cdh02.fayson.net -I 002


0626-如何监控OpenLDAP主主同步状态_perl_06


4

同步状态监控验证


本章节主要通过启用开启Slave节点的Firewall来模拟两个LDAP服务之间主主同步失败现象,然后通过check_ldap_syncrepl_status.pl脚本能够监控到主主同步失败问题。

1.启动cdh02.fayson.net节点的防火墙


[root@cdh02 sync]# systemctl start firewalld
[root@cdh02 sync]# systemctl status firewalld


0626-如何监控OpenLDAP主主同步状态_ios_07


2.在master节点上执行ldapdelte操作,删除fayson用户和组


[root@cdh01 ~]# ldapdelete -x -D "cn=Manager,dc=fayson,dc=net" -W "uid=fayson,ou=People,dc=fayson,dc=net"
[root@cdh01 ~]# ldapdelete -x -D "cn=Manager,dc=fayson,dc=net" -W "cn=fayson,ou=Group,dc=fayson,dc=net"
[root@cdh01 ~]# ldapsearch -h cdh01.fayson.net -b "dc=fayson,dc=net" -D "cn=Manager,dc=fayson,dc=net" -W |grep dn


0626-如何监控OpenLDAP主主同步状态_.net_08


此时的Slave节点fayson用户和组并未同步删除


0626-如何监控OpenLDAP主主同步状态_.net_09


3.上面模拟了主主同步状态异常后,关闭Slave节点的防火墙执行监控脚本检查同步状态


./check_ldap_syncrepl_status.pl -H cdh02.fayson.net -w 120 -c 120 -U ldap://cdh01.fayson.net -I 001
./check_ldap_syncrepl_status.pl -H cdh01.fayson.net -w 120 -c 120 -U ldap://cdh02.fayson.net -I 002


0626-如何监控OpenLDAP主主同步状态_perl_10


通过上述截图可以看到slave(cdh02)节点与master(cdh01)节点同步失败并输出严重告警“CRITICAL - directories are not in sync - 205 seconds late”,与模拟的同步失败一致并通过脚本监控到同步失败状态。


5

总结


1.可以通过脚本的-c和-w参数指定延迟同步时间,通过设置的延迟时间阈值产生不同级别的告警。

2.OpenLDAP配置的主主同步,在文章中使用两个脚本分别监控两侧LDAP同步情况。


提示:代码块部分可以左右滑动查看噢


为天地立心,为生民立命,为往圣继绝学,为万世开太平。

温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。


推荐关注Hadoop实操,第一时间,分享更多Hadoop干货,欢迎转发和分享。

0626-如何监控OpenLDAP主主同步状态_ios_11

原创文章,欢迎转载,转载请注明:转载自微信公众号Hadoop实操


举报

相关推荐

0 条评论