GBase 8a集群V8客户端gccli适配欧拉操作系统绕行方案分析

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 Tair(兼容Redis),内存型 2GB
简介: GBase 8a集群V8客户端gccli适配欧拉操作系统绕行方案分析

一、概述

笔者所在项目近期出现一例GBase 8a集群V8客户端gccli适配欧拉操作系统并连接V8集群进行ETL处理的需求,因集群版本及操作系统相对老旧,在适配较新的欧拉操作系统时出现一些问题,最终通过绕行方案解决,现将需求场景及绕行方案整理如下。

二、需求场景及问题分析

某电信运营商GBase 8a数据中台集群根据客户应用端业务扩容需要,计划部署若干台新客户端主机并安装gccli工具进行数据ETL处理,根据某电信运营商国产化要求,新客户端主机必须安装国产操作系统欧拉(openEuler-22.03-LTS-x86_64)。

集群总体环境如下:

集群版本:GBase8a_MPP_Cluster-NoLicense-8.6.2_build33-R11-redhat7.3-x86_64

集群操作系统:rhel_7.3_x64

新客户机操作系统:openEuler-22.03-LTS-x86_64

现场在部署过程中发现V8版本gccli无法在欧拉系统上正常运行,运行gccli报错”缺少共享库libnsl.so.1,该库文件在操作系统不存在”。

进一步尝试安装V9版本gccli(9.5.2.46.6-centos8-x86_64.tar),但在连接集群运行SQL时出现sftp加载导出报错的问题(加载报错Failed initialization,rmt导出报错Failed to receive FIN data before closing socket)。

现场初步分析并与客户沟通了问题处理建议:

1)申请针对V8版本集群发布适配欧拉系统的客户端gccli安装包。

2)将集群升级至V9版本,升级版本跨度较大,成本及风险相对较大。

与客户沟通后的结论为,该集群目前业务繁杂,运行平稳,且包括该集群在内的其余5套集群也存在类似需求,要尽量减少问题处理风险,快速解决问题,不考虑对集群进行升级。

三、绕行方案

根据现场分析及测试验证,发现可通过给libnsl.so.1做软链接的方式解决gccli连接数据库问题,通过配置sshd兼容协议解决sftp加载导出报错问题,从而快速低成本解决上述问题,总体方法如下:

1、确认在欧拉客户机部署V8版本客户端

gccli-8.6.2_build33-R11-redhat7.3-x86_64.tar

2、在欧拉客户机创建link文件/usr/lib64/libnsl.so.1

ln -s /usr/lib64/libnsl.so.2.0.1 /usr/lib64/libnsl.so.1

3、调整欧拉客户机sshd配置文件/etc/ssh/sshd_config,修改参数KexAlgorithms、MACs

KexAlgorithms curve25519-sha256,curve25519-sha256@libssh.org,diffie-hellman-group-exchange-sha256

修改为:

KexAlgorithms curve25519-sha256,curve25519-sha256@libssh.org,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha1,diffie-hellman-group-exchange-sha1,diffie-hellman-group1-sha1

MACs hmac-sha2-512,hmac-sha2-512-etm@openssh.com,hmac-sha2-256,hmac-sha2-256-etm@openssh.com

修改为:

MACs hmac-sha2-512,hmac-sha2-512-etm@openssh.com,hmac-sha2-256,hmac-sha2-256-etm@openssh.com,hmac-md5,hmac-sha1,umac-64@openssh.com

4、重启欧拉客户机sshd

systemctl restart sshd

三、附录-问题记录

1)V8版本gccli无法在欧拉系统上正常运行,报错缺少共享库libnsl.so.1:

[gbase@Euler-001 gccli-8.6.2_build33-R11]$ /gbase/product/gccli-8.6.2_build33-R11/gcluster/server/bin/gccli -uroot -pxxxxxx -h172.16.243.21

/gbase/product/gccli-8.6.2_build33-R11/gcluster/server/bin/gbase: error while loading shared libraries: libnsl.so.1: cannot open shared object file: No such file or directory

2)V9版本gccli(9.5.2.46.6-centos8-x86_64.tar)加载导出报错:

数据加载验证: 加载报错Failed initialization

gbase> LOAD DATA INFILE 'sftp://user:xxxxxx@172.16.243.130/home/gbase/tmp_1.tbl' INTO TABLE testdb_20211125.tmp_1 DATA_FORMAT 3 FIELDS TERMINATED BY ',' MAX_DATA_PROCESSORS 2;

ERROR 1733 (HY000): (GBA-01EX-700) Gbase general error: I/O operation on sftp://gbase:*@172.16.243.130/home/gbase/tmp_1.tbl failed with error - Failed initialization, File name sftp://gbase:*@172.16.243.130/home/gbase/tmp_1.tbl

rmt导出验证:导出报错Failed to receive FIN data before closing socket,导出文件存在,内容不全

gbase> rmt:select * from gclusterdb.nodedatamap into outfile 'nodedatamap.txt';

ERROR 1708 (HY000): 172.16.243.22:5050Failed to query in gnode:

DETAIL: (GBA-01EX-700) Remote export: Failed to receive FIN data before closing socket[51], (104)Connection reset by peer

SQL: SELECT /172.16.243.21_20_1_2023-11-02_11:40:36/ /+ to('172.16.243.130:16066') / /+ TID('917549') / gclusterdb.nodedatamap.hashkey AS hashkey, gclusterdb.nodedatamap.nodeid AS nodeid, gclusterdb.nodedatamap.data_distribution_id AS data_distribution_id INTO OUTFILE 'nodedatamap.txt' outfilemode by

ERROR:

Invalid data type. Connection: 172.16.243.22:18156.

相关文章
|
13天前
|
人工智能 自动驾驶 大数据
预告 | 阿里云邀您参加2024中国生成式AI大会上海站,马上报名
大会以“智能跃进 创造无限”为主题,设置主会场峰会、分会场研讨会及展览区,聚焦大模型、AI Infra等热点议题。阿里云智算集群产品解决方案负责人丛培岩将出席并发表《高性能智算集群设计思考与实践》主题演讲。观众报名现已开放。
|
6天前
|
自然语言处理 数据可视化 API
Qwen系列模型+GraphRAG/LightRAG/Kotaemon从0开始构建中医方剂大模型知识图谱问答
本文详细记录了作者在短时间内尝试构建中医药知识图谱的过程,涵盖了GraphRAG、LightRAG和Kotaemon三种图RAG架构的对比与应用。通过实际操作,作者不仅展示了如何利用这些工具构建知识图谱,还指出了每种工具的优势和局限性。尽管初步构建的知识图谱在数据处理、实体识别和关系抽取等方面存在不足,但为后续的优化和改进提供了宝贵的经验和方向。此外,文章强调了知识图谱构建不仅仅是技术问题,还需要深入整合领域知识和满足用户需求,体现了跨学科合作的重要性。
|
1月前
|
存储 人工智能 弹性计算
阿里云弹性计算_加速计算专场精华概览 | 2024云栖大会回顾
2024年9月19-21日,2024云栖大会在杭州云栖小镇举行,阿里云智能集团资深技术专家、异构计算产品技术负责人王超等多位产品、技术专家,共同带来了题为《AI Infra的前沿技术与应用实践》的专场session。本次专场重点介绍了阿里云AI Infra 产品架构与技术能力,及用户如何使用阿里云灵骏产品进行AI大模型开发、训练和应用。围绕当下大模型训练和推理的技术难点,专家们分享了如何在阿里云上实现稳定、高效、经济的大模型训练,并通过多个客户案例展示了云上大模型训练的显著优势。
|
1月前
|
存储 人工智能 调度
阿里云吴结生:高性能计算持续创新,响应数据+AI时代的多元化负载需求
在数字化转型的大潮中,每家公司都在积极探索如何利用数据驱动业务增长,而AI技术的快速发展更是加速了这一进程。
|
1天前
|
人工智能 容器
三句话开发一个刮刮乐小游戏!暖ta一整个冬天!
本文介绍了如何利用千问开发一款情侣刮刮乐小游戏,通过三步简单指令实现从单个功能到整体框架,再到多端优化的过程,旨在为生活增添乐趣,促进情感交流。在线体验地址已提供,鼓励读者动手尝试,探索编程与AI结合的无限可能。
|
5天前
|
Cloud Native Apache 流计算
PPT合集|Flink Forward Asia 2024 上海站
Apache Flink 年度技术盛会聚焦“回顾过去,展望未来”,涵盖流式湖仓、流批一体、Data+AI 等八大核心议题,近百家厂商参与,深入探讨前沿技术发展。小松鼠为大家整理了 FFA 2024 演讲 PPT ,可在线阅读和下载。
3040 10
PPT合集|Flink Forward Asia 2024 上海站
|
2天前
|
人工智能 自然语言处理 前端开发
从0开始打造一款APP:前端+搭建本机服务,定制暖冬卫衣先到先得
通义灵码携手科技博主@玺哥超carry 打造全网第一个完整的、面向普通人的自然语言编程教程。完全使用 AI,再配合简单易懂的方法,只要你会打字,就能真正做出一个完整的应用。
874 11
|
19天前
|
人工智能 自然语言处理 前端开发
100个降噪蓝牙耳机免费领,用通义灵码从 0 开始打造一个完整APP
打开手机,录制下你完成的代码效果,发布到你的社交媒体,前 100 个@玺哥超Carry、@通义灵码的粉丝,可以免费获得一个降噪蓝牙耳机。
5863 16
|
1月前
|
缓存 监控 Linux
Python 实时获取Linux服务器信息
Python 实时获取Linux服务器信息
|
12天前
|
机器学习/深度学习 人工智能 安全
通义千问开源的QwQ模型,一个会思考的AI,百炼邀您第一时间体验
Qwen团队推出新成员QwQ-32B-Preview,专注于增强AI推理能力。通过深入探索和试验,该模型在数学和编程领域展现了卓越的理解力,但仍在学习和完善中。目前,QwQ-32B-Preview已上线阿里云百炼平台,提供免费体验。