GBase 8a MPP集群9.5.3多实例版本新功能和变动介绍 |
您所在的位置:网站首页 › gbase数据库sql手册 › GBase 8a MPP集群9.5.3多实例版本新功能和变动介绍 |
GBase 8a数据库集群,在新的版本里提供了充分利用CPU,内存的多实例版本。本文只介绍个人使用中发现的变动内容,如需完整的请索要官方产品文档。 原文:https://www.gbase8.cn/1777 对应版本9.5.3.22 gcware服务集群单独部署该版本支持将gcware服务单独部署,最终管理服务gcware,调度服务gcluster和数据服务gnode,都可以各自独立组成集群。 扩容Gcware 分离后 gcware 不支持扩容! 节点替换gcware单独做节点替换。 $GCWARE_BASE/gcware_server/gcserver.py --prefix=/opt --host=192.168.146.21 --dbaUser=gbase --dbaPwd=gbase --overwritegcware服务启停 对应的gcware服务的启停,也是单独的命令 gcware_services ,参数和gcluster_services一样,但只支持gcware服务。 [gbase@gbase_rh7_003 ~]$ gcware_services all start Starting gcware : [ OK ] Starting GCWareMonit success! [gbase@gbase_rh7_003 ~]$ gcware_services Usage: gcware_services gcware_services help [gbase@gbase_rh7_003 ~]$ gcware节点替换gcware单独部署,提供了单独的XX/gcware/gcware_server/gcserver.py 做节点替换。 gcluster和gbase服务继续用replace.py 多实例支持一个物理节点(虚拟也算),通过不同的IP,运行多个数据计算节点实例(gnode)。 数据节点数量一个物理节点,可以安装多个数据节点实例,当然需要配置多个IP。在之前版本里,最多有1个数据节点。 与gnode配套的syncServer也匹配启动。 数据节点环境变量因为存在多个数据节点,其环境变量配置,不再.gbase_profile里,而是放到了其IP下的gbase_profile内部。注意没有了前置的点,多个gnode,其环境变量部署到了各自IP的目录下,有各自的gbase_profile。连接gnode时,需要先 source各自的gbase_profile文件,才可以或者直接指定-h IP。 source /opt/192.168.0.1/gbase_profile gncli source /opt/192.168.0.2/gbase_profile gncli 配置文件IP信息 在服务配置文件里,通过bind_address指定IP,所以不同的实例配置文件,【不再相同】,【不能】再通过复制的方式进行配置文件分发。 包括如下几个参数 bind_addr basedir datadir pid_file socket gbase> show variables like '%dir%'; +-------------------------+----------------------------------------------------------+ | Variable_name | Value | +-------------------------+----------------------------------------------------------+ | basedir | /opt/gbase/10.0.2.104/gnode/server/ | | character_sets_dir | /opt/gbase/10.0.2.104/gnode/server/share/gbase/charsets/ | | datadir | /opt/gbase/10.0.2.104/gnode/userdata/gbase/ | | gbase_cache_data_dir | /opt/gbase/10.0.2.104/gnode/tmpdata/cache_gbase | | gbase_export_directory | ON | | gbase_krb5cc_tmpdir | /opt/gbase/10.0.2.104/gnode/tmpdata/krb5cc_gbase | | gbase_loader_logs_dir | /opt/gbase/10.0.2.104/gnode/log/gbase/loader_logs/ | | gbase_mmap_hugefile_dir | | | gbase_tx_log_dir | /opt/gbase/10.0.2.104/gnode/translog/ | | load_dirty_data_size | 0 | | plugin_dir | /opt/gbase/10.0.2.104/gnode/server/lib/gbase/plugin | | slave_load_tmpdir | /tmp | | tmpdir | /tmp | +-------------------------+----------------------------------------------------------+ 13 rows in set (Elapsed: 00:00:00.00)内存参数 各个节点的服务内存配置参数,需要人工设置,包括pct参数,_gbase_express_table_metadata_limit等。 否则多个实例都将按照全部内存进行默认计算,将内存不足。 gbase> show variables like '%heap%'; +---------------------------+--------------+ | Variable_name | Value | +---------------------------+--------------+ | _gbase_enable_system_heap | OFF | | gbase_heap_data | 4793040896 | | gbase_heap_large | 2395996160 | | gbase_heap_temp | 797966336 | | max_heap_table_size | 160000000000 | +---------------------------+--------------+ 5 rows in set (Elapsed: 00:00:00.01) gbase> show variables like '%pct%'; +-------------------------+----------+ | Variable_name | Value | +-------------------------+----------+ | gbase_cpu_pct_target | 0.000000 | | gbase_memory_pct_target | 0.800000 | +-------------------------+----------+ 2 rows in set (Elapsed: 00:00:00.00) gbase> gbase> show variables like '%meta%'; +-------------------------------------+-----------+ | Variable_name | Value | +-------------------------------------+-----------+ | _gbase_express_table_metadata_limit | 398983168 | | _t_gbase_part_table_check_metadata | 1 | +-------------------------------------+-----------+ 2 rows in set (Elapsed: 00:00:00.00) gbase> show variables like '%heap%'; +---------------------------+--------------+ | Variable_name | Value | +---------------------------+--------------+ | _gbase_enable_system_heap | OFF | | gbase_heap_data | 4793040896 | | gbase_heap_large | 2395996160 | | gbase_heap_temp | 797966336 | | max_heap_table_size | 160000000000 | +---------------------------+--------------+ 5 rows in set (Elapsed: 00:00:00.01) gbase> show variables like '%pct%'; +-------------------------+----------+ | Variable_name | Value | +-------------------------+----------+ | gbase_cpu_pct_target | 0.000000 | | gbase_memory_pct_target | 0.800000 | +-------------------------+----------+ 2 rows in set (Elapsed: 00:00:00.00) gbase> 服务和端口信息因为gcluster和gcware可以部署在不同的IP,所以需要直到对应服务的IP和端口,所以在各自/config/cluster_common.cnf配置。 [gbase@gbase_rh7_003 config]$ cat /opt/gbase/10.0.2.104/gnode/config/cluster_common.cnf { "cluster": { "uuid":"bbe70118-9e62-11eb-92f4-0800278ed928", "nodeIPtype":"0", "nodes": [ { "memberaddr":"10.0.2.103" } ] }, "datanode": { "localdatanode":"10.0.2.104", "sessiontimeout":20, "nodes": [ { "memberaddr":"10.0.2.104" }, { "memberaddr":"10.0.2.105" }, { "memberaddr":"10.0.2.106" } ] }, "gcware": { "nodes": [ { "memberaddr":"10.0.2.103" } ], "client_port":"5919" } }集群服务在线检测机制 V8里是采用ssh检测节点是否在线,通过连接节点服务IP+端口检测服务是否在线。 在V953里采用了注册机制:GBase 8a 9.5.3多实例版本的服务状态注册和检测机制 Segment_id分片编号返回分布表,数据所在分片的编号。在GBase的数据计算里,对应的是表的_n1,_n2,这样的分片。 有关内容参考 :GBase 8a 从集群层通过segment_id直接查询分片数据排查倾斜 Base64编码解码函数 内置了to_base64和from_base64两个函数,详情和样例请参考:GBase 8a 支持Base64加解密函数V9.5.3版本 补充说明 服务数量每个节点(物理或虚机)只能设置一个gcware和coordinator。但允许有多个数据节点实例(IP不同) 安装目录每个实例,安装到指定目录的IP子目录下,这些目录可以提前创建并mount到合适的磁盘位置。 比如 /opt/192.168.0.1 /opt/192.168.0.2 每个实例对应IP的目录下,才是gcluster/gnode/gcware等目录。 ipv6地址中的冒号被替换成点 ‘:’ –> ‘.’ 如果没有提前创建,那么安装程序会自动创建。 参考GBase 8a多实例版本9.5.3安装实例和运维常用命令 GBase 8a多实例9.5.3版本扩容实例操作手顺 GBase 8a多实例版本9.5.3变动介绍 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |