node | 操作系统 | IP | 内存 | gbase版本 |
---|---|---|---|---|
gbase1 | redhat7.3 | 192.168.30.101 | 2G | GBase8a_MPP_Cluster-License-9.5.2.39-redhat7.3-x86_64 |
gbase2 | redhat7.3 | 192.168.30.102 | 2G | GBase8a_MPP_Cluster-License-9.5.2.39-redhat7.3-x86_64 |
gbase3 | redhat7.3 | 192.168.30.103 | 2G | GBase8a_MPP_Cluster-License-9.5.2.39-redhat7.3-x86_64 |
安装系统时建议在“软件选择”中勾选“带GUI的服务器”中的“开发工具”选项。
? 以下操作,三台主机均需执行!截图仅展示主节点。
systemctl stop firewalld.service
systemctl disable firewalld.service
关闭 Selinux 之后需要重启主机才能生效,这里使用 setenforce 0
临时生效。
/usr/sbin/setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
useradd gbase
echo gbase | passwd --stdin gbase
mkdir -p /opt/gbase
chown gbase:gbase /opt/gbase
chown gbase:gbase /tmp
reboot
非必须,建议重启三个节点后进行安装。
GBase 8a MPP Cluster 安装
主节点为 192.168.30.101
,因此上传安装介质到主节点 /opt
目录下。
cd /opt
tar xfj GBase8a_MPP_Cluster-License-9.5.2.39-redhat7.3-x86_64.tar.bz2
解压成功后,/opt
目录会多出一个 gcinstall
的目录。
这里三台主机均需要配置环境变量,因此需要拷贝配置文件 SetSysEnv.py
到三台主机的 /opt
目录下。
cp gcinstall/SetSysEnv.py /opt
scp /opt/gcinstall/SetSysEnv.py 192.168.30.101:/opt
scp /opt/gcinstall/SetSysEnv.py 192.168.30.102:/opt
scp /opt/gcinstall/SetSysEnv.py 192.168.30.103:/opt
? 注意:以上命令只需要在主节点执行分发即可。
以下命令每个节点均需执行:
cd /opt
python SetSysEnv.py --dbaUser=gbase --installPrefix=/opt/gbase --cgroup
su - gbase
cd /opt/gcinstall/
vi demo.options
修改内容如下:
installPrefix= /opt/gbase
coordinateHost = 192.168.30.101,192.168.30.102,192.168.30.103
coordinateHostNodeID = 101,102,103
dataHost = 192.168.30.101,192.168.30.102,192.168.30.103
#existCoordinateHost =
#existDataHost =
dbaUser = gbase
dbaGroup = gbase
dbaPwd = 'gbase'
rootPwd = 'root'
#rootPwdFile = rootPwd.json
注意:IP地址根据实际环境进行修改,dbaPwd
是 gbase
账户的密码,rootPwd
是 root
账户的密码。
只需要在主节点执行安装命令即可。
cd /opt/gcinstall
./gcinstall.py --silent=demo.options
中间过程输入两次 y
gbase 用户下,新打开一个窗口或者手动生效环境变量:
source ~/.bash_profile
gcadmin
[gbase@gbase1 gcinstall]$ gcadmin
CLUSTER STATE: ACTIVE
=================================================================
| GBASE COORDINATOR CLUSTER INFORMATION |
=================================================================
| NodeName | IpAddress | gcware | gcluster | DataState |
-----------------------------------------------------------------
| coordinator1 | 192.168.30.101 | OPEN | CLOSE | 0 |
-----------------------------------------------------------------
| coordinator2 | 192.168.30.102 | OPEN | CLOSE | 0 |
-----------------------------------------------------------------
| coordinator3 | 192.168.30.103 | OPEN | CLOSE | 0 |
-----------------------------------------------------------------
===============================================================
| GBASE CLUSTER FREE DATA NODE INFORMATION |
===============================================================
| NodeName | IpAddress | gnode | syncserver | DataState |
---------------------------------------------------------------
| FreeNode1 | 192.168.30.101 | CLOSE | OPEN | 0 |
---------------------------------------------------------------
| FreeNode2 | 192.168.30.102 | CLOSE | OPEN | 0 |
---------------------------------------------------------------
| FreeNode3 | 192.168.30.103 | CLOSE | OPEN | 0 |
---------------------------------------------------------------
0 virtual cluster
3 coordinator node
3 free data node
可以看到此时集群状态和节点状态都是 CLOSE
,原因是因为因为没有注册 License
授权,属于正常现象。
进入 /opt/gcinstall
目录下,执行导出指纹命令,IP和密码根据实际情况修改:
cd /opt/gcinstall
./gethostsid -n 192.168.30.101,192.168.30.102,192.168.30.103 -u root -p root -f /tmp/finger.txt
[gbase@gbase1 gcinstall]$ ./gethostsid -n 192.168.30.101,192.168.30.102,192.168.30.103 -u root -p root -f /tmp/finger.txt
======================================================================
Successful node nums: 3
======================================================================
客户名称: 学员公司名称
项目名称: 2022年X月认证培训
申请人: 填写自己姓名
申请原因: 培训学习
有效期: 3个月
操作系统名称及版本: Red Hat Enterprise Linux Server release 7.3 (Maipo)
8a集群版本: GBase8a_MPP_Cluster-License-9.5.2.39-redhat7.3-x86_64.tar.bz2
授权文件(20220517-04.lic)后上传到主节点的 /tmp
下。
cd /opt/gcinstall
./License -n 192.168.30.101,192.168.30.102,192.168.30.103 -f /tmp/20220517-04.lic -u gbase -p gbase
[gbase@gbase1 gcinstall]$ ./License -n 192.168.30.101,192.168.30.102,192.168.30.103 -f /tmp/20220517-04.lic -u gbase -p gbase
======================================================================
Successful node nums: 3
======================================================================
cd /opt/gcinstall
./chkLicense -n 192.168.30.101,192.168.30.102,192.168.30.103 -u gbase -p gbase
[gbase@gbase1 gcinstall]$ ./chkLicense -n 192.168.30.101,192.168.30.102,192.168.30.103 -u gbase -p gbase
======================================================================
192.168.30.101
is_exist:yes
version:trial
expire_time:20220817
is_valid:yes
======================================================================
192.168.30.103
is_exist:yes
version:trial
expire_time:20220817
is_valid:yes
======================================================================
192.168.30.102
is_exist:yes
version:trial
expire_time:20220817
is_valid:yes
可以看到,三个节点均已授权成功。
License 状态说明:
is_exist
用于标识 license 文件是否存在: yes 代表存在,no 代表不存在;version
用于标识 license 类型: trial为试用版, business 为商用版;expire_time
用于标识试用版 license 的到期日期,只在检测试用版license 时才会显示;is_valid
用于标识 license 是否有效: yes 代表 license 有效,no代表 license 失效;? 注意:授权有效期为 3 个月,如果没超出 license 有效期,CPU、内存、网卡等机器配置没变更过,可以重复使用。虚拟机系统重装之后,就需要重新申请。
su - gbase
gcluster_services all start
gcadmin
[gbase@gbase1 gcinstall]$ gcluster_services all start
Starting gcware : [ OK ]
Starting gcluster : [ OK ]
Starting gcrecover : [ OK ]
Starting gbase : [ OK ]
Starting syncserver : [ OK ]
Starting GCMonit success!
[gbase@gbase1 gcinstall]$ gcadmin
CLUSTER STATE: ACTIVE
=================================================================
| GBASE COORDINATOR CLUSTER INFORMATION |
=================================================================
| NodeName | IpAddress | gcware | gcluster | DataState |
-----------------------------------------------------------------
| coordinator1 | 192.168.30.101 | OPEN | OPEN | 0 |
-----------------------------------------------------------------
| coordinator2 | 192.168.30.102 | OPEN | OPEN | 0 |
-----------------------------------------------------------------
| coordinator3 | 192.168.30.103 | OPEN | OPEN | 0 |
-----------------------------------------------------------------
===============================================================
| GBASE CLUSTER FREE DATA NODE INFORMATION |
===============================================================
| NodeName | IpAddress | gnode | syncserver | DataState |
---------------------------------------------------------------
| FreeNode1 | 192.168.30.101 | OPEN | OPEN | 0 |
---------------------------------------------------------------
| FreeNode2 | 192.168.30.102 | OPEN | OPEN | 0 |
---------------------------------------------------------------
| FreeNode3 | 192.168.30.103 | OPEN | OPEN | 0 |
---------------------------------------------------------------
0 virtual cluster
3 coordinator node
3 free data node
确认集群状态均已 OPEN
,运行正常。
gcadmin distribution gcChangeInfo.xml p 2 d 1 pattern 1
[gbase@gbase1 gcinstall]$ gcadmin distribution gcChangeInfo.xml p 2 d 1 pattern 1
gcadmin generate distribution ...
NOTE: node [192.168.30.101] is coordinator node, it shall be data node too
NOTE: node [192.168.30.102] is coordinator node, it shall be data node too
NOTE: node [192.168.30.103] is coordinator node, it shall be data node too
gcadmin generate distribution successful
执行完之后,在 /opt/gcinstall
目录下会生成 gcChangeInfo.xml
文件:
[gbase@gbase1 gcinstall]$ cat gcChangeInfo.xml
<?xml version="1.0" encoding="utf-8"?>
<servers>
<rack>
<node ip="192.168.30.101"/>
<node ip="192.168.30.102"/>
<node ip="192.168.30.103"/>
</rack>
</servers>
再次检查集群状态:
gcadmin
[gbase@gbase1 gcinstall]$ gcadmin
CLUSTER STATE: ACTIVE
VIRTUAL CLUSTER MODE: NORMAL
=================================================================
| GBASE COORDINATOR CLUSTER INFORMATION |
=================================================================
| NodeName | IpAddress | gcware | gcluster | DataState |
-----------------------------------------------------------------
| coordinator1 | 192.168.30.101 | OPEN | OPEN | 0 |
-----------------------------------------------------------------
| coordinator2 | 192.168.30.102 | OPEN | OPEN | 0 |
-----------------------------------------------------------------
| coordinator3 | 192.168.30.103 | OPEN | OPEN | 0 |
-----------------------------------------------------------------
=========================================================================================================
| GBASE DATA CLUSTER INFORMATION |
=========================================================================================================
| NodeName | IpAddress | DistributionId | gnode | syncserver | DataState |
---------------------------------------------------------------------------------------------------------
| node1 | 192.168.30.101 | 1 | OPEN | OPEN | 0 |
---------------------------------------------------------------------------------------------------------
| node2 | 192.168.30.102 | 1 | OPEN | OPEN | 0 |
---------------------------------------------------------------------------------------------------------
| node3 | 192.168.30.103 | 1 | OPEN | OPEN | 0 |
---------------------------------------------------------------------------------------------------------
也可以执行如下命令查看发布信息
gcadmin showdistribution node
[gbase@gbase1 gcinstall]$ gcadmin showdistribution node
Distribution ID: 1 | State: new | Total segment num: 6
====================================================================================================================================
| nodes | 192.168.30.101 | 192.168.30.102 | 192.168.30.103 |
------------------------------------------------------------------------------------------------------------------------------------
| primary | 1 | 2 | 3 |
| segments | 4 | 5 | 6 |
------------------------------------------------------------------------------------------------------------------------------------
|duplicate | 3 | 1 | 2 |
|segments 1| 5 | 6 | 4 |
====================================================================================================================================
在管理节点上执行如下命令(数据库root密码默认为空)
gccli -u root -p
密码为空,直接回车
initnodedatamap;
[gbase@gbase1 ~]$ gccli -u root -p
Enter password:
GBase client 9.5.2.39.126761. Copyright (c) 2004-2022, GBase. All Rights Reserved.
gbase> initnodedatamap;
Query OK, 0 rows affected (Elapsed: 00:00:00.64)
create database gtest8a;
show database;
use gtest8a;
create table t1(id int ,name varchar(20));
show tables;
insert into t1 values(1,'lucifer');
select * from t1;
gbase> create database gtest8a;
Query OK, 1 row affected (Elapsed: 00:00:00.02)
gbase> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| performance_schema |
| gbase |
| gctmpdb |
| gclusterdb |
| gtest8a |
+--------------------+
6 rows in set (Elapsed: 00:00:00.00)
gbase> use gtest8a;
Query OK, 0 rows affected (Elapsed: 00:00:00.00)
gbase> create table t1(id int ,name varchar(20));
Query OK, 0 rows affected (Elapsed: 00:00:00.13)
gbase> show tables;
+-------------------+
| Tables_in_gtest8a |
+-------------------+
| t1 |
+-------------------+
1 row in set (Elapsed: 00:00:00.00)
gbase> insert into t1 values(1,'kk');
Query OK, 1 row affected (Elapsed: 00:00:00.09)
gbase> insert into t1 values(2,'mm');
Query OK, 1 row affected (Elapsed: 00:00:00.06)
gbase> select * from t1;
+------+------+
| id | name |
+------+------+
| 1 | kk |
| 2 | mm |
+------+------+
2 rows in set (Elapsed: 00:00:00.03)
gbase>
3台主机均需执行关闭命令:
gcluster_services all stop
cd /opt/gcinstall
./unInstall.py --silent=demo.options
常见问题
Q01. 集群安装成功后,在管理节点执行 gcadmin,系统提示找不到命令
原因:环境变量没有生效
解决方法:切换操作系统账户
$ exit
$ su gbase
Q02. 在管理节点执行 gcadmin,系统提示
Could not initialize CRM instance error: [122]->[can not connect to any server]
1
原因:所有节点的集群服务都没有启动
解决方法:
[173]$ gcluster_services all start
[174]$ gcluster_services all start
[175]$ gcluster_services all start
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。