Klustron(原KunlunBase) 集群物理备份及恢复操作指南
Klustron(原KunlunBase) 集群物理备份及恢复操作指南
概述
本文将演示增加备份存储目标,对已有集群进行物理全备份,之后将完整备份集恢复到另一个集群,并将过程与步骤进行详细说明。该文中主要的测试过程都是通过 XPanel 控制台完成。
对于如何准备好备份存储目标系统(此文中所配置的备份目标类型为 HDFS),参考HDFS安装方法。从Klustron-1.3开始,支持存储备份数据到公有云(阿里云,AWS)对象存储系统,相关操作方式与配置HDFS存储设施类似,根据XPanel的GUI很容易操作,本文不赘述。
集群组件访问方式
本文假设集群已经安装完成并正常运行,相关组件的连接信息如下。其中 XPanel 服务安装的服务器 IP 是 192.168.221.17。在能访问 192.168.221.17 的机器上打开浏览器,输入地址:http://192.168.221.17:18080/KunlunXPanel/#/login?redirect=%2Fdashboard
(初次登录用户名和密码是:super_dba/super_dba,初次登陆需要修改 super_dba 密码)。
登录后查看 “集群列表” ,这里已经准备好了一个之前配置好的集群,名称为 “cluster1” , 该集群的计算节点 IP 为:192.168.221.17,服务端口为:47001。存储分片数量为 1 个,存储主节点 IP 为:192.168.221.18,服务端口为:57003
1 增加备份存储目标
1.1 点击 “备份存储目标管理” :
1.2 点击 “新增“
1.3 输入相应的参数(本例中 HDFS 服务 IP 地址为: 192.168.221.16 ,端口为: 9000)
点击 “确定”
1.4 添加备份存储目标完成:
2 准备试验数据
2.1 打开一个连向 192.168.221.17 的 ssh 终端窗口,以 kunlun 用户身份登陆该主机,然后用 PostgreSQL 客户端连接集群,创建测试表,并插入测试数据,
相应的指令:
[kunlun@kunlun1 ~]$ id
[kunlun@kunlun1 ~]$ source /kunlun/env.sh
[kunlun@kunlun1 ~]$ psql -h 192.168.221.17 -p 47001 -U abc postgres
postgres=# CREATE TABLE testtable1 (id int primary key);
postgres=# insert into testtable1 values(1);
postgres=# select * from testtable1 ;
输出信息显示如下:
3 对集群 “cluster1” 进行全库备份操作
3.1回到浏览器窗口,在 “集群列表” ,可看到集群 “cluster1” 右侧有“设置”按钮
3.2 点击 “设置” 按钮
3.3 点击 “全量备份”
3.4 点击 “发起全量备份”
3.5 点击 “全量备份记录” ,在此可看到备份进行中的状态
如下是最终的结果状态信息(依实际库的大小和整个集群规模不同,整个备份过程持续的时间也相应的会不同)
4 创建另一个与 cluster1 同等配置的集群 cluster2
4.1 该集群的计算节点 IP 为:192.168.221.18,服务端口为:47001, 存储分片数量为 1 个,存储主节点 IP 为:192.168.221.19,服务端口为:57003
5 集群恢复 ( 回档 ) 操作
5.1 在集群 “cluster2” 右侧有 “回档” 按钮
5.2 点击 “回档” 按钮,在“原集群名称”处的下拉列表选择来源集群,此处只有一个可用集群,直接选 “cluser_1671517329_000001” , 在 “回档时间” 弹出的时间日期选择器这里直接点 “此刻” 并 “确定”
确认无误后,点击 “确认”
备注:选择回档时间时,确保选择的时间点是任意一次全量备份时间至当前时间之间。
5.3 在弹出的提示窗口中,可看到声明信息说如果执行回档操作,则第二个集群 “cluster2”(内部 ID:cluster_1671517549_000002)的数据将会被覆盖, 点击 “确定” 执行全库恢复(回档)操作
5.4 系统弹窗提示,回档操作正在进行中
5.5 集群恢复 ( 回档 ) 成功后,显示如下提示
6 数据恢复检查
6.1 打开一个连向集群 cluster2(计算节点 IP:192.168.221.18)的 ssh 终端窗口,以 kunlun 用户身份登陆该主机,然后用 PostgreSQL 客户端连接集群,执行数据查询指令:
[kunlun@kunlun2 ~]$ id
[kunlun@kunlun2 ~]$ source /kunlun/env.sh
[kunlun@kunlun2 ~]$ psql -h 192.168.221.18 -p 47001 -U abc postgres
postgres=#select * from testtable1;
信息显示如下:
至此,集群数据恢复完成。