openldap启动不起来

背景

集群使用openldap来管理用户,并与ranger等需要安全认证的组件进行整合。运维同学在处理客户问题时,误使用kill -9而不是systemctl stop slapd将openldap杀掉了,导致启动不起来,报错信息

Sep 16 10:59:10 10 slapd[96215]: hdb_db_open: database "dc=emr,dc=cloud,dc=tencent,dc=com": unclean shutdown detected; attempting recovery.
Sep 16 10:59:10 10 slapd[96215]: bdb(dc=emr,dc=cloud,dc=tencent,dc=com): BDB0110 Log sequence error: page LSN 267 4517301; previous LSN 267 6477499
Sep 16 10:59:10 10 slapd[96215]: bdb(dc=emr,dc=cloud,dc=tencent,dc=com): BDB1520 Recovery function for LSN 267 6477715 failed on forward pass
Sep 16 10:59:10 10 slapd[96215]: bdb(dc=emr,dc=cloud,dc=tencent,dc=com): BDB0061 PANIC: Invalid argument
Sep 16 10:59:10 10 slapd[96215]: bdb(dc=emr,dc=cloud,dc=tencent,dc=com): BDB1546 unable to join the environment
Sep 16 10:59:10 10 slapd[96215]: hdb_db_open: database "dc=emr,dc=cloud,dc=tencent,dc=com" cannot be recovered, err -30973. Restore from backup!
Sep 16 10:59:10 10 slapd[96215]: bdb(dc=emr,dc=cloud,dc=tencent,dc=com): BDB1566 txn_checkpoint interface requires an environment configured for the transaction subsystem
Sep 16 10:59:10 10 slapd[96215]: bdb_db_close: database "dc=emr,dc=cloud,dc=tencent,dc=com": txn_checkpoint failed: Invalid argument (22).
Sep 16 10:59:10 10 slapd[96215]: backend_startup_one (type=hdb, suffix="dc=emr,dc=cloud,dc=tencent,dc=com"): bi_db_open failed! (-30973)
Sep 16 10:59:10 10 slapd[96215]: bdb_db_close: database "dc=emr,dc=cloud,dc=tencent,dc=com": alock_close failed
Sep 16 10:59:10 10 slapd[96215]: slapd stopped.

解决方式

客户集群开启了openldap的高可用,所以需要从正常节点把openldap里的条目拿过来进行恢复,操作步骤如下:

# 正常节点:
slapcat -n 2 -l /root/ldap_bak.ldif
# 异常节点:
scp好节点上的/root/ldap_bak.ldif文件
systemctl stop woodpecker-agent
systemctl stop slapd
# 保持目录权限一致
cp -r /var/lib/ldap /var/lib/ldap_bak
rm -rf /var/lib/ldap/*
cp /var/lib/ldap_bak/DB_CONFIG /var/lib/ldap/
slapadd -l /root/ldap_bak.ldif
chown ldap:ldap -R /var/lib/ldap/

systemctl start slapd
systemctl start woodpecker-agent

验证:
slapcat -n 2 -l /root/ldap_bak_2.ldif
/root/ldap_bak_2.ldif 与 /root/ldap_bak.ldif 对比一致
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容