虚谷数据库安装部署分布式版

上一篇讲述了虚谷数据库单机的部署安装(虚谷数据库单节点部署安装),本篇讲述分布式部署安装。

单机版的部署我们按Windows和Linux不同的操作系统进行讲述,分布式部署需要多个服务器,所以本篇主要讲述Linux下三节点的虚谷数据库分布式集群部署。

一、下载地址

官网地址:
https://www.xugudb.com
虚谷V12 Windows试用版下载链接:
https://download.xugudb.com/XuGuDBMS/XuGuServer-12_20230630-trial-win-x64.zip
虚谷V12 Linux-X64试用版下载链接:
https://download.xugudb.com/XuGuDBMS/XuGuServer-12_20230630-trial-linux-x64.tar.gz
虚谷V12 Linux-ARM试用版下载链接:
https://download.xugudb.com/XuGuDBMS/XuGuServer-12_20230630-trial-linux-aarch64.tar.gz

二、安装包解析

安装手册说明:
解压 Linux 程序包,对文件及程序进行权限赋予 (读、写、执行) 后,运行 xugu_start.sh 文件启动数据库服务。 若无
xugu_start.sh 文件则可通过命令行进入数据库安装目录下的./BIN 目录,使 用 -child 或 -service
启动数据库服务。若以 -child 方式启动数据库服务,则数据库的
服务生命周期与命令行窗口相同,关闭命令行窗口则数据库服务随之关闭;-service
方式启动数据库,则数据库服务以后台服务方式运行,关闭命令行窗口仍可提供数 据库服务。 注意: • 在启动数据库服务时必须使用绝对路径。

官网下载得到的XuGuServer-12_20230630-trial-linux-aarch64.tar.gz压缩包,上传到服务器后进行解压。
解压后的文件目录和windows基本一致。
BIN文件目录下如下图存在四个文件

xgconsole-linux-arm64:虚谷数据库命令行登录工具,用于以命令行的形式登录虚谷数据库。
xugu12_linux_arm64_trial:虚谷数据库文件-arm试用版。
xugu_init.sql:虚谷数据库系统包初始化文件,用于构建虚谷数据库中的系统包。
xugu_start.sh:虚谷数据库启动文件,包装命令:$PWD/xugu12_linux_arm64_trial -service

SETUP文件目录同样存在5个文件,如下:

mount.ini:存储路径映射文件
trust.ini:访问控制文件(黑白名单)
types.ini:数据类型映射文件
xugu.ini:系统参数配置文件
cluster.ini:集群控制文件,单机部署时如果存在需要删掉或重命名,否则无法正常启动单机数据库。若从官网下载的包中无cluster.ini文件,可直接联系官网左下角的在线客服获取,也可加入官方QQ群联系内部运维人员获取(QQ群号:240370218)

在这里插入图片描述

三、系统参数设置:

linux部署虚谷数据库时,有着相关依赖包和系统参数配置的要求:
1.依赖包安装(libaio为必须包,其他酌情安装)

yum -y install gcc  libaio ntp gdb snmp(后续若需监控各个节点则需安装snmp)

2.JDK环境需要1.7以上

3.系统参数调整
套接字缓冲区调整:
在/ect/sysctl.conf文件最后添加如下参数
net.core.rmem_default = 2097152
net.core.wmem_default = 2097152
net.core.rmem_max = 8388608
net.core.wmem_max = 8388608
添加完成后执行sysctl -p /etc/sysctl.conf使其立即生效

编辑文件
vim /ect/sysctl.conf
添加如下参数:
net.core.rmem_default = 2097152
net.core.wmem_default = 2097152
net.core.rmem_max = 8388608
net.core.wmem_max = 8388608
执行如下命令使其立即生效
sysctl -p /etc/sysctl.conf

系统内核参数调整:
在/ect/profile文件最后添加如下参数
ulimit -s 20480
ulimit -n 10240
添加完成后执行source /etc/profile使其立即生效

编辑文件
vim /etc/profile
添加如下参数:
ulimit -s 20480
ulimit -n 10240
执行如下命令使其立即生效
source /etc/profile

4.需要关闭cpu超线程模式。

5.防火墙设置
与单机版相比,除需确保用户监听端口(xugu.ini 中的 LISTEN_PORT 参数)设置为受信状态之外,还需将数据库节点间通信端口(cluster.ini 中的 PORTS 端口,默认为受信状态)设置为受信状态,否则数据库集群
节点间无法建立网络通信。测试环境可直接关闭集群节点之间的防火墙。

四、集群文件解析

打开SETUP目录下的cluster.ini文件
在这里插入图片描述
其中各项参数含义如下:

全局参数 :
MAX_NODES:集群最大节点数,限制集群节点规模。
MASTER_GRPS:主控角色组数(两个一组构成主备关系),目前仅支持 1 组。
PROTOCOL:集群节点间通信使用网络协议(支持UDP\RDMA\IB),此版本 仅支持 UDP。
MSG_PORT_NUM:集群间通信端口个数,和节点参数 PORTS 保持一致(最大支持 16)。
MAX_SEND_WIN:消息发送窗口大小,用于节点间通信流量控制(最大支持 2046)。
MSG_HAVE_CRC:是否对收发消息进行 CRC 校验。
MERGE_SMALL_MSG:小包合并发送(保留参数)。
MSG_SIZE:单个消息报文最大长度。
TIMEOUT:消息超时时间(单位:微秒)。
RPC_WINDOW:RPC消息发送窗口大小。
EJE_WINDOW:EJE 消息发送窗口大小。
MAX_SHAKE_TIME:集群握手超时时间(单位:秒)。
MY_NID:当前节点号,当前操作系统 IP 配置必须和此节点号对应的节点参数 中 PORTS 匹配。
CHECK_RACK:是否检测各组主控角色组的机架分布(保留参数)。
节点参数 :
NID:集群节点号,该值连续递增数值。 •
RACK:保留参数。
PORTS:数据库节点网络通讯端口,用于指定数据库节点间的数据交换网络 信息,双网络格式为IP1:PORT1,IP2:PORT2,其中配置通讯端口组数需要与 MSG_PORT_NUM 一致。
(IP地址后显式指定的端口号是集群节点内部通讯的接收端口号,此外还会默认占 用一个发送端口号,计算方式为发送端口号 = 接收端口号+20,集群部署时需验 证所需端口是否被占用。)
ROLE:指定数据库节点在集群中所承担的角色。其中各个字母代表的角色如 下所示。
– M 代表主控角色(必须配置为 2 个且分别配置在奇偶节点,建议保持默 认)。
– S 代表存储角色。 – Q 代表查询角色。
– W代表工作角色(Q 与 W 角色需配置于同一节点上)。
– G 代表变更收集节点(最多允许配置于 2 个节点)。 •
LPU:参与数据运算的最大逻辑 CPU 数,该值建议为服务器物理 CPU 核数-1。
STORE_WEIGHT:节点存储权重,在搭建集群时,若服务器磁盘存储容量不同,则按磁盘容量比配置;若集群磁盘存储容量相同,则配置为同一数值。
cluster.ini 中所有参数项位置顺序不能改变,且首行 #不能删除。

五、分布式数据库部署

准备多个服务器,分别按上述的系统参数配置设置系统参数。
本例使用三台服务器部署虚谷分布式数据库,IP如下:
10.28.20.101
10.28.20.103
10.28.20.104

5.1 上传安装包到各服务器并解压

解压后的目录结构如下:
在这里插入图片描述

5.2 编辑集群配置文件cluster.ini

编辑前:
在这里插入图片描述
编辑后:
在这里插入图片描述

本例为分布式虚谷库的部署测试,只需更改IP:UDP通信端口 和 节点ID即可。其他参数设置,可根据上述集群配置文件中的解析,自行酌情更改。

5.3 启动分布式虚谷数据库

切换到BIN目录下,三个节点服务器依次启动xugu_start.sh文件
在这里插入图片描述
查看stdout.txt,观察分布式数据库启动状态
在这里插入图片描述
看到数据库TPC端口成功被监听后,即代表数据库启动成功。

5.4 登录到数据库查看集群信息

任意节点切换到BIN路径下,使用xgconsole文件进行数据库连接,命令如下

./xgconsole-linux-arm64 nssl 127.0.0.1 5138 SYSTEM SYSDBA SYSDBA
数据库默认系统库为system 默认账号密码为SYSDBA(密码需大写)

登录成功后,在数据库内部执行命令 show clusters; 查看数据库各集群节点状态。
在这里插入图片描述

解析 :
NODE_STATE:
0 :启动中,一般不会看到
1 :一般也不会看到
2 :正常运行态
3 :节点加入过程中,或节点宕机处理过程中
4 :节点宕机态
PROTO_VERSION:
年份后2位+3位版本号 NODE_IP
单机:默认为0.0.0.0:0
集群:cluster.ini中的PORTS参数
NODE_TYPE:
各个角色类型对应值为: 1 :主master
2 :副master
4 :存储节点
8 :查询节点
16 :工作节点
32 :变更节点
计算规则:配置角色对应值相加即为node_type,如角色为’MSQW’则node_type=1+4+8+16=29

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值