Ldap高可用部署

恩慈2年前技术文章985

Ldap配置高可用

两个节点上均执行

mkdir /data/ldap

cd /data/ldap

1.1. 添加mod_syncprov.ldif文件

vi mod_syncprov.ldif

 

内容如下:

objectClass: olcModuleList

cn: module

olcModulePath: /usr/lib64/openldap

olcModuleLoad: syncprov.la

 

执行添加操作

ldapadd -Y EXTERNAL -H ldapi:/// -f mod_syncprov.ldif

 

1.2. 添加syncprov.ldif文件

vi syncprov.ldif

 

内容如下:

dn: olcOverlay=syncprov,olcDatabase={2}hdb,cn=config

objectClass: olcOverlayConfig

objectClass: olcSyncProvConfig

olcOverlay: syncprov

olcSpCheckpoint:100 10

olcSpSessionLog: 100

 

执行添加操作

ldapadd -Y EXTERNAL -H ldapi:/// -f syncprov.ldif

1.3. 添加master01.ldif配置文件

vi master01.ldif (xxx.xxx.xxx.218节点)

内容如下:

dn: cn=config

changetype: modify

replace: olcServerID

olcServerID: 1

 

dn: olcDatabase={2}hdb,cn=config

changetype: modify

add: olcSyncRepl

olcSyncRepl: rid=001

  provider=ldap://xxx.xxx.xxx.220:389/

  bindmethod=simple

  binddn="cn=admin,dc=dfcv,dc=com"

  credentials=admin@123

  searchbase="dc=dfcv,dc=com"

  scope=sub

  schemachecking=off

  attrs="*,+"

  type=refreshAndPersist

  retry="5 5 300 +"

  interval=interval=00:00:01:00

-

add: olcMirrorMode

olcMirrorMode: TRUE

-

add: olcDbIndex

olcDbIndex: entryUUID eq

-

add: olcDbIndex

olcDbIndex: entryCSN eq

 

执行添加操作

ldapadd -Y EXTERNAL -H ldapi:/// -f master01.ldif -W

 

1.4. 添加master02.ldif配置文件

vi master02.ldif (xxx.xxx.xxx.220节点)

内容如下:

dn: cn=config

changetype: modify

replace: olcServerID

olcServerID: 2

 

dn: olcDatabase={2}hdb,cn=config

changetype: modify

add: olcSyncRepl

olcSyncRepl: rid=001

  provider=ldap://xxx.xxx.xxx.218:389/

  bindmethod=simple

  binddn="cn=admin,dc=dfcv,dc=com"

  credentials=admin@123

  searchbase="dc=dfcv,dc=com"

  scope=sub

  schemachecking=off

  attrs="*,+"

  type=refreshAndPersist

  retry="5 5 300 +"

  interval=interval=00:00:01:00

-

add: olcMirrorMode

olcMirrorMode: TRUE

-

add: olcDbIndex

olcDbIndex: entryUUID eq

-

add: olcDbIndex

olcDbIndex: entryCSN eq

执行添加操作

ldapadd -Y EXTERNAL -H ldapi:/// -f master02.ldif -W

部署 keepalived(两台机器均执行)

1.5. 安装keepalive

yum -y install keepalived

 

1.6. 修改keepalived配置

 

xxx.xxx.xxx.218节点编辑

vim  /etc/keepalived/keepalived.conf

 

内容如下:

global_defs {

}

vrrp_script check_proxy {

  script "/opt/scripts/chk_server.sh"

  interval 2

  weight -30

  fall 2

  rise 1

}

vrrp_instance VI_1 {

    state MASTER

    interface ens160

    virtual_router_id 91

    priority 100

    advert_int 1

    virtual_ipaddress {

        xxx.xxx.xxx.13

    }

    track_script {

      check_proxy

    }

}

 

xxx.xxx.xxx.220节点编辑

vim /etc/keepalived/keepalived.conf

 

内容如下:

global_defs {

}

vrrp_script check_proxy {

  script "/opt/scripts/chk_server.sh"

  interval 2

  weight -30

  fall 2

  rise 1

}

vrrp_instance VI_1 {

    state BACKUP

    interface ens160

    virtual_router_id 91

    priority 100

    advert_int 1

    virtual_ipaddress {

        xxx.xxx.xxx.13

    }

    track_script {

      check_proxy

    }

}

 

1.7. 准备chk_server.sh文件

vi /opt/scripts/chk_server.sh

 

内容如下:

#!/bin/bash

counter=$(ps -C slapd --no-heading|wc -l)

if [ "${counter}" = "0" ]; then

    systemctl start slapd

    sleep 2

    counter=$(ps -C slapd --no-heading|wc -l)

    if [ "${counter}" = "0" ]; then

    systemctl stop keepalived

    fi

fi

 

 

授权

chmod  755 /moviebook/scripts/chk_server.sh

 

1.8. 启动keepalived

systemctl start keepalived

systemctl enable keepalived

 

 


返回列表

上一篇:Ldap部署

下一篇:Ranger部署

相关文章

ES字段类型与内存管理

ES字段类型与内存管理

一、ES常见字段类型:1、 概述字段是数据存储的最小微粒,根据数据的性质不同将数据分成不同的字段类型,熟悉不同字段类型的特性,对索引的Mapping设计、查询调优都极其重要。2、 关键参数Index:...

scylladb通过扩缩容节点迁移数据

环境: Scyllsdb版本:4.2一、上线新节点1、确认集群状态和检查配置· 首先确认集群各节点状态是Up Normal (UN),[root@172-16-121-153 scylla]# nod...

MySQL性能优化(四)隐式类型转换

我们知道, where条件中,对一个索引字段进行运算会导致无法使用该字段的索引。有些情况下,即使没有显式地对索引字段进行运算,但是数据库会进行隐式类型转换,这也会导致无法使用索引。会发生隐式类型转换的...

RAID磁盘阵列详解

RAID磁盘阵列详解

1 RAID原理无论是DAS、NAS还是SAN,都是存储系统,一个存储系统可以包含多块磁盘。不同磁盘之间的组织排列,就是磁盘阵列技术,也就是RAID技术。RAID磁盘阵列技术的核心思想主要有两个,包括...

Hbase2.x 使用hbck2

Hbase2.x 使用hbck2

1、背景默认情况下apache hbase 使用hbck2时,无法使用-j 来加载hbck2的jar包,无法进行修复2、解决办法是由于默认情况下只使用自带的hbase hbck修复命令,大部分功能在2...

Greenplum数据库建立外部表加载HDFS文件实践指导

Greenplum数据库建立外部表加载HDFS文件实践指导

环境概述(1)     Greenplum数据库版本号Greenplum Database 4.3.0.0POC3 build 45206(基于PostgreS...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。