简介:GBase-UP平台安装手册面向数据库运维工程师、系统集成人员及大数据平台实施者,针对Linux RHEL6环境下GBase UP混合数据库平台的部署需求,提供从系统准备到引擎安装的完整操作指引。资源包为单一PDF文档,大小约2.87MB,内容按章节组织,涵盖硬件配置与RAID规划、操作系统安装与多网卡绑定、环境检查与内核参数调优、YUM源与sudo配置,以及Hadoop生态、Oracle、GBase 8s等引擎的安装部署流程。手册对节点一致性、端口占用、防火墙与SELINUX状态、SSH服务、虚存与I/O调度等关键检查项均有明确说明,并给出静默安装响应文件修改、数据库创建与客户端安装等具体步骤。已有92人学习,适合需要按官方规范完成GBase UP平台搭建、排查环境配置问题的技术人员参考,也可作为项目实施前的环境预检清单使用。
1. 从一台裸机到 GBase UP 集群:这份 RHEL6 安装手册到底解决什么问题
很多做国产数据库落地的同行,第一次拿到 GBase UP 的安装包时,最容易犯的错不是命令敲错,而是把一台刚上架的裸机直接插上网线就开始装。GBase UP 不是单机数据库,它是一套把 Hadoop 生态、GBase 8a、GBase 8s、Oracle 等多个引擎统一到一个 SQL 入口的联邦集群,安装前如果 RAID、内核参数、多网卡绑定、SSH 互信这些底层没铺好,后面集群初始化大概率卡在某个节点上,排查起来非常折腾。这份《GBase-UP平台安装手册.pdf》针对的是 Linux RHEL6 环境,覆盖了从硬件物理部署、RAID5 配置、操作系统环境检查,到各引擎客户端安装、跨引擎数据迁移组件部署、集群初始化、启停登录、卸载升级、节点扩缩容的完整链路。它适合两类人:一是第一次在 RHEL6 上部署 GBase UP 的 DBA 和运维,二是需要把安装过程标准化成内部交付文档的架构师。手册本身是 PDF,不是脚本包,但里面的参数、命令和检查项可以直接抄进你的部署 checklist。
2. 装 GBase UP 之前,RHEL6 系统层要先把哪些坑填平
2.1 硬件配置与 RAID5 的选型逻辑
手册给出的最低配置是 2×4 核 2.0GHz、4GB 内存、SATA 7200rpm 100GB 硬盘,推荐配置直接拉到 2×16 核、128GB 内存、SAS 10k 1TB。这个跨度说明 GBase UP 在真实项目里对 I/O 和内存的消耗远高于最低门槛,尤其是当 Hadoop 生态和 GBase 8a 跑在同一批节点上时,4GB 内存连 JVM 堆都分不出来。磁盘层面,手册明确推荐本地盘做 RAID5,至少 3 块完全相同的物理盘。RAID5 在容错和容量之间取平衡,允许坏一块盘不丢数据,同时比 RAID1 多出可用容量。以 DELL R710/R720 为例,开机看到 RAID 卡提示时按 CTRL+R 进入配置界面,先删掉出厂保留的虚拟磁盘,再在 Disk Group 上按 F2 选 Create New VD,RAID Level 选 RAID-5,用空格键勾选参与阵列的物理盘,注意单个 VD 的容量总和不能超过 16T。建完 VD 后还要做一次 Fast Init,否则阵列不可用。这里有个容易忽略的点:手册建议两个机柜电源独立、交换机互备,Hadoop 生态节点在小规模集群下做 HA 加机架感知,大规模集群上联邦加 HA。如果你的项目只有三五台机器,至少保证交换机和电源不在同一个故障域里。
2.2 操作系统环境检查的十个必查项
手册把环境检查拆得很细,我按实际部署顺序重新整理成一张可执行的检查表:
| 检查项 | 操作要点 | 不通过的后果 |
|---|---|---|
| 操作系统版本 | 各节点统一 RHEL6.5 x86_64 | 软件包依赖冲突 |
| root 密码 | 各节点保持一致 | 批量脚本无法互信 |
| gbase 用户密码 | 各节点保持一致 | 集群初始化认证失败 |
| 软件包 | 按手册清单补齐 | 安装中断 |
| 端口占用 | 检查集群所需端口 | 服务起不来 |
| 防火墙 | 关闭或放行 | 节点间通信被阻断 |
| SELINUX | 设为 disabled | 权限拒绝,玄学报错 |
| 系统时间 | 各节点同步 | 集群心跳异常 |
| SSH 服务 | 开启且互信 | 分发安装文件失败 |
| 内核参数 | 按 1.6.10 逐项修改 | 数据库性能差或启动失败 |
内核参数这块手册列了八项,包括内核参数配置、虚存配置、I/O 调度方式、关闭 transparent_hugepage、磁盘调度策略、内存配置、Swap 分区、关闭 CPU 超频。其中 transparent_hugepage 必须关掉,否则 GBase 8a 这类引擎在内存分配时会出现不可预测的延迟抖动。I/O 调度方式建议改成 deadline 或 noop,具体看你的盘是机械还是 SSD。修改主机名配置文件、YUM 源配置、sudo 配置这三项放在最后,因为前面很多检查依赖主机名解析和 sudo 权限。我一般会写一个 shell 脚本把 1.6 节的所有检查项跑一遍,输出一份各节点的对比报告,确认全部一致后再进入安装阶段。
# 检查各节点关键环境项,输出对比报告 #!/bin/bash echo "=== 主机名 ===" hostname echo "=== 系统版本 ===" cat /etc/redhat-release echo "=== 内核版本 ===" uname -r echo "=== SELINUX 状态 ===" getenforce echo "=== 防火墙状态 ===" service iptables status echo "=== transparent_hugepage ===" cat /sys/kernel/mm/transparent_hugepage/enabled echo "=== 时间 ===" date echo "=== SSH 端口 ===" netstat -tlnp | grep :22这段脚本的作用是把手册 1.6 节里分散的检查项一次性拉出来,方便你在每个节点上跑一遍然后横向对比。参数上注意getenforce返回 Enforcing 就说明 SELINUX 没关,需要改/etc/selinux/config设成 disabled 并重启。transparent_hugepage如果显示[always]说明没关,需要在/etc/rc.local里加禁用命令。时间同步建议用 ntpd 或 chrony,手册没指定具体工具,但各节点时间差超过几秒就会影响集群心跳。
3. 安装 GBase UP:从各引擎客户端到集群初始化的完整链路
3.1 各引擎客户端的安装顺序与依赖关系
GBase UP 本身是一个统一入口,底层要挂多个引擎,所以安装顺序不能乱。手册 2.4.1 节把客户端安装拆成三块:GBase Hadoop 生态和 GBase 8a 客户端、Oracle 客户端、GBase 8s 客户端。先装 Hadoop 生态和 8a 客户端,因为 UP 的核心元数据和分发逻辑依赖它们;再装 Oracle 客户端,用于跨引擎查询时连接 Oracle;最后装 GBase 8s 客户端。每装完一个客户端,建议用对应的连接工具验证一下连通性,别等全部装完再一起测,否则出问题不知道是哪一层。Oracle 客户端的安装还涉及 2.2 节的 Oracle 数据库安装部署,包括环境配置、修改 Linux 内核参数、配置资源使用情况、配置环境变量、安装依赖包,然后修改静默安装响应文件开始安装,创建数据库,最后卸载 vault。这一串操作里,静默安装响应文件的修改是最容易翻车的地方,路径、SID、字符集这些参数必须和你的实际环境完全对应。
3.2 安装参数文件与扩展配置文件的修改要点
手册 2.4.3 到 2.4.7 节是安装的核心操作段:获取安装文件、修改安装参数文件、修改扩展配置文件、配额设置、执行安装。安装参数文件通常包含集群节点列表、各节点角色、数据目录路径、端口号等。扩展配置文件则涉及各引擎的具体连接信息,比如 Oracle 的 tnsnames、Hive 的 metastore 地址、GBase 8s 的 sqlhosts。配额设置这一项容易被跳过,但它决定了各引擎能使用的资源上限,设小了后面跑查询会报资源不足。执行安装时建议开一个终端窗口 tail 安装日志,另一个窗口执行命令,这样出错能第一时间看到堆栈。
# 安装 GBase UP 的典型命令序列(以实际安装包路径为准) cd /opt/gbase_up_install # 修改安装参数文件,指定集群节点和角色 vi install_params.cfg # 修改扩展配置文件,填入各引擎连接信息 vi extend_params.cfg # 设置配额 ./gbase_up_install --set-quota --data-quota=80% --temp-quota=20% # 执行安装,日志输出到 install.log ./gbase_up_install --config=install_params.cfg --extend=extend_params.cfg --log=install.log这里install_params.cfg里的节点列表要和前面环境检查时的主机名完全一致,大小写都不能差。--set-quota的百分比根据你的磁盘规划来,数据配额和临时配额加起来不要超过 100%。安装日志里如果出现Failed to connect to node,先回头检查 SSH 互信和防火墙,别急着改安装参数。
3.3 集群初始化与引擎加载的验证方法
安装完成后,手册 2.4.8 到 2.4.11 节要求配置 distribution、初始化集群、加载引擎、创建临时库。配置 distribution 是告诉集群数据怎么分布,通常按节点数和副本数来算。集群初始化会格式化元数据区,这一步不可逆,执行前确认所有节点都处于干净状态。加载引擎时,GBase 8s、Oracle、Hive 各有各的设置项,手册 2.4.10 节分别列了关于 gbase8s 相关设置、关于 Oracle 相关设置、关于 hive 相关设置。加载完引擎后创建临时库,用于跨引擎查询时的中间结果落盘。最后 2.4.12 节提到支持 Kerberos 安全认证,如果你的环境有 Kerberos,需要在这一步配置 principal 和 keytab。
# 集群初始化与引擎加载后的验证命令 # 查看集群状态 gcadmin showcluster # 查看 distribution 配置 gcadmin showdistribution # 登录集群 gbase -u gbase -p # 在集群内查看已加载引擎 gbase> show engines;gcadmin showcluster返回的节点状态应该全是 OPEN,如果有节点显示 OFFLINE,先查该节点的 gcware 服务是否正常。show engines能列出所有已加载的引擎,如果某个引擎没出现,回到加载引擎那一步检查配置文件和日志。
4. 启停、卸载、升级与扩缩容:那些手册上写了但容易做错的操作
4.1 集群启停与登录退出的正确姿势
手册第 3 章讲启停与登录,看起来简单,但实际运维中启停顺序错了会导致元数据不一致。启动时先起 gcware 和 gcluster 服务,再起各引擎服务;停止时反过来,先停引擎再停集群服务。登录用gbase -u 用户名 -p,退出用exit或quit。如果登录时报Can't connect to local GBase server,先确认 gcluster 服务是否在运行,再检查/etc/hosts里主机名解析是否正确。
4.2 卸载与版本升级的边界条件
第 4 章卸载集群分两步:卸载 GBase UP 集群、卸载 Hadoop 集群。卸载前务必备份元数据和业务数据,卸载脚本不会帮你保留这些。第 5 章升级 UP 集群,手册只写了 V8.6.2.X 集群间版本升级,说明这个手册对应的版本范围有限,跨大版本升级不在覆盖范围内。升级前要停掉所有服务,升级后重新初始化集群并加载引擎。如果你的版本不在 V8.6.2.X 范围内,别硬套这个流程。
4.3 节点扩缩容的操作差异
第 7 章增加、减少集群节点,分 data 节点和 coordinator 节点两种。增加 data 节点相对简单,把新节点环境配好,加入集群后重新分布数据即可。增加 coordinator 节点要复杂一些,涉及元数据同步和 distribution 调整。减少节点前必须先确认该节点上没有未完成的事务,并且数据已经迁移到其他节点。减少 coordinator 节点尤其要小心,coordinator 负责查询协调,减不好会导致整个集群不可用。我一般会在业务低峰期做扩缩容,并且提前在测试环境走一遍完整流程。
5. 避坑与排查:GBase UP 安装过程中最常见的五类问题
5.1 集群服务不能正常启动
现象:执行启动命令后,gcadmin showcluster显示部分节点 OFFLINE。原因:最常见的是各节点系统时间不一致,导致集群心跳超时;其次是防火墙没关或 SELINUX 没设 disabled,节点间通信被阻断。解决:先用date命令对比各节点时间,差超过 5 秒就用 ntpd 强制同步;再检查getenforce和service iptables status,确保 SELINUX 为 disabled、防火墙已关闭或放行集群端口。
5.2 gcadmin 命令的使用问题
现象:gcadmin命令报Can't connect to gcware或返回空结果。原因:gcware 服务没启动,或者当前用户没有权限执行 gcadmin。解决:先service gcware status确认服务状态,没启动就service gcware start;权限问题用 gbase 用户执行,或者检查 sudo 配置里是否给了 gcadmin 的执行权限。
5.3 安装过程中 SSH 互信失败
现象:安装脚本分发文件时卡住,日志报Permission denied (publickey)。原因:各节点 root 或 gbase 用户的 SSH 密钥没配好,或者密码不一致。解决:手册 1.6.2 和 1.6.3 明确要求各节点 root 和 gbase 用户密码保持一致,先统一密码,再用ssh-keygen和ssh-copy-id配置互信。注意 RHEL6 默认的 SSH 配置可能不允许 root 直接登录,需要改/etc/ssh/sshd_config里的PermitRootLogin。
5.4 内核参数修改后未生效
现象:按手册改了/etc/sysctl.conf,但sysctl -a查到的值还是旧的。原因:改完没执行sysctl -p,或者参数写错了位置。解决:改完/etc/sysctl.conf后必须执行sysctl -p让配置生效,然后重新查一遍确认。transparent_hugepage 的关闭方式不一样,它不在 sysctl 里,需要在/etc/rc.local里加echo never > /sys/kernel/mm/transparent_hugepage/enabled,并且确保 rc.local 有执行权限。
5.5 加载引擎时提示连接失败
现象:执行加载引擎命令后,日志报Failed to connect to Oracle/Hive/GBase 8s。原因:扩展配置文件里的连接信息不对,或者对应引擎的客户端没装好。解决:先确认 2.4.1 节的三类客户端都装完了,再用tnsping测 Oracle、用beeline测 Hive、用dbaccess测 GBase 8s。连接信息里的 IP、端口、用户名、密码逐项核对,注意 Oracle 的 service name 和 SID 别搞混。
6. 把安装手册变成可复用的部署脚本:一个检查清单的落地技巧
手册第 8 章 FAQ 只列了三个问题,但实际部署中遇到的远不止这些。我的习惯是把手册 1.6 节的环境检查项、2.4 节的安装参数、4 章的卸载步骤、7 章的扩缩容操作,全部整理成一个带版本号的部署 checklist,每次部署前打印出来逐项打勾。更进一步,我会把环境检查部分写成 shell 脚本,把安装参数文件做成模板,把验证命令做成一个verify.sh。这样下次再装一套 GBase UP,不需要重新翻 PDF,直接跑脚本加填模板就行。
# verify.sh:安装后一键验证集群状态 #!/bin/bash echo "=== 集群节点状态 ===" gcadmin showcluster echo "=== distribution 配置 ===" gcadmin showdistribution echo "=== 已加载引擎 ===" gbase -u gbase -p'your_password' -e "show engines;" echo "=== 各节点时间差 ===" for node in $(cat /opt/gbase_up_install/nodes.list); do echo -n "$node: " ssh $node date +%s done这个脚本里nodes.list是你自己维护的节点列表,每行一个主机名。show engines那行需要把密码换成实际密码,生产环境建议用配置文件或环境变量传,别硬编码在脚本里。时间差检查那一段会把各节点的 Unix 时间戳打出来,如果差值超过 5 秒,就需要去同步时间。
还有一个技巧:手册里所有涉及路径的地方,比如安装包路径、数据目录、日志目录,我建议统一规划成/opt/gbase_up/下的子目录,别用默认路径。默认路径往往在/usr/local或/home下,磁盘分区一满就影响系统。数据目录单独挂一块大盘,日志目录单独挂一块盘,这样出问题的时候排查范围小很多。RAID5 的 VD 容量上限 16T 这个限制也要记住,如果你的单节点磁盘超过 16T,需要建多个 VD 或者改用其他 RAID 级别。
从那以后我每次部署 GBase UP 之前,都会先把这份手册的 1.6 节打印出来,在每个节点上跑一遍检查脚本,确认所有输出一致才动手装。这个习惯帮我省掉了至少三次因为 SELINUX 没关和时间不同步导致的集群启动失败。希望帮到你。
本文还有配套的精品资源,点击获取