“G”术时刻:从hadoop数据迁移至南大通用GBase 8a数据库详解

近期某项目上完成了hadoop迁移数据到南大通用GBase 8a数据库,下面为迁移详细实施过程,以供参考。

1迁移实施方案
1.1.Hadoop集群提供材料
GBase 8a MPP Cluster 接入HDFS数据,需要hadoop集群提供下面内容:
1)提供 hadoop集群namenode、datanode的主机名和ip映射关系。
2)提供kerberos客户端配置文件krb5.conf。
3)提供 kerberos 认证密钥文件kt, 及 principal名称。
4)需开通的端口(RPC协议):
a)开通hadoop集群所有节点 访问gbase集群所有管理节点的端口(默认5258)。
b)开通hadoop集群所有节点 访问gbase集群所有数据节点的端口(默认5050)。
c)开通gbase集群所有节点)访问 hadoop集群所有节点的端口(如25000)。
d)开通gbase集群所有节点到kdc服务器对应端口范围,如27230-27232(在krb5.conf中可以查到)。
5)提供所有迁移表的表结构。

2.GBase集群实施方案
2.1.创建表结构
根据提供的表结构,在对应的database下创建迁移的表,建议创建为hash分布表。

2.2.配置/etc/hosts

由于 Hadoop 和 Kerberos 对 DNS 解析依赖程度很高, 需要 DNS 支持正向( forward) 和反向( reverse) 查找, 在 Kerberos 认证环境中在加载和导出语句的 URL 中推荐使用主机名, 而不建议使用 IP 地址。
因此需要在Gbase 集群的所有节点的/etc/hosts中,配置hadoop集群所有节点的主机名和IP映射关系。

2.3.安装kerberos客户端

在Gbase 集群的所有节点的安装kerberos客户端,具体安装要求如下:

在root账户下执行

yum install libkadm5 krb5-libs krb5-devel krb5-workstation

2.4.分发票据信息

需要修改票据信息yitong_guest.kt属主,并分发到集群节点的config下。
修改此文件属主为gbase权限为644()

在root账户下执行

chown gbase: gbase biao_guest.kt
chmod 644 biao_guest.kt

分发到集群的config路径下:

在gbase账户下执行

cpush coor:biao_guest.kt /gbase/gcluster/config
cpush data:biao_guest.kt /gbase/gnode/config

2.5. 分发KDC配置文件

把KDC配置文件分发到集群所有节点的/etc/下:

在root账户下执行

cpush all: krb5.cnf /etc/

2.6.设置集群参数

登录到数据库中,执行下面命令:

在gbase账户下执行

gccli -uxxx -pxxx
gbase>
set global gbase_hdfs_auth_mode=kerberos ;
set globl gbase_hdfs_protocol=RPC’;
set globl gbase_hdfs_port=25000’;
Set global gbase_hdfs_principal =’biao_guest@HADOOP.COM’;
Set global gbase_hdfs_namenodes=’namenode1,namenode2’;

管理节点:

Set  globalgbase_hdfs_kt  =’/gbase/gcluster/config/biao_guest.kt’;

数据节点:

gncli -uxxx -pxxx
Set global gbase_hdfs_kt =’/gbase/gnode/config/biao_guest.kt’;

注意:在加载验证成功后,需要把上述参数配置在config文件中,以免集群节点服务重启后失效。

2.7.票据身份认证

管理节点上执行:
kinit -kt /gbase/gcluster/config/biao_guest.kt biao_guest@HADOOP.COM
数据节点上执行:
kinit -kt /gbase/gnode/config/biao_guest.kt biao_guest@HADOOP.COM

2.8.验证加载

在数据库中创建测试表,然后执行下面测试语句:

在gbase账户下执行

gccli -uxxx -pxxx
gbase>load data infile ‘hdp://biao_guest@namenode1:25000//user/biao_guest/gbasetest20250313.txt’ into table all_judicial_inquiry_new_2020 data_format 3 fields terminated by ‘|@|;

3.Gbase集群安装 Kerberos 认证的影响

3.1.集群扩容影响

在执行扩容后, 管理员需要执行 Kerberos 客户端安装与配置, 手工完成 Kerberos 客户端环境部署。

3.2.集群升级影响
从不支持 Kerberos 认证的集群版本到支持 Kerberos 认证的集群版本的升级, 管理员
需要执行 Kerberos 客户端安装与配置, 手工完成 Kerberos 客户端环境部署。

3.3.节点替换工具

支持 kerberos 认证的集群版本的节点替换功能。 集群节点替换工具在同步文件时, 需要将$GCLUSTER_BASE/config 或$GBASE_BASE/config 下扩展名为.kt的文件同步到被替换节点。

posted @ 2025-06-13 15:24  GBASE南大通用  阅读(15)  评论(0)    收藏  举报