CirroData(行云)
安装及使用手册
2.6.1 v4
北京东方国信科技股份有限公司
Beijing Orient National Communication Science & Technology Ltd.
北京市朝阳区创达三路 1 号院 1号楼东方国信大厦邮编: 100102
电话: 010-64398920
未经北京东方国信科技股份有限公司事先书面许可,本手册的任何部分不得以任何形式进行增
删,改编,节选,翻译,翻印或仿制。
本手册的全部内容北京东方国信科技股份有限公司可能随时加以更改,此类更改将不另行通知。
具体应用以软件实际功能为准
@本手册的著作权属于北京东方国信科技股份有限公司
版权所有 翻制必究
东方国信为北京东方国信科技股份有限公司的注册商标。
本书中涉及的其他产品商标为相应公司所有。
CirroData(行云)安装及使用手册CirroData(行云)安装及使用手册
前言
运行环境
1. 软件环境:
XEA 代理服务器操作系统:Linux
行云客户端操作系统:Windows XP/7/8/10 (32/64bit)
Hadoop 环境:hadoop 2.3.0~hadoop 2.9.x / CDH 5.0.1~CDH 5.13.x
行云服务运行环境:Redhat-6.4/6.5/7.2/7.3 (64bit)
注:
推荐使用hadoop-2.8.0+和 CDH 5.13.1+版本
部署XEA服务时,JAVA环境必须使用JDK(JRE)1.8.0版本
2. 硬件环境:
至少 3 个数据节点
安装包简介
1. CirroData Enterprise Administrator (XEA)
行云代理服务及集群管理客户端(BS 版),用于行云集群的安装、配置、监控、升
级、卸载等操作。
2. HDFSMetaQueryProxy
HDFS 元数据代理服务,读取数据文件在 HDFS 分布位置信息的代理程序,主要用
于做数据读取的本地化,加快查询速度。部署在所有 namenode 节点上。
3. xpkg
行云数据执行引擎服务安装包,部署在所有 datanode 节点上
4. CirroData Taskmanager
存储过程执行引擎组件,用于存储过程语句的解析、执行、调度以及过程中 SQL 语
句的分流
5. CirroData SQLDeveloper
5
CirroData(行云)安装及使用手册
行云数据管理客户端,用于建立数据库连接、用户管理、权限管理、数据管理、查
询、导入/导出等操作
安装架构图示
6
CirroData(行云)安装及使用手册
1. 安装前的准备
1.1 创建 cirrodata 用户
在需要安装 CirroData 相关组件的所有节点上创建新用户 cirrodata_user。
1.2 用户权限
cirrodata_user 用户所须的权限有:
$HADOOP_HOME/bin/hadoop,读和执行权限
$HADOOP_HOME/lib/,读和执行权限
$HADOOP_HOME/etc/hadoop/core-site.xml 中,hadoop.tmp.dir 读写权限
$HADOOP_HOME/etc/hadoop/hdfs-site.xml 中,dfs.domain.socket.path 读和
执行权限
注:
cirrodata_user用户为推荐用户,使用有 Hadoop集群相关操作权限的用户亦可。
$HADOOP_HOME/lib/native内必须包含hadoop的本地库
1.3 Zookeeper
启动对应节点的 Zookeeper 服务,默认端口 2181。
注:
如果在同一套 Hadoop集群中部署多套行云集群,也须启动多套 Zookeeper服务。
每套Zookeeper对应唯一一套行云集群。
行云服务和执行引擎服务可共用一套Zookeeper服务。
1.4 所有节点时钟同步
注:2.6.1版本起,行云默认加入时钟同步检测,默认参数下节点间时间差>30秒,则
可能导致查询报错。
1.5 在所有 CirroData 节点中更改系统参数
1) 禁用 transparent hugepage 功能
在 root 权限下,使用以下命令后,禁用 transparent hugepage 功能即时生效。
若重启服务器,须使用 root 权限重新执行以下命令。
echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo never > /sys/kernel/mm/transparent_hugepage/defrag
7
CirroData(行云)安装及使用手册
编辑/etc/rc.d/rc.local 文件,增加以下两行内容,重启服务器后禁用 transparent
hugepage 功能生效。
echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo never > /sys/kernel/mm/transparent_hugepage/defrag
注:在CentOS 7.0及以上版本中,需将/etc/rc.d/rc.local文件的权限改为可执行,
才能保证重启服务器生效。
2) 设置可同时打开的文件句柄数
由于系统默认单个用户打开的文件数和单个进程打开的句柄数过低,需使用 root
用户为安装 CirroData 的用户修改以下参数(若不存在则添加)。
vi /etc/security/limits.conf
追加如下内容
cirrodata_user soft nofile 65535
cirrodata_user hard nofile 65535
cirrodata_user soft nproc 65535
cirrodata_user hard nproc 65535
1.6 修改或追加 HDFS 设置
基于行云分布式数据库的特性,建议在所有部署行云服务的 datanode 节点上修改
hadoop 相关配置。
vi $HADOOP_HOME/etc/hadoop/hdfs-site.xml
追加或修改如下内容
1) 磁盘容量均衡
<property>
<!-- datanode 本地磁盘之间容量均衡 -->
<name>dfs.datanode.fsdataset.volume.choosing.policy</name>
<value>org.apache.hadoop.hdfs.server.datanode.fsdataset.Availa
bleSpaceVolumeChoosingPolicy</value>
</property>
<property>
8
CirroData(行云)安装及使用手册
<!--上述均衡策略的阈值 100GB -->
<name>dfs.datanode.available-space-volume-choosing-
policy.balanced-space-threshold</name>
<value>107374182400</value>
</property>
2) 磁盘信息探测
<property>
<name>dfs.datanode.hdfs-blocks-metadata.enabled</name>
<value>true</value>
</property>
3) 本地短路径读
<property>
<name>dfs.client.read.shortcircuit</name>
<value>true</value>
</property>
<property>
<!—例 -->
<name>dfs.domain.socket.path</name>
<value>/var/run/hdfs-sockets/dn</value>
</property>
注:须预先手动创建目录至倒数第二层,形如/var/run/hdfs-sockets/,并设置权限为
755
注:设置完成后须重启Datanode服务,样例如下(须使用有执行以下命令权限的用户):
cd $HADOOP_HOME/sbin
./hadoop-daemons.sh stop datanode
./hadoop-daemons.sh start datanode
9
CirroData(行云)安装及使用手册
2. 部署行云管理服务端和代理服务
2.1 部署 CirroData Enterprise Administrator(XEA)
将 XEA.tar.gz 上传到服务器上,解压。
在解压出的目录中,执行./start.sh 启动 XEA 服务。
XEA 的启动日志在其安装目录的 XEA.log 文件内,当显示如下图内容时,表示 XEA
服务启动成功。
启动成功后,会生成一个记录 XEA 访问地址、初始用户名及密码的配置文件。
XEA 程 序 启 动 后 在 部 署 XEA 服 务 的 用 户 的 home 目 录 下 会 生 成 一 个
XEARepository 文件夹,该目录中存放 XEA 服务相关配置信息。切勿对该目录中的内
容进行删除和修改。
10
CirroData(行云)安装及使用手册
注:
XEA服务并不强制要求部署在 namenode或 datanode节点上,但部署 XEA的用户
要求必须能ssh到namenode节点及部署行云相关服务的datanode节点
自2.6.0版本起,XEA服务必须部署在 JDK 1.8.0+的环境中
自 2.6.0版本起,由于添加了 license限制,每台服务器最多只能部署一套 XEA
服务。部署多套XEA时,XEA.log报出的错误如下图所示:
2.2 初始化 XEA 服务
在浏览器中,使用 XEAURL.properties 内给出的 URL 地址访问 XEA 服务,进入初始
化界面。
注:推荐使用最新稳定版的谷歌浏览器
点击【系统初始化】
在弹出的【资源服务安装向导】中,填入资源服务配置信息。
11
CirroData(行云)安装及使用手册
主机 IP:XEA 资源库数据备份节点的 IP
用户名:登录 XEA 资源库数据备份节点的用户名
密码:登录 XEA 资源库数据备份节点的密码
资源服务端口:XEA 资源库对外提供服务的端口
注:XEA内的数据信息使用主从备份的形式存储。这里主机IP指的是XEA资源库数据
备份节点的IP,而非部署XEA主程序所在节点的IP。
点击【检测】, 如资源服务端口可用, 右边会弹出“检测成功”的提示。
点击【下一步】,开始加载配置。
12
CirroData(行云)安装及使用手册
资源库配置完毕后,XEA 服务会自动重启,重启完成后,界面会自动跳转到 XEA
登录首页。
注:如果行云SQL Developer客户端所在客户机与行云集群所在网段无法直接通信,
XEA也可作为 SQL Developer连接行云服务的代理服务端,代替早先版本中的
DBService服务
13
CirroData(行云)安装及使用手册
14
CirroData(行云)安装及使用手册
3. 安装行云数据管理客户端
3.1 行云数据管理客户端(SQL Developer)
SQL Developer 为绿色软件,解压至任意位置后可直接使用。
SQL Developer 用于数据库/用户/进程组管理、权限管理、建立连接、数据管理、
查询、导入/出、编写/执行存储过程等操作。
15
CirroData(行云)安装及使用手册
4. 行云数据库服务的安装与配置
4.1 License 认证管理
在 XEA 中点击【License 认证管理】,弹出管理界面。
点击【上传 License 认证】,选择提前给予的 License 文件,点击【打开】。
上传成功后,会提示是否重启 XEA 服务,点击【是】。
16
CirroData(行云)安装及使用手册
注:现阶段,CirroData的License统一由东方国信分布式数据库研发中心产品推广部
向外输出。申请 License时,须提供申请的项目组(厂商)名称、项目或集群负责人
名称、部署 XEA服务的服务器MAC地址、部署 CirroData服务的节点数及版本号、部
署分布式存储过程执行引擎的节点数、使用时长等。
4.2 上传安装源
在浏览器中登入 XEA,点击【安装源管理】,在右侧界面中分别上传 HDFS 元数据
代理、行云计算引擎、存储过程执行引擎、ZooKeeper。
注:
初始化XEA服务及登入XEA的方法,详见《XEA部署初始化说明书.pdf》
CirroData的安装包中并未包含 zookeeper服务包,推荐使用 3.4.5版本的
zookeeper。
如果使用hadoop集群中已有的zookeeper,则无需独立上传部署zookeeper服务。
4.3 增加集群
【集群管理】列表中点击【增加集群】,在弹出的对话框中,填入集群名称,点击
【确定】。
17
CirroData(行云)安装及使用手册
4.4 部署 Zookeeper 服务
注:若部署过程中,使用hadoop集群已有的zookeeper服务,该步骤可忽略。
在新增加的集群下,单击【Zookeeper】,选择左侧【节点管理】页签,点击【增加
节点】。
弹出部署 Zookeeper 服务的步骤,在【选择安装版本】步骤中,按要求填入相关信
息,点击【下一步】。
选择安装源:选择在 4.2 章节中上传的 Zookeeper 服务的 tar 包
配置:填入 Zookeeper 完整的配置文件信息
在【ZOOKEEPER 认证】步骤中,按要求填入相关信息,点击【下一步】。
18
CirroData(行云)安装及使用手册
在【节点选择】步骤中,输入要部署 Zookeeper 服务的节点 IP 段,点击【搜索】,
勾选对应的 IP 节点,点击【下一步】。
在【节点信息】步骤中,按要求填入相关信息,点击【下一步】。
用户名:登录所选节点的用户名
安装目录:存放 Zookeeper 服务的位置
在【部署监控】步骤中,点击【部署】,开始部署。若部署失败,单击【日志】可
查看该节点部署过程中输出的日志信息。
19
CirroData(行云)安装及使用手册
部署成功后点击【完成】,可在【节点状态监控】中查看 Zookeeper 服务的状态信
息。
4.5 部署 HDFS 元数据代理
在新增加的集群下,单击【HDFS 元数据代理】,选择左侧【节点管理】页签,点击
【增加节点】。
20
CirroData(行云)安装及使用手册
弹出部署 HDFS 元数据代理服务的步骤,在【配置管理】步骤中,按要求填入相关
信息,点击【下一步】。
选择安装源:选择在 4.2 章节中上传的 HDFS 元数据代理服务的 tar 包
hdfs_helper_port:HDFSMetaQueryProxy 对外服务端口号,默认 9091,不被其
他服务占用的端口即可
userPrincipal/keytabFile:kerberos 认证环境所需,参见“10. Kerberos 环境下
的行云部署”
在【节点信息】步骤中,按要求填入相关信息,点击【下一步】。
用户名:登录所选节点的用户名
21
CirroData(行云)安装及使用手册
安装目录:存放 HDFSMetaQueryProxy 服务的位置
节点 IP:待部署 HDFS 元数据代理服务的节点 IP,点击后面的【+】,可增加节
点
注:
HDFSMetaQueryProxy推荐部署在Hadoop集群所有 Namenode节点上。
如果无法部署在 Namenode上,也可以部署在 Datanode上。此时,须在“行云计
算引擎”高级配置的 hdfs_meta_query_proxy参数中,添加部署该组件的节点的
IP。
在【部署监控】步骤中,点击【部署】,开始部署。若部署失败,单击【日志】可
查看该节点部署过程中输出的日志信息。
部署成功后点击【完成】,可在【节点状态监控】中查看 HDFS 元数据代理服务的
状态信息。
22
CirroData(行云)安装及使用手册
4.6 部署行云计算引擎
在新增加的集群下,单击【行云计算引擎】,选择左侧【节点管理】页签,点击【增
加节点】。
弹出增加行云节点的步骤,在【选择安装版本】步骤中,按要求填入相关信息,点
击【下一步】。
选择安装源:选择在 4.2 章节中上传的行云计算引擎的 tar 包
相关参数配置详见“4.7 行云计算引擎部分参数说明”
在【进程组配置】步骤中,点击【增加】,弹出进程组配置对话框。
23
CirroData(行云)安装及使用手册
在进程组配置对话框中,填入进程组名称和各端口信息点击【确定】关闭对话框,
点击【下一步】。
相关参数配置详见“4.7 行云计算引擎部分参数说明”
在【私有配置】步骤中,点击【增加】,弹出私有配置对话框。
在私有配置对话框中,填入私有配置名称和各相关信息点击【确定】关闭对话框,
点击【下一步】。
24
CirroData(行云)安装及使用手册
相关参数配置详见“4.7 行云计算引擎部分参数说明”
在【节点选择】步骤中,输入要部署行云计算引擎的节点 IP 段,点击【搜索】,勾
选对应的 IP 节点,勾选对应的进程组配置和私有配置,点击【下一步】。
在【节点信息】步骤中,按要求填入相关信息,点击【下一步】。
25
CirroData(行云)安装及使用手册
用户名:登录所选节点的用户名
安装目录:存放行云计算引擎服务的位置
在【部署监控】步骤中,点击【部署】,开始部署。若部署失败,单击【日志】可
查看该节点部署过程中输出的日志信息。
26
CirroData(行云)安装及使用手册
注:受服务器之间 SCP速度的影响,部署时间的长短可能不同。若“部署状态”停在
“上传安装包”状态下长时间未动,说明由XEA服务器向各节点分发tar包速度较慢,
须等待安装包上传完成才能继续部署。
部署成功后点击【完成】,可在【节点状态监控】中查看行云计算引擎服务的状态
信息。
4.7 行云计算引擎部分参数说明
公共配置——常规
参数 含义 示例 备注
192.168.8.121:2181,
192.168.8.122:2181,
…
zookeeper 集群服务的zk_server 以【,】分隔
地址和端口
具有 HDFS 存储读取权hadoop_user hadoop
限的用户
27
CirroData(行云)安装及使用手册
当元数据代理服务部署在
namenode 上时,该参数可
为空
hdfs_meta_query_pr
oxy_host
HDFS 元数据代理服务
主机名或 IP
与“4.5 部署 HDFS 元数据
代理”中的 hdfs_helper_port
保持一致
hdfs_meta_query_pr
oxy_port
HDFS 元数据代理服务9091
端口
若使用存储过程则此配置
项必填,填入 “4.8 部署存
储过程执行引擎 ” 中任一
执行引擎节点 IP 即可
与“4.8 部署存储过程执行
引擎”中进程组配置中的
port 保持一致
存储过程执行引擎节点store_procedure_ip
IP
store_procedure_po
rt
存储过程执行引擎对外
服务端口
行云数据文件在 HDFS
上的 root 目录,xcloud_root_name cirrodata
cirrodata
默认为 cirrodata
若曾部署过 2.0 以前的行云
版本,该参数必须与之前的
metadata_name 保持一致
行云升级时,该值必须与升
级前一致
cluster_name cluster name
该目录的可用空间建议大
于 100Gscratch_dirs 存放临时文件的目录 /tmp
无效数据清理时间间隔 ,
单位:秒
在进行数据迁移时,该参数
非常重要purge_lag 21600
yyyy/mm/dd
hh24:mi:sscast_date_format Date 类型默认格式
cast_timestamp_for
mat
Timestamp 类型默认格 yyyy-mm-dd
hh24:mi:ss.ff式
进程组配置
参数 含义 示例
1803
1603
1703
备注
session_port
inter_port
CirroData 对外服务端口
CirroData 内部通信端口
CirroData 监控服务端口
webserver 对外提供服务
的端口
确认未被占用即可
确认未被占用即可
确认未被占用即可monitoring_port
webserve_port
domain_port
1704 确认未被占用即可
确认未被占用即可数据联邦模式所需端口 19001
公共配置——高级
28
CirroData(行云)安装及使用手册
参数 含义 示例 备注
使用内存占节点所有物
理内存比例
指行云计算引擎最高占用总物理内
存的 70%phy_mem_max_usage 0.7
session 失效时间,单位:
秒
当使用存储过程时,该值须大于耗时
最长的存储过程的时长
结合 double_join_filter_support 参数
一起使用
session_idle_timeout 600
double_value_optimize_
enable
是否使用double类型14
位精度舍入false
当 设 定 为 true 时 ,double_join_filter_suppo
rt
是否允许使用 double 列
进行 join 操作false double_value_optimize_enable 参数
也必须为 true
CSV 容错加载时,记录的
最大脏数据行数
超过部分不记录,只统计总数。-1 表
示记录所有脏数据max_bad_file_row 5000
3max_inserter_node_cou 单次 Insert 中,最多使用
的 IO 节点数量
当设置为 0 时,表示使用该行云集群
内所有节点nt
max_exporter_node_cou
nt
单次 export 中,最多使
用的 IO 节点数量
retry 最长等待时间
同一类型日志最大日志
文件数
当设置为 0 时,表示使用该行云集群
内所有节点3
max_retry_minutes 60 单位:分
实际文件数超过时,自动删除最早的
日志文件max_log_files
log_folder
1000
log存放日志的目录
zk 注册的 node 的 dead
状态的超时时间node_dead_timeout 40000 单位:ms
该参数要求行云集群各节点间必须允许当前资源节点系统
时间和 GRM系统时间的
差的最大值
node_time_diff_with_gr
m
时钟同步。30
该参数最大值不能超过 21600,单位:
秒
私有配置
参数 含义 示例 备注
支持的方式:linux(普通集群方
式), custom(多进程组集群方
式)
resource_type 资源配额分配方式 linux
0仅 在 资 源 配 额 分 配 方 式 为
custom 时生效,0 表示使用所有
核心
允许使用的 cpu 核cpu_num_limit
心数
仅 在 资 源 配 额 分 配 方 式 为
custom 时生效,-1 表示使用系
统所有内存,单位:Byte
mem_max_limit_in_
bytes
允许使用的最大内
存-1
29
CirroData(行云)安装及使用手册
mem_reserve_in_co
ntainer
只有在容器中运行时生效,单
位:Byte容器中预留内存量 524288000
172.16.12.156:35210;
172.16.12.157:35210;
172.16.12.158:35210;
…
IP取行云计算引擎集群中任意 N
个节点均可,端口取进程组配置
中 domain_port 的值;
以【;】分隔
数 据 联 邦 模 式 下master_list
master IP 和端口
ignore_order_by_in_
the_subquery
是否忽略在子查询true 默认忽略
中的 order by
注:以上除 ignore_order_by_in_the_subquery和 master_list参数外的私有参数,
只在多进程组(多租户)方式时需要修改。若不使用进程组(多租户)方式的行云集
群,则无须修改,保持默认即可。
注:多进程组(多租户)方式下参数的设置详见“9.3集群信息及资源规划”和“9.4
部署进程组集群”。
4.8 部署存储过程执行引擎
在新增加的集群下,单击【存储过程执行引擎】,选择左侧【节点管理】页签,点
击【增加节点】。
弹出增加执行引擎节点的步骤,在【选择安装版本】步骤中,按要求填入相关信息,
点击【下一步】。
选择安装源:选择在 4.2 章节中上传的存储过程执行引擎的 tar 包
相关参数配置详见“4.9 存储过程执行引擎部分参数说明”
30
CirroData(行云)安装及使用手册
在【进程组配置】步骤中,点击【增加】,弹出进程组配置对话框。
在进程组配置对话框中,填入进程组名称和程序启动端口(即该存储过程执行引擎
对外服务端口),点击【确定】关闭对话框,点击【下一步】。
在【私有配置】步骤中,点击【增加】,弹出私有配置对话框。
在私有配置对话框中,填入私有配置名称和各参数配置(相关参数配置详见下表),
点击【确定】关闭对话框,点击【下一步】。
31
CirroData(行云)安装及使用手册
在【节点选择】步骤中,输入要部署执行引擎计算引擎的节点 IP 段,点击【搜索】,
勾选部署执行引擎的节点 IP,选择对应进程组配置和私有配置,点击【下一步】。
注:执行引擎节点不要求必须在行云所在的 Hadoop集群内,只要能访问行云节点的
session_port端口即可。
在【节点信息】步骤中,按要求填入相关信息,点击【下一步】。
32
CirroData(行云)安装及使用手册
用户名:登录所选节点的用户名
安装目录:存放行云计算引擎服务的位置
在【部署监控】步骤中,点击【部署】,开始部署。若部署失败,单击【日志】可
查看该节点部署过程中输出的日志信息。
33
CirroData(行云)安装及使用手册
注:受服务器之间 SCP速度的影响,部署时间的长短可能不同。若“部署状态”停在
“上传安装包”状态下长时间未动,说明由XEA服务器向各节点分发tar包速度较慢,
须等待安装包上传完成才能继续部署。
部署成功后点击【完成】,可在【节点状态监控】中查看存储过程执行引擎服务的
状态信息。
4.9 存储过程执行引擎部分参数说明
公共配置——常规
参数 含义 示例 备注
192.168.8.121:2181,
192.168.8.122:2181,
…
zk_server zookeeper 连接信息 以【,】分隔
与 行 云 常 规 配 置 的date_format 行云计算引擎的时间类型 yyyy/mm/dd hh24:mi:ss
cast_date_format 参数一致
进程组配置
34
CirroData(行云)安装及使用手册
参数 含义 示例 备注
port 执行引擎对外服务的端口 12052 确认未被占用即可
私有配置
参数 含义 示例 备注
单个执行引擎引擎能同时执
行的最大过程数maxworkersize 执行引擎最大执行数量 10
executor_cursor_
size
单个执行引擎同时打开游
标最大数量50
10
默认 50 个
单个任务(包括其子过程
和函数),同时打开游标最
大数量
task_cursor_size 默认 10 个
35
CirroData(行云)安装及使用手册
5. 数据库服务的升级
升级须知
各组件的所有参数必须与前版本保持一致。
需要将 HDFSMetaQueryProxy 升级至 2.4-2071 版本。
2.6.0 版本之后的创建的数据,无法通过 2.6.0 版本之前(不含 2.6.0)的系统
进行访问。
升级时,如果现有集群是使用 Administrator 工具部署的,则需要先使用对应
版本的 Administrator 工具将行云集群卸载后,再使用 XEA 进行部署。XEA 不
能卸载 Administrator 工具部署的行云集群。
由 2.2.0 之前的版本(不含 2.2.0)升级到 2.6.1 版本时,由于新增了用户权限
控制,需要在新版本的每个用户下重新创建公共子过程后才能正常编译执行。
如果需要回滚,则同样需要在版本回退后,重新创建公共子过程。
从 2.6.0 之前的版本(包括之前的 2.6.1 版本)升级到该 2.6.1 版本时,不
能直接一键升级,必须记录参数后,重新部署集群。
配置参数中 domain_port 和 masterlist 必须配置, domain_port 必须与
masterlist 中的端口号一致,否则无法启动。
由 2.1.3 及更高的版本(不含 2.2.0)升级到 2.6.1 版本时,由于在进程组配置
和私有配置中各新增了一个参数,需要删除原先的进程组配置和私有配置,
并增加对应的进程组配置和私有配置。
5.1 停止行云服务
在行云计算引擎的【节点状态监控】页签下,勾选所有节点,点击【停止】,停止
所有节点上的行云服务。
36
CirroData(行云)安装及使用手册
5.2 删除行云节点
在【节点管理】页签下,勾选所有节点,点击【删除节点】。
界面弹出对话框点击【确定】。
5.3 停止并卸载 HDFSMetaQueryProxy 服务
注:若本次升级过程中,不涉及到HDFSMetaQueryProxy的升级,该步骤可忽略。
37
CirroData(行云)安装及使用手册
在 HDFS 元数据代理的【节点状态监控】页签下,勾选所有节点,点击【停止】,
停止所有节点上的 HDFS 元数据代理服务。
在【节点管理】页签下,勾选所有节点,点击【删除节点】。
界面弹出对话框点击【确定】。
5.4 停止并卸载 taskmanager
注:若本次升级过程中,不涉及到taskmanager的升级,该步骤可忽略。
在存储过程执行引擎的【节点状态监控】页签下,勾选所有节点,点击【停止】,
停止所有节点上的存储过程执行引擎。
38
CirroData(行云)安装及使用手册
在【节点管理】页签下,勾选所有节点,点击【删除节点】。
界面弹出对话框点击【确定】。
5.5 更新 XEA 服务
注:若本次升级过程中,不涉及到XEA的升级,该步骤可忽略。
在部署有 XEA 的服务器上,到 XEA 的安装目录中,执行./stop.sh,停止 XEA 服务。
39
CirroData(行云)安装及使用手册
删除 XEA 的安装目录。
将新版本的 XEA 服务的 tar 包上传到服务器上,解压。
再解压出的目录中,执行./start.sh 启动 XEA 服务。
5.6 更新 HDFS 元数据代理
注:若本次升级过程中,不涉及到 HDFSMetaQueryProxy的升级,该步骤可忽略。
与初次部署 HDFSMetaQueryProxy 一致,详见“4.5 部署 HDFS 元数据代理”。
5.7 升级行云计算引擎
与初次部署 行云计算引擎 一致,详见“4.6 部署行云计算引擎”。
注:须确保行云数据库的 cluster_name参数与升级前保持一致。
5.8 升级执行引擎服务
与初次部署 执行引擎服务 一致,详见“4.8 部署存储过程执行引擎”。
40
CirroData(行云)安装及使用手册
6. 行云节点的扩容
展开待扩容的行云集群【行云计算引擎】,选择【节点管理】页签,点击【增加
节点】。后续操作与初次部署行云计算引擎一致,详见“4.6 部署行云计算引擎”。
注:扩容的行云服务的参数和版本,必须与原有行云服务保持一致!
41
CirroData(行云)安装及使用手册
7. 创建数据库实例与用户
7.1 配置代理地址
打开 SQLDeveloper,点击【系统设置】【安全代理】,勾选【是否使用安全代理】,
填入访问已部署了 XEA 服务的 IP 和 Port。
点击【确定】后,重启 SQLDeveloper。
注:如果客户端与行云集群能够直连,此步骤可忽略
7.2 创建数据库实例
选择【数据库导航】标签,右键【连接】,点击【新建连接】,弹出连接对话框,填
入相关信息后,点击【完成】。
42
CirroData(行云)安装及使用手册
本地连接名:任意填写
主机地址:行云集群任意一台 Datanode 的 IP
端口:行云集群 session_prot
数据库名:空
用户名:systemadmin
密码:默认 123456
存储过程 IP:空
43
CirroData(行云)安装及使用手册
右键【连接】上述创建好的 create_DB 连接,输入密码点击【完成】,连接图标显示
为黄色,表示连接成功。
右键【数据库】,点击【新建数据库】,弹出新建数据库对话框。
输入数据库实例名称和备注,点击【确定】。
注:数据库实例名称由字母、数字、下划线、#组成。以字母、中文字、下划线开头,
且不区分大小写,一般不超过64个字符。
7.3 创建数据库用户
选择【数据库导航】标签,右键【连接】,点击【新建连接】,弹出连接对话框,填
入相关信息后,点击【完成】。
44
CirroData(行云)安装及使用手册
本地连接名:任意填写
主机地址:行云集群任意一台 Datanode 的 IP
端口:行云集群 session_prot
数据库名:数据库实例名
用户名:system
密码:默认 123456
存储过程 IP:空
45
CirroData(行云)安装及使用手册
右键【连接】上述创建好的 system 连接,输入密码点击【完成】,连接图标显示
为黄色,表示连接成功。
右键【用户】,点击【新建用户】,弹出新建用户对话框。
输入用户名和密码,点击【确定】。
注:密码由字母、数字、下划线、#或$组成,6-30个字符,不能使用纯数字。
行云用户说明
用户名 默认密码 说明 使用位置
systemadmin 123456 建立数据库、进程组管理
新建用户、密码重置、权限管理、新建
dblink、进程组管理
SQL Developer
system 123456 SQL Developer
SQL Developer查看表/视图、操作数据、查询数据、查
看 dblink、编辑/执行存储过程自建用户 用户设定
7.4 用户赋权
右键点击上述创建好的用户,点击【权限管理】。
46
CirroData(行云)安装及使用手册
根据需求对该用户授权。
47
CirroData(行云)安装及使用手册
注:每个用户必须对其授权后才能启用。
行云的用户权限和系统权限
用户权限
ALL
说明
下表中所有权限
导入数据权限
查询数据权限
更新列权限
INSERT
SELCET
UPDATE
EXPORT
CREATE
ALTER
导出数据的权限
创建表、视图权限
修改表定义的权限
删除表、视图的权限
移除表数据权限
删除表的数据
执行过程的权限
DROP
TRUNCATE
DELETE
EXECUTOR
系统权限 说明
CREATE-USER 创建用户权限
CREATE-DBLINK
GRANT-OBJECT
GRANT-SYSTEM
CREATE-PROCEDURE
EXEC-PROCEDURE
创建 DBLINK 权限
授予对象权限的权限
授予系统权限的权限
创建存储过程的权限
执行存储过程的权限
注:推荐使用SQL语句的形式对存储过程进行赋权,具体SQL如下:
48
CirroData(行云)安装及使用手册
Grant create any procedure to test;
Grant executor any procedure to test;
Grant executor on test.* to test;
7.5 创建连接并访问行云
选择【数据库导航】标签,右键【连接】,点击【新建连接】,弹出连接对话框,填
入相关信息后,点击【完成】。
本地连接名:任意填写
49
CirroData(行云)安装及使用手册
主机地址:行云集群任意一台 Datanode 的 IP
端口:行云集群 session_prot
数据库名:数据库实例名
用户名:之前创建好且已经被赋权的用户名
密码:预设的密码
存储过程 IP:一台或多台执行引擎 IP + 执行引擎端口,使用【,】分隔
右键【连接】上述创建好的 用户 连接,输入密码点击【完成】,连接图标显示为
黄色,表示连接成功。
50
CirroData(行云)安装及使用手册
8. 创建 DBLINK
行云支持对 ORACLE、MySQL、CirroData、Infomix、DB2 五种数据库的 DBLINK。
8.1 创建 ORACLE DBLINK
添加 OracleTNS
打开待添加 TNS 的行云集群【行云计算引擎】,在【TNS 配置】页签,选择
【OracleTNS 配置】。
TNS name:如上图中的“TNS_EXAMPLE”,任意命名
HOST:ORACLE 数据库服务的 IP
PORT:ORACLE 服务的端口
SERVICE_NAME:数据库服务名
新建 Oracle Dblink
打开 SQLDeveloper,使用 system 用户连接数据库实例(参见“7.3 创建数据库用
户”)。右键【OracleDblink】,点击【新建 Oracle Dblink】。
在弹出的 新建 Dblink 对话框中,输入相关 DBLINK 信息,点击【完成】。
51
CirroData(行云)安装及使用手册
Dblink 名称:任意填写
数据库类型:ORACLE
sid:OracleTNS 配置中的 TNS name
用户名:登录 Dblink 所连数据库的用户名
密码:登录所需的密码
8.2 创建 MySQL DBLINK
添加 MySqlTNS
打开待添加 TNS 的行云集群【行云计算引擎】,在【TNS 配置】页签,选择
【MySqlTNS 配置】。
SID:如上图中的“test”,任意命名
SCHEMA:要访问的 MySQL 的数据库名称
HOST:MySQL 数据库服务的 IP
PORT:MySQL 服务的端口
52
CirroData(行云)安装及使用手册
新建 MySql Dblink
打开 SQLDeveloper,使用 system 用户连接数据库实例。右键【MySqlDblink】,点
击【新建 MySql DBLINK】。
在弹出的 新建 Dblink 对话框中,输入相关 DBLINK 信息,点击【完成】。
Dblink 名称:任意填写
数据库类型:MYSQL
sid:MySqlTNS 配置中的 SID
用户名:登录 Dblink 所连数据库的用户名
密码:登录所需的密码
53
CirroData(行云)安装及使用手册
8.3 创建 CirroData DBLINK
添加 XCloudTNS
打开待添加 TNS 的行云集群【行云计算引擎】,在【TNS 配置】页签,选择
【XCloudTNS 配置】。
SID:如上图中的“datasource”,任意命名
HOST:CirroData 数据库服务的 IP
PORT:CirroData 服务的端口
DATABASE_NAME:要访问的 CirroData 的数据库名称
USER:要访问的 CirroData 的用户
新建 CirroData Dblink
打开 SQLDeveloper,使用 system 用户连接数据库实例。右键【XcloudDblink】,点
击【新建 Xcloud DBlink】。
在弹出的 新建 Dblink 对话框中,输入相关 DBLINK 信息,点击【完成】。
54
CirroData(行云)安装及使用手册
Dblink 名称:任意填写
数据库类型:XCLOUD
数据库名:XCloudTNS 配置中的 SID
用户名:登录 Dblink 所连数据库的用户名
密码:登录所需的密码
8.4 创建 DB2 DBLINK
添加 DB2TNS
打开待添加 TNS 的行云集群【行云计算引擎】,在【TNS 配置】页签,选择【DB2TNS
配置】。
SID:如上图中的“DB2_SAMPLE”,任意命名
Database:DB2 数据库名称
Hostname:DB2 数据库服务的 IP,上如图“172.168.6.66”
Servicename:DB2 服务的端口,如上图“50000”
55
CirroData(行云)安装及使用手册
在 DB2TNS 配置 中点击确定后,会弹出提示“请继续修改 ODBCTNS 配置中的数
据源!”。
点击【确定】,并继续在【ODBCTNS】中进行 Infomix 的相关配置。
SID:与 DB2TNS 中的 SID 相同,如上图中的“DB2_SAMPLE”
Driver:DB2
至此,DB2 的 TNS 配置全部完成。
新建 DB2 Dblink
打开 SQLDeveloper,使用 system 用户连接数据库实例。右键【ODBCDblink】,点
击【新建 ODBC DBlink】。
在弹出的 新建 Dblink 对话框中,输入相关 DBLINK 信息,点击【完成】。
56
CirroData(行云)安装及使用手册
Dblink 名称:任意填写
数据库类型:ODBC
数据库名:DB2TNS 配置中的 SID
用户名:登录 Dblink 所连数据库的用户名
密码:登录所需的密码
8.5 创建 Infomix DBLINK
添加 InfomixTNS
打开待添加 TNS 的行云集群【行云计算引擎】,在【TNS 配置】页签,选择
【InfomixTNS 配置】。
Servername:Infomix 服务端的 dbservername,如上图中的“tramsserver”
HOST:Infomix 数据库服务的 IP,上如图“172.16.44.42”
PORT:Infomix 服务的端口,如上图“9088”
57
CirroData(行云)安装及使用手册
在 InfomixTNS 配置 中点击确定后,会弹出提示“请继续修改 ODBCTNS 配置中的
数据源!”。
点击【确定】,并继续在【ODBCTNS】中进行 Infomix 的相关配置。
SID:如上图中的“infomix_test_db”,任意命名
Driver:Infomix 驱动名称,如上图即可
Database:Infomix 数据库名称
Servername:与 InfomixTNS 中的 Servername 相同
至此,Infomix 的 TNS 配置全部完成。
新建 Infomix Dblink
打开 SQLDeveloper,使用 system 用户连接数据库实例。右键【ODBCDblink】,点
击【新建 ODBC DBlink】。
在弹出的 新建 Dblink 对话框中,输入相关 DBLINK 信息,点击【完成】。
58
CirroData(行云)安装及使用手册
Dblink 名称:任意填写
数据库类型:ODBC
数据库名:ODBCTNS 配置中的 Infomix 的 SID
用户名:登录 Dblink 所连数据库的用户名
密码:登录所需的密码
注:添加TNS的过程,不会重启行云计算引擎等相关进程。
59
CirroData(行云)安装及使用手册
9. 部署为进程组(多租户)集群
本版本支持使用进程组一系列配置和指令将行云集群划分多个进程组(租户),使
得各组之间在资源使用及计划执行达到隔离的效果。
9.1 安装相关库和工具
使用 root 用户,在所有 CirroData 节点执行如下命令,安装 cgroup 相关库和工
具。
yum install -y libcgroup libcgroup-tools
启动 cgconfig 服务。
service cgconfig start
注:
REDHAT 6.4以上一般在安装镜像里面都自带相关库和工具,执行该命令时,主要
为了确认已经安装及部分情况下进行安装操作。
如果系统没有安装 yum源,需请运维人员进行协助。
9.2 节点初始化
使用 root 用户,在所有 CirroData 节点执行如下命令,对启动行云的用户授予
cgroup 使用权限。
./init-xcloud-cg.sh {username:groupname}
例:
./init-xcloud-cg.sh cirrodata_user:cirrodata_group
其中:
1.
2.
username 表示运行行云所使用的用户名。
groupname 表示运行行云的用户所属组名。
60
CirroData(行云)安装及使用手册
如果未安装相关库,则执行该脚本会报错:
Fail to initialize resource isolation environment!
Libcgroup not installed properly.
或
Fail to initialize resource isolation environment!
Create cgroup for cirrodata_user in current node failed.
注:
该脚本位于行云计算引擎安装目录下。
每个CirroData节点执行一次即可。
9.3 集群信息及资源规划
各进程组所占用的计算资源须根据集群规模、硬件水平及业务需求共同确定。
这里以一套 8 节点的 CirroData 集群为例,集群信息如下:
主机名 IP 内存 CPU
v003v004v005v006v007v008
172.16.12.158172.16.12.159172.16.12.160172.16.12.161172.16.12.162172.16.12.163
256G 8 core
规划各进程组(租户)进程配置.
进程组 主机名
v003
v004v005v006v007v008
v003v004v005v006v007v008
v006v007v008
IP session_port inter_port monitoring_port webserve_port
172.16.12.158172.16.12.159172.16.12.160172.16.12.161172.16.12.162172.16.12.163
172.16.12.158172.16.12.159172.16.12.160172.16.12.161172.16.12.162172.16.12.163
172.16.12.161172.16.12.162172.16.12.163
PC_1 31210 32210 33210 34210
PC_2
PC_3
41210
51210
42210
52210
43210
53210
44210
54210
注:相关配置参数的说明详见“4.7行云计算引擎部分参数说明——进程组配置”
61
CirroData(行云)安装及使用手册
规划各进程组(租户)私有配置,即计算资源配额。
进程组 mem_reserve_in_container resource_type cpu_num_limit mem_max_limit_in_bytes
2097152000(2G)
104857600000(100G)
PC_1 custom
custom
custom
4
4
2
2097152000(2G)
52428800000(50G)
PC_2
PC_3 2097152000(2G)
33554432000(32G)
注:
相关配置参数的说明详见“4.7行云计算引擎部分参数说明——私有配置”
resource_type(资源配额分配方式)必须为custom
一般情况下,mem_reserve_in_container推荐配置为mem_max_limit_in_bytes的
10%~20%
9.4 部署进程组集群
部署行云计算引擎的步骤,详见“4.6 部署行云计算引擎”.
其中,在【进程组配置】步骤中,为各进程组配置进程信息。
在进程组配置对话框中,根据之前规划的信息填入进程组名称和各端口信息点击
【确定】关闭对话框,点击【下一步】。
62
CirroData(行云)安装及使用手册
在【私有配置】步骤中,为各进程组划配计算资源配额。
63
CirroData(行云)安装及使用手册
在私有配置对话框中,根据之前规划的资源配额,填入进程组名称和其他相关信息
点击【确定】关闭对话框,点击【下一步】。
64
CirroData(行云)安装及使用手册
在【节点选择】步骤中,输入要部署行云计算引擎的节点 IP 段,点击【搜索】。根
据之前的规划勾选对应的 IP 节点,勾选对应的进程组配置和私有配置,点击【下一步】。
65
CirroData(行云)安装及使用手册
在【节点信息】步骤中,按要求填入相关信息,点击【下一步】,进行部署。
在【部署监控】步骤中,点击【部署】,开始部署。若部署失败,单击【日志】可
查看该节点部署过程中输出的日志信息。
66
CirroData(行云)安装及使用手册
部署成功后点击【完成】,可在【节点状态监控】中查看各进程组行云计算引擎服
务的状态信息。
9.5 创建数据库实例与用户
在进程组环境中,创建数据库、用户和用户赋权的方式与一般 CirroData 集群环境
一致,详见“7 创建数据库实例与用户”。
9.6 规划进程组与数据库实例&用户的关系
进程组 主机名
v003
v004v005v006v007v008
v003v004v005v006v007v008
v006v007v008
IP inter_port 数据库名(DB) 用户名
172.16.12.158172.16.12.159172.16.12.160172.16.12.161172.16.12.162172.16.12.163
172.16.12.158172.16.12.159172.16.12.160172.16.12.161172.16.12.162172.16.12.163
172.16.12.161172.16.12.162172.16.12.163
USER1_PC_1
USER2_PC_1PC_1 32210 DB_PC_1
PC_2
PC_3
42210
52210
DB_PC_2
DB_PC_1
USER_PC_2
USER_PC_3
** 9.7、9.8、9.9、9.10 以进程组“PC_1”,数据库实例“DB_PC_1 ”,用户“USER1_PC_1”、
“USER2_PC_1”为例。
9.7 为数据库实例分配空闲的 CirroData 进程
使用 systemadmin 用户登录行云集群。
67
CirroData(行云)安装及使用手册
通过客户端向导方式
右键【数据库】中的【DB_PC_1】,点击【分配进程】。
根据规划,在弹出的 进程管理 对话框中勾选欲分配给数据库实例(DB_PC_1)的空
闲的 CirroData 进程,点击【完成】。
68
CirroData(行云)安装及使用手册
使用 SQL 语句方式
ALTER PC CONFIG ASSIGN PU
'v003:32210' ,
'v004:32210' ,
'v005:32210' ,
'v006:32210' ,
'v007:32210' ,
'v008:32210' TO DB DB_PC_1;
注:该命令必须由SYSTEMADMIN用户执行。
69
CirroData(行云)安装及使用手册
9.8 创建逻辑进程组并分配进程
使用 system 用户登录 DB_PC_1 库。
通过客户端向导方式
右键【进程组】,点击【新建进程组】。
为数据库实例(DB_PC_1)创建逻辑进程组(PC_1)。
在弹出的 进程管理 对话框中,填入【进程组名称】,点击确定。
70
CirroData(行云)安装及使用手册
右键新建的【PC_1】进程组,点击【进程分配】。
根据规划,在弹出的 编辑进程组 对话框中,将当前数据库实例(DB_PC_1)中的空
闲进程分配至逻辑进程组(PC_1),点击【完成】。
71
CirroData(行云)安装及使用手册
使用 SQL 语句方式
为数据库实例(DB_PC_1)创建逻辑进程组(PC_1)。
ALTER PC CONFIG CREATE PC PC_1;
将当前数据库实例(DB_PC_1)中的空闲进程分配至逻辑进程组(PC_1)。
ALTER PC CONFIG ASSIGN PU
'v003:32210' ,
'v004:32210' ,
'v005:32210' ,
'v006:32210' ,
'v007:32210' ,
72
CirroData(行云)安装及使用手册
'v008:32210' TO PC PC_1;
注:以上命令必须由SYSTEM用户执行。
9.9 为用户授权进程组访问权限
使用 system 用户登录 DB_PC_1 库。
通过客户端向导方式
右键 用户 中的【USER1_PC_1】用户,点击【进程组管理】。
73
CirroData(行云)安装及使用手册
根据规划,在弹出的 进程组管理 对话框中, 将进程组(PC_1)的访问权限授予给用
户(USER1_PC_1),点击【完成】。
74
CirroData(行云)安装及使用手册
使用 SQL 语句方式
将当前数据库实例(DB_PC_1)中进程组(PC_1)的访问权限授予给用户(USER1_PC_1、
USER2_PC_1)。
ALTER PC CONFIG GRANT PC PC_1 TO USER USER1_PC_1;
ALTER PC CONFIG GRANT PC PC_1 TO USER USER2_PC_1;
注:以上命令必须由SYSTEM用户执行。
至此,进程组(多租户)的部署和划配流程,全部完成。
9.10 查看进程组相关信息
使用 SYSTEMADMIN 用户查询
--查询集群中的空闲PU(进程)信息
SELECT * FROM V$CLUSTER_FREE_PUS;
--查询集群中的已分配到DB(数据库实例)的PU(进程)信息
SELECT * FROM V$CLUSTER_ASSIGNED_PUS;
--查询集群中某个DB(数据库实例)中已分配的PU(进程)信息
SELECT * FROM V$CLUSTER_ASSIGNED_PUS WHERE DBNAME = 'DB_PC_1';
使用 SYSTEM 用户查询
--查询当前DB(数据库实例)中的空闲PU(进程)信息
SELECT * FROM V$DB_FREE_PUS;
--查询当前DB(数据库实例)中已分配的PU(进程)信息
SELECT * FROM V$DB_ASSIGNED_PUS;
--查询当前DB(数据库实例)中的PC(进程组)信息
SELECT * FROM V$DB_PCS;
75
CirroData(行云)安装及使用手册
--查询当前DB(数据库实例)中某个PC(进程组)的在线PU(进程)信息
SELECT * FROM V$DB_SURVIVE_PUS WHERE PCNAME = 'PC_1';
--查询当前DB(数据库实例)中某个PC(进程组)的已分配PU(进程)信息
SELECT * FROM V$DB_ASSIGNED_PUS WHERE PCNAME = 'PC_1';
--查询当前DB(数据库实例)中某个PC(进程组)的User授权信息
SELECT * FROM V$DB_GRANT_USERS WHERE PCNAME = 'PC_1';
76
CirroData(行云)安装及使用手册
10. Kerberos 环境下的部署
10.1 部署 HDFSMetaQueryProxy
userPrincipal:部署 HDFSMetaQueryProxy 的用户的 principal
keytabFile:部署 HDFSMetaQueryProxy 的用户的 KeyTab 文件所在绝对路径
其他参数参见“4.3 部署 HDFSMetaQueryProxy”。
10.2 部署行云计算引擎
在【公共配置】——【常规】页签中,填入与 kerberos 环境相关的参数。
kerb_keytab_file:Datanode 上,部署行云用户的 KeyTab 文件所在绝对路径
kerb_principal:部署行云用户的 principal
kerb_renew_time:密钥更新的周期,单位秒;若不更新则保留默认值即可
其他参数参见“4.7 行云计算引擎部分参数说明”。
77
CirroData(行云)安装及使用手册
78
CirroData(行云)安装及使用手册
附录 CirroData 的其他用法说明
CirroData SQLDeveloper
详见 SQLDeveloper 客户端,【帮助】【帮助内容】
CirroData Enterprise Administrator (XEA)
详见 XEA 客户端【产品介绍】、【帮助文档】《CirroData Enterprise Administrator》
以及《CirroData_XEA 部署手册》
SQL 语法
详见《CirroData_SQL 语法功能手册》
存储过程语法
详见《CirroData_存储过程语法手册》
JDBC 接口
详见《CirroDataJDBC_README-CN》
注:
当第三方应用(如分布式 ETL、BDI等)需同时调用行云基本 SQL和存储过程时,
JDBC请使用XCloudJDBC_StoreProcedure.jar;
若不调用存储过程,只进行基本SQL的操作,推荐使用XCloudJDBC.jar。
进程组及资源隔离
详见《CirroData_进程组使用手册》和《CirroData_资源隔离方式启动手册》
79