Clup-高可用集群管理软件
Clup软件可同时管理多台PG数据库集群,部署方便快速。具备高可用切换、读写分离、负载均衡等多项功能。带有可视化管理界面释放运维人员工作复杂度
使用场景
业务系统需7*24小时提供服务,适用此架构可保证业务系统永远在线。
多个业务系统需要同时管理多套集群。
读压力较大需要多个读节点提供系统吞吐能力。
一、 高可用HA
高可用H.A.(High Availability)指的是通过尽量缩短因日常维护操作(计划)和突发的系统崩溃(非计划)所导致的停机时间,以提高系统和应用的可用性,它与被认为是不间断操作的容错技术有所不同。HA系统是企业防止核心计算机系统因故障停机的最有效手段。
高可用解决方案有如下几个特性:可靠性、可恢复性、自动故障检测、和连续服务。
二、 Clup
Clup是一套实现PostgreSQL数据库的私有云RDS产品
可以实现PostgreSQL集群统一管理、统一运维。
可以实现PostgreSQL集群的故障自动切换等高可用功能
实现对PostgreSQL数据库性能的监控加告警管理
实现对数据库所在主机性能数据监控加告警管理
对PostgreSQL的TopSQL的管理
三、 Clup高可用
保障数据可用性
— 高可用机制自动切换
— 保障数据一致性读写分离
— 提供读写VIP
— 读写分离高可用负载均衡
— 多个只读备库之间负载均衡高扩展性
— 读线性扩展
— 支持分库分表主动探测
— 主动探测主库存活状态
— 自动在standby节点选择主库释放主库资源
— 卸载主库VIP
— 关闭主库数据库更改复制关系
— 将其余standby数据库复制指向新主库VIP飘逸
— 将VIP挂载到新的主库上
— 应用请求自动发送到新的主库上
四、 Clup优点
特点及优势
安装配置
— 开箱即用无需繁琐配置,定位于企业级PostgreSQL集群管理产品高可用切换
— 支持(自动、手动),并可在多台备库中进行切换读写分离
— 支持读负载均衡
— 支持扩展
— 当业务压力增大时可动态增加备库提供读服务集群数量
— 可同时管理多套数据库集群后续支持
— 代码自主可控,可方便添加功能易用性
— 提供命令行管理命令可进行查询集群状态及管理集群页面
— 具有页面监控
五、 Clup高可用解决方案
乘数Cluster for PostgreSQL软件(简称Clup)在PostgreSQL数据库集群中实现了高可用,目前主要实现了两种高可用:基于共享磁盘的高可用方案、基于流复制的高可用及读写分离的解决方案。
有一台机器上部署的CLup管理节点,这个管理节点提供WEB管理界面统一管理所有的PostgreSQL数据库。
每台数据库主机上部署clup-agent。CLup管理节点通过clup-agent来管理这台机器上的PostgreSQL数据库。
对于基于共享磁盘的高可用方案:
有一个共享存储挂载在两台机器中,正常工作时,数据库运行在一台机器上,同时共享磁盘的文件系统也挂载在这台机器上,另一台机器做为备机。
当数据库运行的机器出现问题后,Clup会把相应的共享磁盘mount到备机,然后在备机上把数据库拉起来,同时会把相应的VIP飘过来,保证整个集群的高可用。
对于基于流复制的高可用及读写分离的使用场景为:
有一个主库
有多个Standby库,Standby库与主库通过streaming replication进行同步。streaming replication的同步模式可以设置为同步或异步。
有一个write VIP,这个write VIP通常在主库所在的机器上。
有一个read VIP,这个read VIP是在一台部署了负载均衡器cstlb(是乘数科技提供的负载均衡器)的机器上,cstlb会把请求负载均衡到各台备库上。
通常为了简化部署,cstlb会直接部署在两台Standby的机器上。
应用如果需要执行写数据的操作,需要连接write VIP,通过write VIP访问主库。当然对于读延迟敏感的应用也需要通过write VIP访问主库。应用可以通过访问read VIP访问只读的备库。当有多个备库时,使用乘数科技的负载均衡软件cstlb,可以把读分发到多台的只读库上。
clup安装在一台独立的机器上,clup在这台机器上去探测各个数据库是否正常,如果不正常,则会进行相应的切换工作。
当主库坏的时候,clup会自动把其中一台Standby库提升为主库,从而实现高可用。同时会通知负载均衡软件cstlb中把这台提升为主库的Standby库从负载均衡中去掉。
当一台Standby库出现问题时,当read VIP也在这台机器上时,clup会把read VIP切换到另一台机器上。同时也会把这台Standby库从负载均衡cstlb中去掉。
当然我们也可以不使用读写分离,即不配置read VIP和读负载均衡,对数据库的所有的读写访问都是通过write VIP
六、 Clup主要功能
支持一键创建流复制集群、添加流复制集群、添加共享磁盘高可用集群。
流复制高可用集群支持异步模式和同步模式。
集群发生故障时可以自动切换。也可以手动进行HA切换
支持创建和添加数据库、数据库启停、登录数据库主机、psql连接数据库、一键搭建备库、复制连接切换到其他库(支持级联主备)、备库激活为主库
可以查看每一个数据库中所有的session,可以根据需要对session进行cancel和terminate
支持数据库所在主机的CPU、内存、SWAP、网络收发包、网络流量、磁盘流量、磁盘的 IOPS性能监控
支持对每个数据库的数据目录所在磁盘使用率、连接数、WAL吞吐量、复制连接数、备库延迟、数据行操作统计、每秒数据块读数和命中数、每秒事务数 提交数 回滚数、和topSQL监控
支持数据库、主机和集群HA的监控报警,支持企业微信、钉钉、右键告警通知