1、 多实例部署建议
操作场景
多实例部署仅V9.5.3支持。指在一个物理服务器上部署多个data集群节点,每个data集群节点称为一个数据库实例。
GBase 8a MPP Cluster在高配服务器(通常采用非统一内存访问架构,简称NUMA架构)上部署时(如:内存大于256G,CPU逻辑核数大于32),通过在一台服务器上部署多个数据库实例的方式提升集群的性能。GBase 8a MPP Cluster在每个服务器上安装部署多个data节点。每个data节点都有一个独立IP地址,不同节点间通过IP地址来区分。每台物理服务器上最多只能部署一个gcluster节点和一个gcware节点。
部署建议
建议为每个data节点申请一个独立的IP地址。
建议同一服务器上的多个data节点的IP尽量不连续,这样可以避免加载时默认多个连续IP的数据节点取数据导致压力集中在部分服务器上,使部分服务器压力过大产生木桶效应。
建议gcware节点、gcluster节点的个数为奇数个,每个物理服务器上最多只能部署1个gcware节点和1个gcluster节点。gcware集群和gcluster集群均是半数以上节点正常时可对外提供正常服务,所以通常部署奇数个节点,且不允许一个服务器上部署超过1个节点。
多实例部署,可以将每个物理服务器当做一个机架,在生成distribution时按照机架高可用的方式生成distribution,从而避免表的主备数据分片都位于同一个物理机上。
如:服务器一:172.16.3.61, 172.16.3.64
服务器二:172.16.3.62, 172.16.3.65
Pattern 1
备份到其他rack机架 Pattern 2
备份到相邻节点
distribution
gcChangeInfo.xml
<servers>
<rack>
<node ip="172.16.3.61"/>
<node ip="172.16.3.64"/>
</rack>
<rack>
<node ip="172.16.3.62"/>
<node ip="172.16.3.65"/>
</rack>
</servers> <servers>
<rack>
<node ip="172.16.3.61"/>
<node ip="172.16.3.62"/>
<node ip="172.16.3.64"/>
<node ip="172.16.3.65"/>
</rack>
</servers>
根据每个服务器的numa节点个数、内存大小、集群规模、业务场景(负载)等评估每个服务器上部署的机器节点个数。建议每个服务器部署不超过4个实例,每个实例可使用的内存不低于32GB。在4个NUMA节点的服务器上,每个NUMA对应一个实例;在8个或更多NUMA节点的服务器上,2个或多个NUMA节点对应一个实例。
建议gcware节点和gcluster节点部署在一个numa节点上,不与data节点部署在一起。
注意
编辑gcChangeInfo_vcall.xml文件时要使同一服务器的每个ip的分片都备份到其他服务器上。
如果使用pattern 1创建distribution,需要将同一服务器的ip放到一个rack上,使其备分片全部落到相邻rack上,保证备份片和主分片落在不同的服务器上;
如果使用pattern 2创建distribution,因为该模式是将备分片放到相邻的IP上,所以需要将不同服务器的IP在gcChangeInfo_vcall.xml中相邻排放。
2、多实例安装部署
步骤1 环境准备
IP准备
配备多个万兆网卡的服务器,可以在不同的网卡上分配不同的IP地址。
当仅有一块儿网卡或网卡数量低于IP地址数量时,可通过配置虚拟IP地址的方式为不同的节点设置IP地址。
其他环境要求同非多实例普通安装环境要求一致。可以参考3.1安装环境准备。
vim /etc/sysconfig/network-scripts/ifcfg-p6p2 (注意修改为网卡对应文件名)
TYPE=Ethernet
BOOTPROTO=none
NAME=enp49s0f0
UUID=f3004479-00cb-4593-a7bc-50af8d9c27f6
DEVICE=enp49s0f0
ONBOOT=yes
IPADDR=192.168.146.10
NETMASK=255.255.255.0
GATEWAY=192.168.146.254
IPADDR1=192.168.146.20
NET