FusionInsight MRS备份恢复简介
概述
FusionInsight Manager提供对集群内的用户数据及系统数据的备份恢复能力,备份功能按组件提供。系统支持备份Manager的数据、组件元数据(DBService、Elasticsearch、HDFS NameNode、HBase、Kafka、Yarn)及业务数据(HBase、HDFS、Elasticsearch、Hive、Redis)。
备份功能支持将数据备份至本地磁盘(LocalDir)、本端HDFS(LocalHDFS)、远端HDFS(RemoteHDFS)、NAS(NFS/CIFS)、SFTP服务器(SFTP)
对于支持多服务的组件,支持同服务多个实例的备份恢复功能且备份恢复操作与自身服务实例一致。
备份恢复任务的使用场景如下:
- 用于日常备份,确保系统及组件的数据安全。
- 当系统故障导致无法工作时,使用已备份的数据完成恢复操作。
- 当主集群完全故障,需要创建一个与主集群完全相同的镜像集群,可以使用已备份的数据完成恢复操作。
备份场景 | 备份类型 | 备份内容 | 备份目录类型 |
备份Manager配置数据 | OMS | 默认备份集群管理系统中的数据库数据(不包含告警数据)以及配置数据。 |
|
备份组件元数据或其他数据 |
DBService | 备份DBService管理的组件(Loader、Metadata、Hive、Spark、Oozie、Hue和Redis)的元数据。对于安装了多服务的集群,包含多个Hive和Spark服务实例的元数据。 |
|
Kafka | Kafka的元数据。 |
|
|
NameNode | 备份HDFS元数据。添加多个NameService后,支持不同NameService的备份恢复功能且备份恢复操作与默认实例“hacluster”一致。 |
|
|
Yarn | 备份Yarn服务资源池相关信息。 |
||
HBase | HBase系统表的tableinfo文件和数据文件。 |
||
Elasticsearch | Elasticsearch元数据,即存在于ZooKeeper上的与Elasticsearch安全功能相关的数据。 |
|
|
Redis | Redis的业务数据。 |
|
|
备份特定组件业务数据 |
HBase | 备份表级别的用户数据。对于安装了多服务的集群,支持多个HBase服务实例的备份恢复功能且备份恢复操作与HBase服务实例一致。 |
|
HDFS | 备份用户业务对应的目录或文件。 |
||
Hive | 备份表级别的用户数据。对于安装了多服务的集群,支持多个Hive服务实例的备份恢复功能且备份恢复操作与Hive服务实例一致。 |
||
Elasticsearch | 备份索引数据。对于安装了多服务的集群,支持多个Elasticsearch服务实例的备份恢复功能且备份恢复操作与Elasticsearch服务实例一致。 |
|
需要特别说明的是,部分组件不提供单独的数据备份与恢复功能:
- Kafka支持副本特性,在创建主题时可指定多个副本来备份数据。
- Solr的SolrServerAdmin和SolrServerN可以通过自动创建Replica来实现不同节点之间的数据备份。
- Mapreduce和Yarn的数据存放在HDFS上,故其依赖HDFS提供备份与恢复即可。
- GraphBase的底层数据是以表的形式存储在HBase中,而它的索引数据存在于Elasticsearch中,故其依赖HBase和Elasticsearch提供备份与恢复。
- ZooKeeper中存储的业务数据,其备份恢复能力由各上层组件按需独立实现。
原理
任务
在进行备份恢复之前,需要先创建备份恢复任务,并指定任务的参数,例如任务名称、备份数据源和备份文件保存的目录类型等等。通过执行备份恢复任务,用户可完成数据的备份恢复需求。在使用Manager执行恢复HDFS、HBase、Elasticsearch、Hive和NameNode数据时,无法访问集群。
每个备份任务可同时备份不同的数据源,每个数据源将生成独立的备份文件,每次备份的所有备份文件组成一个备份文件集,可用于恢复任务。备份任务支持将备份文件保存在Linux本地磁盘、本集群HDFS与备集群HDFS中。备份任务提供全量备份或增量备份的策略,增量备份策略支持HBase、Elasticsearch、HDFS和Hive备份任务,OMS、DBService和NameNode备份任务默认只应用全量备份策略。
管理员在规划备份恢复任务时,请严格根据业务逻辑、数据存储结构、数据库或表关联关系,选择需要备份或者恢复的数据。系统默认创建间隔为1小时的周期备份任务“default-oms”、“default-集群ID”,支持全量备份OMS及集群的DBService、NameNode等元数据到本地磁盘。
说明:
- 某个任务已经处于执行状态,则当前任务无法重复执行,其他任务也无法启动。
- 周期任务自动执行时,距离该任务上次执行的时间间隔需要在120秒以上,否则任务推迟到下个周期启动。手动启动任务无时间间隔限制。
- 周期任务自动执行时,当前时间不得晚于任务开始时间120秒以上,否则任务推迟到下个周期启动。
- 周期任务锁定时无法自动执行,需要手动解锁。
- OMS、DBService、Kafka和NameNode备份任务开始执行前,若主管理节点“LocalBackup”分区可用空间小于20GB,则无法开始执行。
快照
系统通过快照技术,快速备份数据。快照包含HBase快照、HDFS快照和Elasticsearch快照。
- HBase快照
HBase快照是HBase表在特定时间的一个备份,该备份文件不复制业务数据,不影响RegionServer。HBase快照主要复制表的元数据,包含table descriptor,region info和HFile的引用信息。通过这些元数据信息可以恢复快照时间点之前的数据。
- HDFS快照
HDFS快照是HDFS文件系统在特定时间点的只读备份副本,主要用于数据备份、用户误操作保护和灾难恢复的场景。
任意HDFS目录均可以配置启用快照功能并创建对应的快照文件,为目录创建快照前系统会自动启用此目录的快照功能。创建快照不会对正常的HDFS操作有任何影响。每个HDFS目录最多可创建65536个快照。
如果一个HDFS目录已创建快照,那么在快照完全删除以前,此目录无法删除或修改名称。该目录的上级目录或子目录也无法再创建快照。
- Elasticsearch快照
Elasticsearch快照是利用Elasticsearch提供的备份集群中索引数据的策略——snapshot API。在特定时间来备份当前集群的状态和数据,并保存到指定的快照仓库中。第一个快照会是一个数据的完整拷贝,但所有后续的快照保留的是已存快照和新数据之间的差异。
DistCp
DistCp(distributed copy)是一个用于在本集群HDFS中或不同集群HDFS间进行大量数据复制的工具。在HBase、HDFS、Elasticsearch或Hive元数据的备份恢复任务中,如果选择将数据备份在备集群HDFS中,系统将调用DistCp完成操作。主备集群请选择安装相同版本的FusionInsight MRS软件版本并安装集群系统。
DistCp使用Mapreduce来影响数据的分布、异常处理及恢复和报告,此工具会把指定列表中包含的多个源文件和目录输入不同的Map任务,每个Map任务将复制列表中指定文件对应分区的数据。
使用DistCp在两个集群的HDFS间进行数据复制,集群双方需要分别配置互信(同一个FusionInsight Manager管理下的集群不需要配置互信)和启用集群间拷贝功能。集群数据备份到另一个集群的HDFS时,需要安装Yarn组件,否则备份失败。
本地快速恢复
使用DistCp将本集群HBase、HDFS和Hive数据备份在备集群HDFS中以后,本集群HDFS保留了备份数据的快照。用户可以通过创建本地快速恢复任务,直接从本集群HDFS的快照文件中恢复数据。
NAS
NAS(Network Attached Storage)是一种特殊的专用数据存储服务器,包括存储器件和内嵌系统软件,可提供跨平台文件共享功能。利用NFS(支持NFSv3、NFSv4)和CIFS(支持SMBv2、SMBv3)协议,用户可以连通FusionInsight MRS的业务平面与NAS服务器,将数据备份至NAS或从NAS恢复数据。
说明:
- 数据备份至NAS前,系统会自动将NAS共享地址挂载为本地分区。在备份结束后,系统会卸载NAS共享分区。
- 为防止备份恢复失败,数据备份及恢复期间,请勿访问NAS服务器挂载至本地的共享地址,如:“/srv/BigData/LocalBackup/nas”。
- 业务数据备份至NAS时,会使用DistCp。
- 在EulerOS 2.1操作系统上,不支持使用NFS协议将数据备份至NAS或从NAS恢复数据。
- 点赞
- 收藏
- 关注作者
评论(0)