記一次LDAP主從同步配置

LDAP主從同步

  • OpenLDAP在2.3版本以前的同步複製帶有一系列缺點如只支持一主多從模式等,在此缺點就很少說,下文着重介紹一下OpenLDAP V2.4之後的同步負複製功能

同步功能

2.4版最大的功能就是實現了雙向複製,即雙主、多主模式,不管哪一臺master宕機,都不會影響使用。linux

  • 這裏採用Syncrepl模式進行同步: 該方式是從LDAP以拉的方式同步主LDAP的數據,該模式配置簡潔方便

安裝LDAP

  • 主從LDAP服務器都嚴格遵循安裝說明安裝ldap,保證主從LDAP的根節點一致
  • 安裝完畢後應當能夠正常使用,建議使用管理工具測試一下
  • 保證主從LDAP服務器之間網絡互通

配置ldap日誌

  • 在slapd.conf文件中最下方加入loglevel 256
  • 執行vi /etc/rsyslog.conf
  • 最後一行添加 local4.* /var/log/ldap.log
  • 執行 touch /var/log/ldap.log 建立日誌文件
  • service rsyslog restart 重啓服務

Syncrepl

因爲Syncrepl爲拉取模式,修改從LDAP的配置文件slapd.conf從新啓動從LDAP便可。當要複製一個大規模的數據條錄時,建議從主LDAP備份數據,複製到從LDAP上。當從備份數據初始化的時候,沒必要擔憂數據老,由於syncrepl會自動進行校驗,而後進行相應的修改、同步windows

  • /var/log/ldap.log 爲ldap的日誌文件
  • 配置主LDAP
    • 打開slapd.conf,將如下取消註釋
      • moduleload back_ldap.la
      • 加入moduleload syncprov.la

  • 在slapd.conf最下方加入:bash

    index   objectClass     eq
    index entryCSN,entryUUID eq,pres
    loglevel  4095
    overlay syncprov
    #contextCSN 當修改20條時 或者10分鐘
    syncprov-checkpoint 20 10
    #session log 會話日誌條目的最大數量
    syncprov-sessionlog 1000
  • 配置從LDAP
    • 首先中止openLdap服務,執行命令 killall slapd
    • 修改配置文件slapd.conf 這個文.在slapd.conf最下方加入:服務器

      syncrepl rid=012
           # 如下全部的配置前面都是空格,最好不用tab
           #主ldap地址
           provider=ldap://ip:port
           # 同步模式爲拉 拒絕修改
           type=refreshOnly
           # 設置更新時間,60秒1次,最後一個單位是秒,倒數第二個是分鐘 以此類推
           interval=00:00:00:60
           #根節點
           searchbase="c=xxxxx"
           ## 設置全部條目匹配
           scope=sub  
           ##過濾條件,可根據須要修改
           filter="*,+"
           # 複製所有屬性
           attrs="*,+"
           # 設置同步更新時間檢測
           schemachecking=off
           # simple表明使用密碼認證
           bindmethod=simple
           # 同步更新重試次數和時間剛開始的60秒重試10次,之後每300秒重試一次
           retry="60 10 300 +"
           #登陸DN
           binddn="cn=Manager,c=xxxx"
           # 登陸密碼
           credentials=password
  • 注意從LDAP是使用讀寫權限到master中進行同步的!
  • Ldap 配置文件運行在linux服務器上應該UNIX格式,建議在windows上修改後進行格式確認再拷貝到服務器上。修改配置時注意在配置文件不要存在中文註釋,在 syncrepl rid=xxx 如下的全部同步配置參數應當都用table鍵縮進,表示該內容都屬於同步配置。
    網絡

  • 主LDAP 的 slapd服務不須要重啓。contextCSN會根據須要自動生成。它可能最初包含在LDIF文件中,在變成的狀況下產生,或者在從LDAP第一次鏈接主LDAP進行同步的時候產生。若是LDIF文件在被加載時不包含contextCSN時,-w 應與slapadd一塊兒使用,以使它產生。這樣會使從LDAP第一次進行同步的反應更快。
  • 啓動LDAP服務,執行netstat -nlt查看ldap端口是否開啓session

常見錯誤

  • 開啓LDAP後389端口未開啓
    • slapd.conf下配置是否正確,如若確認正確,執行 vi /etc/profile 查看是否有重複的ldap配置,如如有刪除重複配置
    • 以上方案都不行,卸載LDAP從新安裝
  • 配置完同步配置後LDAP沒法啓動
    • 檢查LDAP配置文件(slapd.conf)裏的配置內容,這種狀況通常都是配置內容未填寫正確
  • 配置完同步配置後LDAP啓動成功數據沒法同步
    • 檢查配置中的過濾條件是否填寫正確,有可能存在過濾條件中中文字符在同步過程當中出現亂碼的狀況。因此須要保證編碼無誤(爲unix)
相關文章
相關標籤/搜索