Ldap高可用部署

恩慈2年前技术文章883

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部署

相关文章

 Atlas架构与原理

Atlas架构与原理

一、总体架构Atlas 是一个可伸缩且功能丰富的数据管理系统,深度集成了 Hadoop 大数据组件。简单理解就是一个 跟 Hadoop 关系紧密的,可以用来做元数据管理的一个系统,整个结构图如下所示:...

Presto临时设置session超时时间

Presto临时设置session超时时间

全局默认超时时间为200s:测试语句:select    "t7"."__fcol_16" "__fcol_22",    date_trunc('month', "t7"."__fcol_21"...

docker私有仓库搭建及containerd使用私有仓库

docker私有仓库搭建及containerd使用私有仓库

这里我们要搭建的私有仓库非harbor,而是更轻量的docker-registry。使用的工具是containerd私有仓库搭建```Plain Text创建目录mkdir -p /opt/docke...

数仓主流架构简介之二

数仓主流架构简介之二

一、流批一体数据批流一体是一种云计算架构模式,它结合了批处理和流处理的特点,以实现更高效、灵活和可扩展的数据处理能力。在这种模式下,数据可以同时进行批处理和流处理,以满足不同场景下的需求流批一体:是指...

Linux_ACL权限、mask值

acl权限在什么情况下使用:当要给一个用户与文件的属主、属组、其他人权限都不同的时候使用。也就是说,这个用户对应于这个文件不属于三个身份中的任何一种,是属于第四种身份,那么我们就需要使用acl权限去给...

Debezium部署以及同步之DB2数据到Kafka的同步

Debezium部署以及同步之DB2数据到Kafka的同步

因为Debezium依赖于kafka之上,所以我们先部署kafka和zookeeper(忽略)。1 环境介绍Debezium1.9版本 Db2 11.5版本  附官网:http...

发表评论    

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