实验概述

今天这篇文章,我将给你演示使用OSS管控平台备份TBase数据库。

实验环境

  • 版本信息
软件环境 版本信息
操作系统 CentOs7.6
OSS版本 2.15.12.3
TBase版本 TBase_V5.05.2
  • 服务器信息
IP 组件
172.21.48.11 gtm001备,cn001备,dn001备
172.21.48.14 gtm001主,cn001主,dn001主
172.21.48.13 hadoop 分布式文件系统
  • 备份示意图

备份示意图

实验步骤

  • 搭建hadoop分布式文件系统(hdfs)
# 下载hadoop和jdk
wget https://tasev2-1300276124.cos.ap-beijing.myqcloud.com/hadoop-3.3.0.tar.gz
wget https://tasev2-1300276124.cos.ap-beijing.myqcloud.com/jdk-8u40-linux-x64.gz

# 解压hadoop和jdk
tar -zxvf hadoop-3.3.0.tar.gz -C /usr/local/
tar -zxvf jdk-8u40-linux-x64.gz -C /usr/local/

#配置hadoop和jdk环境变量
vi /etc/bashrc
export JAVA_HOME=/usr/local/jdk1.8.0_40
export PATH=$JAVA_HOME/bin:$PATH 
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar 
export HADOOP_HOME=/usr/local/hadoop-3.3.0
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

# 加载环境变量
source /etc/bashrc

配置hadoop core-site.xml文件,IP地址改为本机的IP

# vi /usr/local/hadoop-3.3.0/etc/hadoop/core-site.xml
<configuration>
<property>
  <name>fs.defaultFS</name>
  <value>hdfs://172.21.16.9:9000</value>
  </property>
</configuration>

image.png

配置hadoop hdfs-site.xml文件.

--vi /usr/local/hadoop-3.3.0/etc/hadoop/hdfs-site.xml
<property>
  <name>dfs.namenode.name.dir</name>
  <value>/hd/dfs/name</value>
  </property>
  <property>
  <name>dfs.datanode.data.dir</name>
  <value>/hd/dfs/data</value>
  </property>

image.png

配置hadoop-env.sh环境变量,加载java环境

--vi /usr/local/hadoop-3.3.0/etc/hadoop/hadoop-env.sh
export JAVA_HOME=/usr/local/jdk1.8.0_40

格式化namenode

mkdir -p /hd/dfs/{data,name}
hadoop namenode -format

启动hdfs

hadoop-daemon.sh start namenode
hadoop-daemon.sh start datanode

检查hdfs启动是否正常(jps)

image.png

  • 为TBase集群配置hadoop环境变量
    TBase的GTM/CN/DN节点需要使用hadoop命令将备份文件上传到hdfs系统,所以每个GTM/CN/DN节点的服务器上都需要配置hadoop环境变量,然后重启本节点的OSS服务,

以下操作在所有安装GTM/CN/DN的服务器上执行:

下载JDK和hadoop并解压

#下载jdk安装包
wget https://tasev2-1300276124.cos.ap-beijing.myqcloud.com/jdk-8u40-linux-x64.gz
#下载hadoop安装包
wget https://tasev2-1300276124.cos.ap-beijing.myqcloud.com/hadoop-3.3.0.tar.gz

#解压jdk安装包到/usr/local
tar -zxvf jdk-8u40-linux-x64.gz -C /usr/local/
#解压haddoop安装包到/usr/local
tar -zxvf hadoop-3.3.0.tar.gz -C /usr/local/
#编辑/etc/bashrc,配置java和hadoop环境变量
vi /etc/bashrc
export JAVA_HOME=/usr/local/jdk1.8.0_40
export PATH=$JAVA_HOME/bin:$PATH 
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar 
export HADOOP_HOME=/usr/local/hadoop-3.3.0
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

#加载环境变量
source /etc/bashrc

#配置java环境变量到hadoop-env.sh
vi /usr/local/hadoop-3.3.0/etc/hadoop/hadoop-env.sh
export JAVA_HOME=/usr/local/jdk1.8.0_40

#重启OSS
su - tbase
cd /data/tbase/install/tbase_oss/tools/op/
./start.sh
./stop.sh
  • 登陆OSS,配置备份

创建hdfs备份目录,并将目录的权限修改为tbase:tbase

[root@VM-48-11-centos op]# hdfs dfs -mkdir hdfs://172.21.48.13:9000/backup
[root@VM-48-11-centos op]# hdfs dfs -chown tbase:tbase hdfs://172.21.48.13:9000/backup

登陆OSS,配置备份策略。

image.png

下图表示备份配置成功,凌晨1点开始备份,每三天备份一次,保留最近三次的备份。

image.png

点击备份检查->查看备份记录,可以查看到各个组件的备份状态(因为TBase的备份是在备机上完成,所以此处需要查看备节点的备份记录,如下图所示,查看的是cn001备节点的备份记录)

image.png

至此为止,TBase备份到HDFS的配置就完成了,这篇文章主要是给你介绍实操的过程,对原理感兴趣的同学可以在下方留言,有必要的话我还会为大家详细介绍TBase备份的原理。

文章来源于腾讯云开发者社区,点击查看原文