组件介绍和关键资源清单
组件概述
has 是Vastbase G100的一个高可用方案,从1.4版本开始,支持基于企业级的存储设备的高可用功能,在两个节点中切换使用同一存储设备中的数据实例。当主节点出现故障,存储设备会从主节点切换至备节点,由备节点启动数据实例对外提供服务。
has介绍
has是使用Python语言开发实现的数据库高可用方案。has接管数据库的启停,同时监控本地的数据库,并将本地的主备节点间仲裁信息写入共享仲裁设备。
has的主备端是通过是否能获得leader key来控制,获取leader key的has为主节点,剩余的为备节点。
组件关键资源清单
Vastbase G100
配置文件
postgresql.conf:数据库配置参数文件,主要是用于数据库的一些参数配置,默认位置在数据库初始化的数据目录下。
pg_hba.conf:数据库连接控制文件,例如允许特定IP、用户、数据库等进行连接访问,默认位置在数据库初始化的数据目录下。
has
配置文件
vastbase.yml:has启动配置文件,该文件位置可自行设定,以安装部署目录为准。
has_callback.sh:主备库用于管理VIP添加与删除。
check_arbitrator.sh:主备库服务启动时用于添加仲裁设备权限。
mount.sh:用于主库启动时或主备切换时挂载数据存储设备。
umount.sh:用于主库停止或主备切换时取消挂载数据存储设备,如果存在进程在使用挂载点目录,该脚本会杀掉该部分进程
check_switchover.sh:用于在switchover前,检查主节点的挂载点目录是否有除本实例的数据库进程在使用
本文档假定vastbase.yml文件保存在目录'/home/vastbase/has/etc'下,脚本文件保存在目录'/home/vastbase/has/bin',后续涉及sd_has命令以及sd_hasctl命令的操作均在该目录下。