CN111240895A - 一种面向OpenStack的节点批量备份系统的方法 - Google Patents
一种面向OpenStack的节点批量备份系统的方法 Download PDFInfo
- Publication number
- CN111240895A CN111240895A CN201911420888.3A CN201911420888A CN111240895A CN 111240895 A CN111240895 A CN 111240895A CN 201911420888 A CN201911420888 A CN 201911420888A CN 111240895 A CN111240895 A CN 111240895A
- Authority
- CN
- China
- Prior art keywords
- backup
- batch
- node
- nodes
- bbk
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 36
- 238000012856 packing Methods 0.000 claims abstract description 7
- 238000005192 partition Methods 0.000 claims description 56
- 230000006835 compression Effects 0.000 abstract description 7
- 238000007906 compression Methods 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 5
- 108010028984 3-isopropylmalate dehydratase Proteins 0.000 description 3
- 239000003795 chemical substances by application Substances 0.000 description 3
- 238000004806 packaging method and process Methods 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000000446 fuel Substances 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1464—Management of the backup or restore process for networked environments
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种面向OpenStack的节点批量备份系统的方法,采用如下步骤:步骤一:将批量备份系统接入OpenStack管理网络,其中:批量备份系统以下简称为BBK;步骤二:在步骤一中的BBK指定一批要备份的节点,然后向这批节点发送备份指令;步骤三:各节点接收并执行备份指令;步骤四:BBK等待各节点发来的结束信号;步骤五:备份结束,或者,重复步骤二、步骤三、步骤四,备份下一批节点;它采用的备份方法和文件打包压缩格式squashfs,可缩短备份时间,节省备份文件占用的存储空间;且能实现的批量备份系统,通过NFS的使用,即实现了对一批节点同时进行备份操作的需求。
Description
【技术领域】
本发明涉及一种面向OpenStack的节点批量备份系统的方法。
【背景技术】
随着社会发展,互联网+时代来临,人们已进入智能时代。利用互联网作为纽带,采用智能终端(智能手机、平板、计算机等等)来实现互联。智能终端的使用,利用网络将社会形成一个网络社会,极大地方便了人们的工作生活。但是使用网络实现互联,需要服务器和安装在服务器的操作系统来作为支撑。但是当网络系统出现故障,需要对各节点的操作系统和服务重新部署,需要较长的时间,而且OpenStack控制节点和网络节点,组件众多,配置复杂,部署较为困难,导致工作效率低下。
传统的对操作系统进行备份,根据备份内容的不同,主要有以下两种方法:
方法一,全盘快照/克隆方式:该方法采用dd及类似方式对系统盘进行快照/克隆,可完整的保存操作系统及其上的应用文件,避免了重建分区表、文件系统、逻辑卷等麻烦,是一个有效的服务器备份方法。但是,该方法存在明显的缺点,如:备份时间耗时久(与系统盘大小成正比)、存储空间占用大(与系统盘大小成正比)。非常不适用于备份大批量的服务器(比如OpenStack集群)。
方法二,基于分区表和文件的备份方式:现有的方法主要是备份分区表信息和根分区文件,打包根分区文件的方法主流是tar,压缩方式主要是gzip;与方法1相比,该方法可以大大缩短备份时间,减少备份文件占用的存储空间。
传统的对操作系统进行备份,据备份文件存储的位置不同,又可分为以下几种方式:其一是:备份到磁盘的第二分区:该方法无法应对磁盘或者RAID卡损坏的情况;其二是:备份到外置可插拔移动存储设备:该方法需要人工亲临服务器,不适用于对大批量服务器进行操作和管理;其三是:备份到集中存储:集中存储有很多种类型,NAS(CIFS、NFS),iSCSI,对象存储等。
【发明内容】
本发明的目的在于针对现有技术的缺陷和不足,提供一种面向OpenStack的节点批量备份系统的方法。
本发明所述的一种面向OpenStack的节点批量备份系统的方法,采用如下步骤:
步骤一:将批量备份系统接入OpenStack管理网络,其中:批量备份系统以下简称为BBK;
步骤二:在步骤一中的BBK指定一批要备份的节点,然后向这批节点发送备份指令;
步骤三:各节点接收并执行备份指令;
步骤四:BBK等待各节点发来的结束信号;
步骤五:备份结束,或者,重复步骤二、步骤三、步骤四,备份下一批节点。
进一步地,步骤三中的各节点接收并执行备份指令,采用如下步骤:
(1)挂载NFS存储目录;
(2)将分区表、逻辑卷、UUID等元数据写入NFS;
(3)以squashfs格式将根分区的文件打包,并直接写入NFS;
(4)卸载NFS目录;
(5)向BBK发送结束信号。
本发明有益效果为:本发明所述的一种面向OpenStack的节点批量备份系统的方法,它采用的备份方法和文件打包压缩格式squashfs,可缩短备份时间,节省备份文件占用的存储空间;且能实现的批量备份系统,通过NFS的使用,即实现了对一批节点同时进行备份操作的需求。
【附图说明】
此处所说明的附图是用来提供对本发明的进一步理解,构成本申请的一部分,但并不构成对本发明的不当限定,在附图中:
图1为本发明的整体系统架构拓扑图;
图2为本发明的批量备份系统组成拓扑图;
图3是本发明中的系统盘分区组成及系统启动顺序拓扑图;
图4是图3的左部放大图;
图5是图3的中部放大图;
图6是图3的右部放大图。
【具体实施方式】
下面将结合附图以及具体实施例来详细说明本发明,其中的示意性实施例以及说明仅用来解释本发明,但并不作为对本发明的限定。
如图1-图2所示,本具体实施方式所述的一种面向OpenStack的节点批量备份系统的方法,采用如下步骤:
步骤一:将批量备份系统接入OpenStack管理网络,其中:批量备份系统以下简称为BBK;
步骤二:在步骤一中的BBK指定一批要备份的节点,然后向这批节点发送备份指令;
步骤三:各节点接收并执行备份指令,采用如下步骤:
(1)挂载NFS存储目录;
(2)将分区表、逻辑卷、UUID等元数据写入NFS;
(3)以squashfs格式将根分区的文件打包,并直接写入NFS;
(4)卸载NFS目录;
(5)向BBK发送结束信号;
步骤四:BBK等待各节点发来的结束信号;
步骤五:备份结束,或者,重复步骤二、步骤三、步骤四,备份下一批节点。
本发明面向OpenStack云计算集群,可对OpenStack集群中的节点进行批量备份,通过使用备份的文件,在节点发生因磁盘损坏等原因造成数据丢失的情况时,完整复原节点上的操作系统及应用文件。本发明中的批量备份方法也适用于通过其他方式部署出来的OpenStack集群。本发明中,一个典型的OpenStack集群包含大量的节点,每个节点是一台物理服务器,上面安装了操作系统和对应的OpenStack服务组件。本发明中,对操作系统进行备份,是应对系统故障的有效手段。
本发明中,采用的打包和压缩格式为:squashfs;squashfs是一种常用于嵌入式设备的压缩只读文件系统。一方面,它可以将整个文件系统压缩在一起,存放在一个普通的文件中;采用的squashfs格式,压缩比率高,而且在压缩打包时默认采用多线程,速度快;在提取恢复时,文件读取灵活。另一方面,本发明中涉及的分区表及文件系统UUID等元数据,要备份哪些必要信息和文件,建立在本文对操作系统启动原理的分析基础之上。
本发明的集中存储采用的是NFS,可以带来以下优点:a.节点可通过网络直接将NFS存储挂载到本地目录,打包压缩的根分区文件,直接写入NFS目录,而不必将本地磁盘作为跳板;b.NFS存储目录可同时挂载给多个节点,满足批量备份需求。
本发明的工作原理如下:
如图1所示为本发明的整体系统架构拓扑图。其主要包含两部分:
a.OpenStack集群(需要备份的节点);b.批量备份系统(简称:BBK);
本发明的网络架构说明,在典型的OpenStack集群中,包含三种类型的网络:
(1)带外网络(IPMI),
(2)管理网络(PXE/Admin),
(3)OpenStack业务网络(还可细分为管理组件通信网络、存储网络、虚拟机业务网络等)。
本发明的图1中画出了系统工作必要的管理网络(PXE/Admin);图中BBK也连接了OpenStack的带外网络,只在系统恢复时使用。
如图2所示为本发明的批量备份系统组成拓扑图;批量备份系统主要包含四部分:备份控制台、NFS存储、配置控制台、结束信号接收代理。
(1)备份控制台:用于指定需要备份的节点,并发出批量备份指令;
(2)NFS存储:为节点提供共享的备份文件存储空间;
(3)配置控制台:配置节点免密SSH密钥,配置具体执行的备份指令,配置NFS地址和目录;
(4)结束信号接收代理:各个节点备份结束后,将结束标识码(0:备份结束,1:备份失败)发送给BBK节点,由该代理接收;
本发明将NFS存储封装在了BBK中,如果对批量备份性能要求比较高,也可由专业存储提供NFS功能(只需要接入管理网络)。
本发明中的批量备份系统,采用如下步骤:
(1)在虚拟机或者物理机上部署批量备份系统(以下简称:BBK),要求接入OpenStack的管理网络,并为BBK配置访问所有OpenStack节点的SSH密钥。
(2)在BBK上选定需要备份的一批节点(IP),然后同时向这批节点发送备份指令;
(3)各节点接收并执行相应的指令,完成以下操作:
a)挂载NFS存储,并创建备份目录(比如:/nfs/node-1);
b)将分区表、逻辑卷、UUID等元数据写入备份目录;
c)以squashfs格式将根分区的文件打包,并直接写入备份目录(比如:/nfs/node-1/rootfs.squashfs);
d)卸载NFS目录;
e)向BBK发送结束信号;
(4)BBK等待这批节点发来的结束信号(与步骤3并行);
(5)备份结束,或者,重复步骤2、3、4备份下一批节点。
如图3-图6所示,本发明以具体实施例来进一步说明,并具体陈述备份和恢复原理。
本发明以一个典型的OpenStack节点为例,分析节点的系统盘分区和文件系统等,解释操作系统的启动原理,以此来说明,需要备份哪些文件,才能对节点的系统进行完整恢复。
本发明选取了一个复杂的示例(使用Mirantis OpenStack部署工具Fuel部署),其他的情况相对要简单(比如,没使用逻辑卷,不包含独立的boot分区等等),原理是相通的。
示例节点的服务器启动方式为BIOS,分区表格式为GPT,操作系统引导方式为GRUB2,拥有独立的boot分区,根分区构建在逻辑卷之上,如图3所示,图3是本发明中的系统盘分区组成及系统启动顺序(示例节点)拓扑图。
首先,系统盘上的分区及其作用如下:
(1)开头和结尾。该系统盘采用的是GPT格式的分区表,根据GPT规范,将分区表的主要数据存在磁盘的开头,同时在磁盘的末端也存储一份备用的磁盘分区表;为了兼容MBR格式,便于BIOS引导,在GPT分区表的最开始512字节仍然保留,作为PMBR,保存主引导代码;
(2)第一个分区:BIOS启动分区。占用空间24MB,有效数据31KB,以原生二进制代码的形式保存一些必要的驱动;
(3)第二、五分区:未使用;
(4)第三个分区:作为独立的boot分区,文件系统为ext2格式,保存Linux操作系统内核vmlinuz和image;
(5)第四个分区:作为物理卷,属于卷组(os),卷组上面创建了两个逻辑卷(root和swap);逻辑卷root就是根分区,文件系统为ext4格式。
其次,操作系统启动顺序。
(1)服务器从BIOS启动;
(2)BIOS自检程序执行完毕之后,跳转到启动盘(sda,也是系统盘);
(3)首先执行的是系统盘GPT/PMBR上的主引导代码;
(4)然后执行BIOS启动分区上的原生代码,加载文件系统驱动(图-3-(2));
(5)紧接着加载执行boot分区的内核文件;
(6)最后加载根分区文件系统;
要想恢复操作系统,需要备份系统启动路径上的所有文件,通过上面的分析可总结到,需要备份的信息和文件如下:
(1)GPT分区表;
(2)BIOS启动分区数据(有效数据31KB);
(3)boot分区中的文件和文件系统UUID;
(4)逻辑卷元数据(物理卷、逻辑卷、卷组信息);
(5)根分区中的文件和文件系统UUID;
最后,文件保存方式:
(1)boot分区和根分区中的文件以squashfs格式打包保存;
(2)BIOS分区中的数据,以dd方式克隆到文件(1MB,大于31KB即可);
(3)其他信息保存在文本文件中。
本发明的一种节点系统的恢复方法如下:
(1)在批量备份系统(以下简称:BBK)节点上部署:ipmitool工具、dhcp服务和tftp服务;
(2)在BBK节点通过带外网络,发送IPMI控制命令,控制目标节点服务器从PXE重新启动;
(3)目标节点利用dhcp和tftp服务,获取和加载定制微系统;
(4)定制微系统启动iscsi服务,把目标节点的系统磁盘发布出去;
(5)BBK节点启动iscsi发现服务,找到目标磁盘;
(6)BBK节点对目标磁盘执行以下操作:
(a)恢复分区表;
(b)恢复BIOS启动分区的数据;
(c)如果是独立的boot分区,执行该步骤:在boot分区创建文件系统,并恢复原来的UUID,还原分区文件;
(d)如果根分区建立在逻辑卷之上,执行该步骤:恢复PV,恢复VG,恢复LV,激活VG和LV,找到根分区;
(e)在根分区创建文件系统,并恢复原来的UUID;
(f)以squashfs格式挂载已备份的节点根分区文件(比如:/nfs/node-1/rootfs.squashfs),拷贝所有内容到目标磁盘的根分区文件系统上(cp命令,使用rfp参数,保留文件的属性信息);
(7)系统恢复完毕,BBK通过带外网络,向目标节点发送IPMI控制指令,控制目标节点服务器从磁盘启动。
本发明所述的一种面向OpenStack的节点批量备份系统的方法,它采用的备份方法和文件打包压缩格式squashfs,可缩短备份时间,节省备份文件占用的存储空间;且能实现的批量备份系统,通过NFS的使用,即实现了对一批节点同时进行备份操作的需求。
以上所述仅是本发明的较佳实施方式,故凡依本发明专利申请范围所述特征及原理所做的等效变化或修饰,均包括于本发明专利申请范围内。
Claims (2)
1.一种面向OpenStack的节点批量备份系统的方法,其特征在于:采用如下步骤:
步骤一:将批量备份系统接入OpenStack管理网络,其中:批量备份系统以下简称为BBK;
步骤二:在步骤一中的BBK指定一批要备份的节点,然后向这批节点发送备份指令;
步骤三:各节点接收并执行备份指令;
步骤四:BBK等待各节点发来的结束信号;
步骤五:备份结束,或者,重复步骤二、步骤三、步骤四,备份下一批节点。
2.根据权利要求1所述的一种面向OpenStack的节点批量备份系统的方法,其特征在于:步骤三中的各节点接收并执行备份指令,采用如下步骤:
(1)挂载NFS存储目录;
(2)将分区表、逻辑卷、UUID等元数据写入NFS;
(3)以squashfs格式将根分区的文件打包,并直接写入NFS;
(4)卸载NFS目录;
(5)向BBK发送结束信号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911420888.3A CN111240895A (zh) | 2019-12-31 | 2019-12-31 | 一种面向OpenStack的节点批量备份系统的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911420888.3A CN111240895A (zh) | 2019-12-31 | 2019-12-31 | 一种面向OpenStack的节点批量备份系统的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111240895A true CN111240895A (zh) | 2020-06-05 |
Family
ID=70874163
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911420888.3A Pending CN111240895A (zh) | 2019-12-31 | 2019-12-31 | 一种面向OpenStack的节点批量备份系统的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111240895A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112698990A (zh) * | 2021-01-04 | 2021-04-23 | 浪潮云信息技术股份公司 | 一种备份数据时在线删除重复数据的方法 |
CN114296980A (zh) * | 2021-12-28 | 2022-04-08 | 厦门市美亚柏科信息股份有限公司 | 一种基于受损squashfs文件系统识别检测与提取的方法和系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160162210A1 (en) * | 2014-12-09 | 2016-06-09 | Bdt Media Automation Gmbh | Openstack swift interface for tape library (ossitl) |
US20170103000A1 (en) * | 2015-10-07 | 2017-04-13 | International Business Machines Corporation | Backup capability for object store used as primary storage |
CN106789198A (zh) * | 2016-12-07 | 2017-05-31 | 高新兴科技集团股份有限公司 | 一种计算节点管理方法及系统 |
CN109634716A (zh) * | 2018-12-04 | 2019-04-16 | 武汉烽火信息集成技术有限公司 | 防脑裂的OpenStack虚拟机高可用管理端装置及管理方法 |
CN109885262A (zh) * | 2019-02-27 | 2019-06-14 | 苏州浪潮智能科技有限公司 | 一种icos5.5-ldap与as-13000存储多节点非融合部署方法 |
US20190384495A1 (en) * | 2018-06-19 | 2019-12-19 | Trilio Data, Inc. | Object Store Backup Method and System |
-
2019
- 2019-12-31 CN CN201911420888.3A patent/CN111240895A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160162210A1 (en) * | 2014-12-09 | 2016-06-09 | Bdt Media Automation Gmbh | Openstack swift interface for tape library (ossitl) |
US20170103000A1 (en) * | 2015-10-07 | 2017-04-13 | International Business Machines Corporation | Backup capability for object store used as primary storage |
CN106789198A (zh) * | 2016-12-07 | 2017-05-31 | 高新兴科技集团股份有限公司 | 一种计算节点管理方法及系统 |
US20190384495A1 (en) * | 2018-06-19 | 2019-12-19 | Trilio Data, Inc. | Object Store Backup Method and System |
CN109634716A (zh) * | 2018-12-04 | 2019-04-16 | 武汉烽火信息集成技术有限公司 | 防脑裂的OpenStack虚拟机高可用管理端装置及管理方法 |
CN109885262A (zh) * | 2019-02-27 | 2019-06-14 | 苏州浪潮智能科技有限公司 | 一种icos5.5-ldap与as-13000存储多节点非融合部署方法 |
Non-Patent Citations (1)
Title |
---|
王晓凤: "备份恢复RedHat7.2 操作系统", 《网络安全信息化》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112698990A (zh) * | 2021-01-04 | 2021-04-23 | 浪潮云信息技术股份公司 | 一种备份数据时在线删除重复数据的方法 |
CN114296980A (zh) * | 2021-12-28 | 2022-04-08 | 厦门市美亚柏科信息股份有限公司 | 一种基于受损squashfs文件系统识别检测与提取的方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8949188B2 (en) | Efficient backup and restore of a cluster aware virtual input/output server (VIOS) within a VIOS cluster | |
US8533164B2 (en) | Method and tool to overcome VIOS configuration validation and restoration failure due to DRC name mismatch | |
CN111338854B (zh) | 基于Kubernetes集群快速恢复数据的方法及系统 | |
US9031917B2 (en) | Efficient backup and restore of virtual input/output server (VIOS) cluster | |
US11397648B2 (en) | Virtual machine recovery method and virtual machine management device | |
US9250824B2 (en) | Backing up method, device, and system for virtual machine | |
CN102576322B (zh) | Nas设备上虚拟磁盘镜像文件的代理备份 | |
KR101591550B1 (ko) | 가상 디스크를 포함하는 컴퓨터의 복구 | |
WO2017049828A1 (zh) | 基于Linux的数据处理方法、装置和系统 | |
US20060288168A1 (en) | Transportable computing environment | |
CN104216801B (zh) | 一种面向虚拟化环境的数据复制方法及系统 | |
US20050228950A1 (en) | External encapsulation of a volume into a LUN to allow booting and installation on a complex volume | |
CN105446826A (zh) | 虚拟机备份、恢复的方法及设备 | |
JP2016519381A (ja) | クラウドアプリケーションの冗長化のための方法、システム、および装置 | |
WO2017045491A1 (zh) | 一种对 sqlite3 型嵌入式数据库进行升级的方法及系统 | |
CN111258666A (zh) | 计算机文件的读取方法、装置、计算机系统及存储介质 | |
CN111240895A (zh) | 一种面向OpenStack的节点批量备份系统的方法 | |
CN115098299A (zh) | 一种虚拟机的备份方法、容灾方法、装置及设备 | |
CN113886143A (zh) | 虚拟机持续数据保护方法、装置及数据恢复方法、装置 | |
CN114564339A (zh) | 一种磁盘镜像文件跨平台迁移方法及系统 | |
CN116185720A (zh) | 基于vSAN超融合虚拟化平台的虚拟机备份及恢复的方法 | |
CN110780889A (zh) | 一种云手机数据克隆方法及云手机数据还原方法 | |
WO2017054643A1 (zh) | 一种数据抢救方法及文件服务器 | |
WO2023092430A1 (zh) | 一种虚拟机初始化方法、装置、终端设备及存储介质 | |
CN112148532A (zh) | 硬盘数据的批量恢复方法、装置、存储介质及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200605 |