炫“库”行动-人大金仓有奖征文-人大金仓数据库(V8R6)高可用集群部署
前言:本文正在参与炫“库”行动-人大金仓有奖征文,活动链接:CSDN。笔者使用国产人大金仓数据库已经有一段时间了,恰好遇到这个活动,就分享一下个人的学习经验,也欢迎各位读者参加此次活动,分享自己的所学所得。学习的路上,我们一路同行。
1、人大金仓集群介绍(来源于官网)
1.1、金仓数据库读写分离集群软件
金仓数据库读写分离集群软件KingbaseRWC 是满足金仓数据库管理系统高可用集群、读写分离集群功能的产品组件。该组件可保证数据库提供7×24小时不间断的数据支撑能力,实现基于日志传输复制技术读写分离集群管理系统。
产品特点:
1、基于不依赖第三方双机方案的主备集群模式,且支持备机可读,可支持达到16个备机;
2、基于日志级别的同步,支持实时备机和异步备机等多种同步模式;
3、支持手动切换、自动切换等多种切换模式;
4、支持主机故障后,备机自动接管,支持应用透明故障切换,可以使用户感受不到失败;
5、支持配置读写比例,以更好的适应应用场景需求;
6、能自动适应快速变化的业务需求和因而发生的负载变化,应用程序的用户和中间层应用服务器客户端通过服务名(Service Name)连接到数据库,自动地在应用中的各个节点上进行负载均衡。
2、集群部署
2.1、在VMWare虚拟机中新建2台虚拟机,分别命名为R6node1,R6node2。笔者的虚拟机操作系统是CentOS 7,每台虚拟机需分配2G以上内存(所以物理机内存最好是8G以上),至少一块网卡(两台虚拟机的网络连接模式建议NAT模式,比较方便后续操作。网卡需要分配IP,建议在安装时分配)以及两块磁盘(一块系统盘,一块数据盘,系统盘建议20G以上,数据盘建议50G以上)。虚拟机操作系统的安装不是笔者分享的重点,各位读者可自行百度。安装结果参考如下:
各节点IP:
各节点磁盘信息:
各节点CPU内存:
2.2两台虚拟机禁用selinux,并关闭防火墙。生产环境有网络策略,测试环境就这样操作比较方便。
修改/etc/selinux/config文件中的SELINUX参数为disabled。
查看防火墙状态,停止并禁用防火墙
2.3获取安装包及授权文件。官网链接:人大金仓-KingbaseES V8 R6,根据CPU及操作系统版本选择安装包,授权文件选择企业版授权。若是跟笔者一样是CentOS,选择x86-64版本即可。下载到本机之后,可通过FTP工具或者其他工具将安装包及授权上传至虚拟机,只需上传到主节点即可。这里我们选择IP小的虚拟机作为主节点。
新建数据库安装用户kingbase,并设置密码(两台机器都要)
将集群版安装包以及授权上传到主节点虚拟机
主节点安装数据库软件。先挂载ISO镜像,并将授权文件改名。然后切换至kingbase用户安装。
可以根据环境选择图形化界面安装或者控制台模式安装,笔者介绍一下控制台模式安装:
首次安装选择1安装新的实例
回车查看协议,输入y/Y接受协议以继续安装
输入安装路径,需要安装用户有写入权限,笔者的路径是/home/kingbase/KingabseES/V8。检查确定之后输入Y
回车等待安装,安装完成之后退出
2.4 安装完成之后,打开数据库部署工具,准备部署集群
双击运行,创建项目
选中新建的项目,右击选择新建集群
输入集群名称和root密码,点击右下角下一步
配置基础属性:数据库zip包自带,点击选择之后,选择自带的db.zip即可。数据最大连接数(max_connection)、数据库密码(dbPassword)、兼容模式(db_mode)、信任网关(trust_servers)等参数可根据需求配置。然后点击下一步左上角高级设置,配置高级设置。
配置虚拟IP(virtual_ip),需要一个不被使用的IP,只供数据库集群使用。恢复模式(recovery)推荐standby,即数据库主节点宕机不自动起服务,备节点宕机自动起服务。然后执行which ip命令,确定ip_path。
然后点击右下角 确定。然后展开项目,集群,选中节点管理,右击新增节点
输入显示名称,主节点IP地址,获取网卡名称,选择上传的license文件,点击右下角下一步
点击右下角检查,查看是否有错误信息。
检查无误后,下一步,下一步,部署
节点部署成功后,同上,建立备节点
部署完成之后,命令行执行ps -ef|grep kingbase查看进程,看data进程,wal sender进程(备节点wal receiver进程)是否存在。
两台虚拟机配置环境变量,vi /home/kingbase/.bashrc,追加export PATH=/home/kingbase/cluster/myproject/KingbaseCluster/kingbase/bin:$PATH,source /home/kingbase/.bashrc生效。注:其中的/home/kingbase/cluster/myproject/KingbaseCluster/是集群的安装目录。
然后执行repmgr cluster show查看集群状态,primary表示为主节点,running表示正在运行。
3、数据同步测试
命令行执行ksql -Usystem -d TEST连接数据库
主库新建库ndb001,立马去备库查看是否有这个库 。结果是正常同步
新建表,插入1000条数据,查看备库是否同步。结果是正常同步
结语:以上就是金仓数据库V8R6的部署全过程了,各位读者赶紧去试着在自己的电脑上部署一套金仓高可用集群吧!如果有问题欢迎大家留言讨论。 本文正在参与炫“库”行动-人大金仓有奖征文,活动链接:CSDN。有兴趣的读者也可以参与一下。