在数据库运维领域,确保数据库的高可用性是至关重要的,它不仅能提高系统的稳定性与可靠性,还能有效减少因故障导致的停机时间,从而保障业务连续性。对于寻求增强其数据库环境稳定性的团队或个人来说,选择合适的高可用软件工具是关键步骤之一。今天小编为大家介绍两款数据库高可用工具:Keepalived和CLup。
使用keepalived做PostgreSQL数据库高可用
1、搭建keepalived高可用PostgreSQL集群第一关
- 搭建流复制集群
搭建一套一主一从的PostgreSQL流复制集群,这里不赘述,直接给大家上环境:
地址 | 角色 |
10.197.165.87 | 主库 |
10.197.165.88 | 从库 |
10.197.165.231 | VIP |
2、搭建keepalived高可用PostgreSQL集群第二关
- 安装Keepalived
本文我们从源码安装keepalived。
从官网下载keepalived的源码包,编译安装
tarxf keepalived-2.2.4.tar.gz
cdkeepalived-2.2.4.
/configure--prefix=/usr/local/keepalived
make&& make install
给keepalived的配置文件建个软链接方便配置。
mkdir -p /etc/keepalived
ln -s /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/
3、搭建keepalived高可用PostgreSQL集群第三关
- 配置Keepalived
配置keepalived对于初学者来说,那可是一件比较麻烦的事呀,要考虑什么场景下切换VIP、怎么识别到这个场景来切、切过去之后如果主库恢复了又要怎么办。
编辑主从两台服务器的
/etc/keepalived/keepalived.conf
- 主库:
- 备库:
还需要配置监测PG数据库的脚本
到这里才配置好keepalived的VIP切换逻辑。还需要配置主库故障后激活备库的流程,这个一般需要结合其他工具实现。小编这里就不赘述了。
这一整套流程下来属实是麻烦,至少得要半天,还要根据不同集群配置不一样的配置,还容易配错。
使用CLup做PostgreSQL数据库高可用
今天给大家分享的另一款软件CLup就很轻便、简单,并且还有Web界面,点一点就可以创建或配置PG数据库高可用集群。
安装CLup:(建议在一个单独的机器安装)
wget -qO /tmp/clup.sh --no-check-certificate
https://get.csudata.com/csuinst/clup.sh && bash /tmp/clup.sh clup install
在数据库服务器安装CLup-agent,并指定CLup-Server为上述安装CLup的服务器地址。
wget -qO /tmp/clup.sh --no-check-certificate
https://get.csudata.com/csuinst/clup.sh && bash /tmp/clup.sh clup-agent install
在浏览器打开CLup服务器地址的8090端口
默认账号/密码:admin/cstech
进入主界面,在创建数据库集群之前,需要先创建一个VIP池。点击HA集群->VIP池管理->添加。填写VIP池的名称和VIP即可创建成功。
接下来创建PostgreSQL数据库集群。点击HA集群->集群定义->创建集群->创建PostgreSQL流复制集群。选择集群包含的服务器,并输入数据库的基本信息,点击下一步。
配置数据库内的一些信息,并分配VIP池
在常用参数配置这里,如果数据库软件没有安装pg_store_plans插件,需要在shared_preload_libraries参数这里把pg_store_plans值删除。
接下来一直点下一步,最后点击确定,PostgreSQL数据库高可用集群就创建成功了。
在HA集群->HA管理->上线。上线集群后就可以使用CLup的高可用功能了。
CLup的高可用功能包括但不限于:
- 主备库意外停库后自动拉起
- 主库故障无法拉起后,自动选择优先级高的备库切换。
- 还支持不同机房的主备库故障切换
此外CLup还有数据库备份、数据库恢复,告警等管理数据库必不可少的功能。真正做到了在功能全面性和系统简洁性之间的完美平衡,属实是精小而强大。