本文转自http://www.ywnds.com/?p=12199

Neo4j企业版支持集群及高可用架构,但是社区版本不支持,故才有结合第三方软件来做高可用架构。

架构图如下:

Neo4j+DRBD+Keepalived高可用架构

DRBD双主配置: http://www.ywnds.com/?p=6619

Neo4j配置安装:http://www.ywnds.com/?p=12015

Keepalived安装配置:http://www.ywnds.com/?p=7963

上面的几个组件的安装配置调试这里就不介绍了,看给出的链接文档即可。

这里主要说一下这种模式的keepalived配置文件:

MASTER配置

check_neo4j:检测neo4j是否有问题的脚本。

notify_stop:MASTER出现故障时执行的脚本。

notify_master:当角色变为MASTER时执行的脚本。

/data/scripts/check_neo4j.sh

/data/scripts/notify_stop.sh

/data/scripts/notify_master.sh

BACKUP配置

notify_master:当角色变为MASTER时执行的脚本。

notify_backup:当角色变为BACKUP时执行的脚本。

/data/scripts/notify_master.sh

/data/scripts/notify_backup.sh

#!/bin/bash time=`date "+%F %H:%M:%S"` echo -e "$time ------notify_backup------\n" >> /data/logs/keepalived/notify_backup.log /bin/umount /data/drbd >> /data/logs/keepalived/notify_backup.log /usr/sbin/drbdadm secondary neo4j >> /data/logs/keepalived/notify_backup.log echo -e "\n" >> /data/logs/keepalived/notify_backup.log
1
2
3
4
5
6
#!/bin/bash
time = ` date "+%F  %H:%M:%S" `
echo - e "$time  ------notify_backup------\n" >> / data / logs / keepalived / notify_backup .log
/ bin / umount / data / drbd >> / data / logs / keepalived / notify_backup .log
/ usr / sbin / drbdadm secondary neo4j >> / data / logs / keepalived / notify_backup .log
echo - e "\n" >> / data / logs / keepalived / notify_backup .log
Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐