TWI711288B - Remote backup method - Google Patents

Remote backup method Download PDF

Info

Publication number
TWI711288B
TWI711288B TW108130697A TW108130697A TWI711288B TW I711288 B TWI711288 B TW I711288B TW 108130697 A TW108130697 A TW 108130697A TW 108130697 A TW108130697 A TW 108130697A TW I711288 B TWI711288 B TW I711288B
Authority
TW
Taiwan
Prior art keywords
backup
file
block storage
snapshot
remote
Prior art date
Application number
TW108130697A
Other languages
Chinese (zh)
Other versions
TW202110155A (en
Inventor
鄭廷軒
許順興
Original Assignee
中華電信股份有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 中華電信股份有限公司 filed Critical 中華電信股份有限公司
Priority to TW108130697A priority Critical patent/TWI711288B/en
Application granted granted Critical
Publication of TWI711288B publication Critical patent/TWI711288B/en
Publication of TW202110155A publication Critical patent/TW202110155A/en

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The disclosure provides a remote backup method, comprising: in response to a remote backup procedure corresponding to a block storage of a cloud service being triggered, obtaining metadata related to the block storage in a local database of the cloud service; determining whether the block storage has a backup history; in response to the block storage having no backup history, performing an incremental backup operation on the block storage to generate an incremental backup file; in response to the block storage having the backup history, performing a full backup operation on the block storage to generate a full backup file; compressing the incremental backup file or the full backup file into a compressed file, and sending the compressed file and the metadata to a remote backup storage space for remote backup.

Description

異地備份方法Remote backup method

本發明是有關於一種資料備份技術,且特別是有關於一種異地備份方法。The present invention relates to a data backup technology, and particularly relates to a remote backup method.

由於區塊儲存經常是GB(gigabyte)甚至是TB(terabyte)等級的大檔案,若是定期將雲儲存服務中所有客戶的區塊儲存完整備份至異地,不但會造成異地儲存空間占用。並且,由於跨機房的網路頻寬通常較小,因而難以在有限時間內將備份檔案有效地備份至異地。Since block storage is often large files of GB (gigabyte) or even TB (terabyte) level, if the block storage of all customers in the cloud storage service is regularly backed up to a remote location, it will not only occupy the storage space of the remote location. Moreover, because the network bandwidth across computer rooms is usually small, it is difficult to effectively back up the backup files to a remote location within a limited time.

有鑑於此,本發明提供一種異地備份方法,其可用以解決上述技術問題。In view of this, the present invention provides a remote backup method, which can be used to solve the above technical problems.

本發明提供一種異地備份方法,包括:反應於一雲服務中對應於一區塊儲存的一異地備份程序被觸發,在雲服務的一本地資料庫中取得關聯於區塊儲存的元資料;判斷區塊儲存是否具有一備份歷程;反應於區塊儲存具有備份歷程,對區塊儲存執行一增量備份操作,以產生一增量備份檔案;反應於區塊儲存不具有備份歷程,對區塊儲存執行一全量備份操作,以產生一全量備份檔案;將增量備份檔案或全量備份檔案匯出為區塊儲存的一備份檔案;將備份檔案壓縮為一壓縮檔案,並將壓縮檔案及元資料發送至一異地備份儲存空間以進行異地備份。The present invention provides an offsite backup method, including: responding to triggering of an offsite backup procedure corresponding to a block storage in a cloud service, obtaining metadata associated with the block storage in a local database of the cloud service; and determining; Whether the block storage has a backup history; reflecting that the block storage has a backup history, perform an incremental backup operation on the block storage to generate an incremental backup file; reflecting that the block storage does not have a backup history, the block storage Storage Perform a full backup operation to generate a full backup file; export incremental backup files or full backup files as a backup file stored in blocks; compress the backup file into a compressed file, and compress the file and metadata Send to a remote backup storage space for remote backup.

基於上述,本發明的方法能夠將雲儲存服務中的區塊儲存備份至異地儲存環境。並且,為了能夠預防雲服務因災難造成資料庫與相關元資料遺失,本發明的方法可將雲服務中重要的資料庫與元資料一同備份至異地備份儲存空間。此外,本發明在備份區塊儲存時採用增量備份(Incremental backup)技術,此技術可以先完成完整備份以後,如果資料有增刪,後續執行的備份可以只備份與上一次備份之差異。因此,本發明可大幅減少備份所需頻寬與備份時間,也能夠節省異地儲存服務的空間。Based on the above, the method of the present invention can back up the block storage in the cloud storage service to a remote storage environment. Moreover, in order to prevent the cloud service from losing the database and related metadata due to disasters, the method of the present invention can back up important database and metadata in the cloud service to a remote backup storage space. In addition, the present invention adopts incremental backup (Incremental backup) technology when storing the backup blocks. This technology can first complete the full backup and if data is added or deleted, the subsequent backup can only back up the difference from the previous backup. Therefore, the present invention can greatly reduce the bandwidth and backup time required for backup, and can also save the space for storing services in different places.

為讓本發明的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。In order to make the above-mentioned features and advantages of the present invention more comprehensible, the following specific embodiments are described in detail in conjunction with the accompanying drawings.

請參照圖1,其是依據本發明之一實施例繪示的異地備份系統示意圖。如圖1所示,系統10包括使用者介面模組400、異地備份服務模組500及異地備份儲存空間300。Please refer to FIG. 1, which is a schematic diagram of a remote backup system according to an embodiment of the present invention. As shown in FIG. 1, the system 10 includes a user interface module 400, a remote backup service module 500 and a remote backup storage space 300.

在圖1中,使用者介面模組400可包括備份資料管理模組410、備份設定模組420與備份還原觸發模組430。異地備份服務模組500可包括排程備份模組510、備份還原模組520、遠端掛載模組530、資料庫540及監控模組550。In FIG. 1, the user interface module 400 may include a backup data management module 410, a backup setting module 420 and a backup restore trigger module 430. The remote backup service module 500 may include a scheduled backup module 510, a backup restore module 520, a remote mount module 530, a database 540, and a monitoring module 550.

備份資料管理模組410可呈現所有已備份的元資料與區塊儲存備份資料歷程記錄,其中所述元資料來源是透過異地備份服務模組500中的元資料備份模組512所提供,而備份資料歷程記錄係取自於異地備份服務模組500中的資料庫540。The backup data management module 410 can present all the backed up metadata and block storage backup data history records, wherein the metadata source is provided by the metadata backup module 512 in the remote backup service module 500, and the backup The data history record is taken from the database 540 in the remote backup service module 500.

備份設定模組420可設定異地備份服務模組500中的設定檔501,而異地備份服務模組500中的所有模組都是參考此設定檔501執行。遠端掛載模組530可讀取設定檔501而自行掛載異地備份儲存空間300。The backup setting module 420 can set the configuration file 501 in the remote backup service module 500, and all modules in the remote backup service module 500 are executed with reference to this configuration file 501. The remote mount module 530 can read the configuration file 501 and mount the remote backup storage space 300 by itself.

排程備份模組510包括備份輪替模組511、元資料備份模組512、備份模組513及備份記錄模組514。排程備份模組510可根據設定檔501中的設定決定排程備份週期與備份時間點。並且,排程備份模組510還可控制備份模組513與元資料備份模組512執行備份。The schedule backup module 510 includes a backup rotation module 511, a metadata backup module 512, a backup module 513, and a backup recording module 514. The schedule backup module 510 can determine the schedule backup period and the backup time point according to the settings in the configuration file 501. In addition, the schedule backup module 510 can also control the backup module 513 and the metadata backup module 512 to perform backup.

在本發明的實施例中,排程備份模組510可週期性地執行本發明提出的異地備份機制,以下將作進一步說明。In the embodiment of the present invention, the scheduled backup module 510 can periodically execute the offsite backup mechanism proposed by the present invention, which will be further described below.

請參照圖2,其是依據本發明之一實施例繪示的異地備份方法流程圖。首先,在步驟S210中,反應於雲服務中對應於區塊儲存的異地備份程序被觸發,元資料備份模組512可在雲服務100的本地資料庫101中取得關聯於區塊儲存的元資料。在一實施例中,維運人員可於使用者介面模組400填寫備份服務設定,並點選開始備份,以觸發上述異地備份程序,但可不限於此。相應地,元資料備份模組512可開始進行元資料備份。具體而言,元資料備份模組512可將雲服務100的資料庫101中跟所述區塊儲存相關的元資料備份至遠端掛載模組530,但不限於此。在不同的實施例中,上述區塊儲存例如可對應於雲儲存服務200中的一台虛擬機器或一個磁碟,但可不限於此。Please refer to FIG. 2, which is a flowchart of a remote backup method according to an embodiment of the present invention. First, in step S210, in response to the offsite backup procedure corresponding to the block storage in the cloud service being triggered, the metadata backup module 512 can obtain the metadata associated with the block storage in the local database 101 of the cloud service 100 . In one embodiment, the maintenance personnel can fill in the backup service settings in the user interface module 400 and click Start backup to trigger the above remote backup procedure, but it is not limited to this. Correspondingly, the metadata backup module 512 can start to perform metadata backup. Specifically, the metadata backup module 512 can back up the metadata related to the block storage in the database 101 of the cloud service 100 to the remote mount module 530, but it is not limited to this. In different embodiments, the block storage described above may correspond to a virtual machine or a disk in the cloud storage service 200, but it may not be limited thereto.

在一實施例中,元資料可以關聯出此區塊儲存與虛擬主機之間的關聯。舉例而言,從元資料可以找到A虛擬主機的區塊儲存是B,那麼當備份的區塊儲存需要還原時,可以用此元資料將B區塊設備供裝出A規格的虛擬主機,但本發明可不限於此。In one embodiment, the metadata can be associated with the association between the block storage and the virtual host. For example, it can be found from the metadata that the block storage of virtual host A is B. When the backed-up block storage needs to be restored, this metadata can be used to install block B device into a virtual host of specification A, but The present invention may not be limited to this.

此外,在一些實施例中,雲服務100中可包括屬於不同客戶的多個區塊儲存,而排程備份模組510可對所有的區塊儲存皆執行相同的異地備份操作。在一實施例中,由於可能不是每個區塊儲存都有進行備份的必要,因此本發明還可設立黑名單機制,用以讓維運人員將某些不需進行備份的區塊儲存(例如,測試資料)加入黑名單中。如此一來,排程備份模組510即可不對屬於黑名單的區塊儲存進行本發明提出的異地備份機制,但可不限於此。基此,在一實施例中,在對應於區塊儲存的異地備份程序被觸發後,元資料備份模組512可先判斷上述區塊儲存是否屬於黑名單。若是,則排程備份模組510可停止進行上區塊儲存的異地備份程序,反之則可依據步驟S210取得關聯於上述區塊儲存的元資料,但可不限於此。In addition, in some embodiments, the cloud service 100 may include multiple block storages belonging to different customers, and the scheduled backup module 510 can perform the same offsite backup operation for all block storages. In one embodiment, since it may not be necessary for every block storage to be backed up, the present invention can also set up a blacklist mechanism to allow maintenance personnel to store certain blocks that do not need to be backed up (for example, , Test data) added to the blacklist. In this way, the schedule backup module 510 may not perform the offsite backup mechanism proposed by the present invention for the block storage belonging to the blacklist, but it is not limited to this. Based on this, in one embodiment, after the offsite backup procedure corresponding to the block storage is triggered, the metadata backup module 512 can first determine whether the block storage belongs to the blacklist. If so, the scheduled backup module 510 can stop performing the offsite backup process of the block storage, otherwise, it can obtain the metadata associated with the block storage according to step S210, but it is not limited to this.

為便於說明,以下將僅基於單一個區塊儲存進行說明,而本領域具通常知識者應可對應推得對其他區塊儲存所進行的操作。For the convenience of description, the following description will be based only on a single block storage, and a person with ordinary knowledge in the art should be able to deduce the operations performed on other block storage accordingly.

在一實施例中,在執行步驟S210之後,排程備份模組510可執行步驟S220至S260以對上述區塊儲存進行所述異地備份程序。具體而言,在步驟S220中,備份模組513可判斷上述區塊儲存是否具有備份歷程。在一實施例中,若上述區塊儲存先前曾經被備份過,即代表其具有備份歷程。相應地,異地備份儲存空間300中將儲存有一或多個歷史壓縮檔案。反之,若上述區塊儲存先前未被備份過,即代表其不具有備份歷程,但本發明可不限於此。In one embodiment, after step S210 is performed, the schedule backup module 510 can perform steps S220 to S260 to perform the offsite backup procedure for the block storage. Specifically, in step S220, the backup module 513 can determine whether the block storage has a backup history. In one embodiment, if the block storage has been backed up previously, it means that it has a backup history. Correspondingly, one or more historical compressed files will be stored in the remote backup storage space 300. On the contrary, if the block storage has not been backed up before, it means that it does not have a backup history, but the invention is not limited to this.

在一實施例中,若上述區塊儲存具有備份歷程,則在步驟S230中,備份模組513可對區塊儲存執行增量備份操作,以產生增量備份檔案。舉例而言,在執行增量備份操作時,若所考慮的區塊儲存係對應於虛擬機器,則備份模組513可對此虛擬機器進行快照操作,以擷取此虛擬機器當下的系統狀態作為一當下快照。之後,備份模組513可將此當下快照與一先前快照之間的差異資料匯出為上述增量備份檔案,但可不限於此。在一實施例中,上述先前快照例如是在前一次備份時所擷取的虛擬機器的系統狀態,故可概略地理解為上一次的當下快照,但本發明可不限於此。In one embodiment, if the block storage has a backup history, in step S230, the backup module 513 can perform an incremental backup operation on the block storage to generate an incremental backup file. For example, when performing an incremental backup operation, if the considered block storage corresponds to a virtual machine, the backup module 513 can perform a snapshot operation on this virtual machine to retrieve the current system state of the virtual machine as Take a snapshot right now. After that, the backup module 513 can export the difference data between the current snapshot and a previous snapshot as the aforementioned incremental backup file, but it is not limited to this. In one embodiment, the aforementioned previous snapshot is, for example, the system state of the virtual machine captured during the previous backup, so it can be roughly understood as the last current snapshot, but the invention is not limited to this.

在不同的實施例中,上述當下快照例如是崩潰一致性(crash-consistent)快照、檔案一致性(File System consistent)快照及應用程式一致性(Application consistent)快照的至少其中之一,但可不限於此。在一些實施例中,本發明可由客戶自行從上述三種快照方式中選擇所需的一者,以控制備份模組513採用客戶所選的方式來擷取快照。In different embodiments, the above-mentioned current snapshot is, for example, at least one of a crash-consistent snapshot, a file system consistent snapshot, and an application consistent snapshot, but may not be limited to this. In some embodiments, in the present invention, the customer can select one of the above three snapshot methods by himself, so as to control the backup module 513 to use the method selected by the customer to retrieve the snapshot.

具體而言,若當下快照屬於崩潰一致性快照,則當客戶的虛擬機器或彈性區塊儲存(elastic block store,EBS)正在對區塊儲存進行繁忙地I/O時進行快照時,其快照還原後檔案系統可能出現損毀的情況,因此,本發明還可基於檔案系統一致性與應用程式一致性的原則來產生當下快照。Specifically, if the current snapshot is a crash-consistent snapshot, the snapshot will be restored when the customer's virtual machine or elastic block store (EBS) is busy I/O to the block store. The later file system may be damaged. Therefore, the present invention can also generate the current snapshot based on the principles of file system consistency and application program consistency.

由於上述功能能夠在進行快照時透過客戶虛擬機器的客作業系統(guest operating system)下達凍結I/O(即,fsfreeze())的系統調用(system call)或是對虛擬機器中的應用程式下達暫停指令,因此不論虛擬機器的I/O多頻繁,都能夠確保備份資料是一致的,且因快照速度非常快,虛擬機器中的I/O暫停時間非常短,但本發明可不限於此。Because the above functions can issue system calls to freeze I/O (ie, fsfreeze()) through the guest operating system (guest operating system) of the guest virtual machine when taking a snapshot or issue a system call to the application in the virtual machine The suspend instruction can ensure that the backup data is consistent no matter how frequently the I/O of the virtual machine is. And because the snapshot speed is very fast, the I/O suspend time in the virtual machine is very short, but the present invention is not limited to this.

此外,在一實施例中,在產生上述當下快照之後,備份模組513還可進一步刪除前一次備份時所產生的當下快照(即,上述先前快照)。亦即,本發明可以此次產生的當下快照取代上一次產生的當下快照。In addition, in one embodiment, after the current snapshot is generated, the backup module 513 may further delete the current snapshot generated during the previous backup (ie, the previous snapshot). That is, the present invention can replace the current snapshot generated last time with the current snapshot generated this time.

相反地,在另一實施例中,若上述區塊儲存不具有備份歷程,則在步驟S240中,備份模組513可對區塊儲存執行全量備份操作,以產生全量備份檔案。在本實施例中,若上述區塊儲存不具有備份歷程,即代表不存在上述的先前快照。在此情況下,備份模組513可直接將所擷取的當下快照匯出為全量備份檔案。舉例而言,在執行全量備份操作時,若所考慮的區塊儲存係對應於虛擬機器,則備份模組513可對此虛擬機器進行快照操作,以擷取此虛擬機器當下的系統狀態作為當下快照。之後,備份模組513可將此當下快照與(不存在的)先前快照之間的差異資料匯出為上述全量備份檔案。由於先前快照不存在,因此上述差異資料即為當下快照本身,而備份模組513可直接將當下快照匯出為上述全量備份檔案,但本發明可不限於此。Conversely, in another embodiment, if the block storage does not have a backup history, then in step S240, the backup module 513 can perform a full backup operation on the block storage to generate a full backup file. In this embodiment, if the block storage does not have a backup history, it means that the previous snapshot does not exist. In this case, the backup module 513 can directly export the captured current snapshot as a full backup file. For example, when performing a full backup operation, if the considered block storage corresponds to a virtual machine, the backup module 513 can perform a snapshot operation on the virtual machine to retrieve the current system state of the virtual machine as the current Snapshot. After that, the backup module 513 can export the difference data between the current snapshot and the (non-existent) previous snapshot as the aforementioned full backup file. Since the previous snapshot does not exist, the aforementioned difference data is the current snapshot itself, and the backup module 513 can directly export the current snapshot as the aforementioned full backup file, but the invention is not limited to this.

在產生增量備份檔案或全量備份檔案之後,在步驟S250中,備份模組513可將增量備份檔案或全量備份檔案壓縮為壓縮檔案,並將壓縮檔案及元資料發送至異地備份儲存空間300以進行異地備份。After generating the incremental backup file or the full backup file, in step S250, the backup module 513 can compress the incremental backup file or the full backup file into a compressed file, and send the compressed file and metadata to the remote backup storage space 300 For remote backup.

在一實施例中,備份模組513可採用多進程方式將增量備份檔案或全量備份檔案壓縮為壓縮檔案。舉例而言,備份模組513可先將增量備份檔案或全量備份檔案區分為多份子壓縮檔案,再分別對這些子壓縮檔案進行壓縮,之後再合成為一個檔案以作為上述壓縮檔案,但本發明可不限於此。藉此,除了可加快壓縮速度,且區塊儲存的壓縮率平均約可達60%。如此一來,不但能減少備份區40%的儲存空間占用,也能提升備份速度與減少網路頻寬占用。In one embodiment, the backup module 513 can use a multi-process method to compress the incremental backup file or the full backup file into a compressed file. For example, the backup module 513 can first divide the incremental backup file or the full backup file into multiple sub-compressed files, and then compress these sub-compressed files separately, and then synthesize them into one file as the above-mentioned compressed file. The invention may not be limited to this. In this way, in addition to speeding up the compression speed, the average compression rate of block storage can reach about 60%. In this way, not only can it reduce 40% of the storage space in the backup area, but it can also increase the backup speed and reduce the network bandwidth usage.

在一實施例中,備份記錄模組514可將上述壓縮檔案的存放路徑、備份完成時數、備份時間點與快照名稱等記錄在資料庫540中。在此情況下,備份資料管理模組410可提供相應的使用者介面(其例如是RESTful應用程式介面,但不限於此)供使用者查詢資料庫540中的上述資料,但不限於此。In an embodiment, the backup recording module 514 may record the storage path of the compressed file, the time when the backup is completed, the backup time point, and the name of the snapshot, etc., in the database 540. In this case, the backup data management module 410 can provide a corresponding user interface (for example, but not limited to a RESTful application interface) for the user to query the above data in the database 540, but it is not limited thereto.

此外,在備份模組513將上述壓縮檔案及元資料儲存至異地備份儲存空間300,以完成異地備份程序之後,備份輪替模組511還可執行一輪替機制以調整異地備份儲存空間300中的儲存情形。具體而言,在一實施例中,隨著時間的演進,異地備份儲存空間300中可儲存有多個歷史壓縮檔案,而其可視為是備份模組513先前執行異地備份程序而儲存於異地備份儲存空間300中的先前壓縮檔案。In addition, after the backup module 513 stores the compressed files and metadata in the off-site backup storage space 300 to complete the off-site backup process, the backup rotation module 511 can also execute a rotation mechanism to adjust the off-site backup storage space 300 Storage situation. Specifically, in one embodiment, as time evolves, multiple historical compressed files can be stored in the remote backup storage space 300, which can be regarded as the backup module 513 previously performing the remote backup process and storing them in the remote backup. Previously compressed files in storage space 300.

在此情況下,在上述壓縮檔案及元資料被儲存至異地備份儲存空間300之後,備份輪替模組511可判斷上述歷史壓縮檔案與壓縮檔案的總數是否超過異地備份儲存空間300的檔案天數限制(其可由維運人員設定於設定檔501中)。在一實施例中,所述檔案天數限制例如是異地備份儲存空間300可保留多少天的檔案。因此,若上述歷史壓縮檔案與壓縮檔案的總數超過異地備份儲存空間300的檔案天數限制,則備份輪替模組511可將上述歷史壓縮檔案中的第1個歷史壓縮檔案(例如,最早的歷史壓縮檔案)與第2個歷史壓縮檔案(例如,第2早的歷史壓縮檔案)合併,以取代原本的第1個歷史壓縮檔案。在一實施例中,在執行上述合併操作之後,備份輪替模組511可再更新資料庫540,以將被合併的備份狀態改為已合併,如此維運人員從使用者介面就看不到此備份歷程,但可不限於此。In this case, after the compressed files and metadata are stored in the remote backup storage space 300, the backup rotation module 511 can determine whether the total number of the aforementioned historical compressed files and compressed files exceeds the file days limit of the remote backup storage space 300 (It can be set in the configuration file 501 by the maintenance personnel). In one embodiment, the file days limit is, for example, how many days of files can be kept in the remote backup storage space 300. Therefore, if the total number of the above-mentioned historical compressed files and compressed files exceeds the limit of 300 file days in the remote backup storage space, the backup rotation module 511 can remove the first historical compressed file (for example, the earliest historical compressed file) among the above-mentioned historical compressed files. Compressed file) and the second historical compressed file (for example, the second earliest historical compressed file) to replace the original first historical compressed file. In one embodiment, after performing the above merge operation, the backup rotation module 511 can update the database 540 to change the merged backup status to merged, so that the maintenance personnel will not see it from the user interface This backup process, but not limited to this.

在本實施例中,所述第1個歷史壓縮檔案可視為一全量備份檔案。在此情況下,可以減少異地備份儲存空間300的儲存空間占用,且當要執行備份還原時,因為檔案天數有所限制,還原時需合併的檔案數量不會超過輪替設定天數,因此還原速度也較快,且輪替機制能夠避免因檔案損毀造成無法還原的問題,因增量備份還原時需從第一個備份依序將所有增量備份檔案還原,所以當有數十個增量備份其中一個增量備份檔案損毀,該損毀的備份以及其之後的備份將無法正常還原。在一實施例中,上述輪替機制每天都會將檔案合併,合併時若出現檔案錯誤的訊息,則備份輪替模組511可發送警示訊息以通知維運人員處理。In this embodiment, the first historical compressed file can be regarded as a full backup file. In this case, the storage space occupied by the remote backup storage space 300 can be reduced, and when backup and restoration are to be performed, because the number of file days is limited, the number of files that need to be merged during restoration will not exceed the number of days set by the rotation, so the restoration speed It is also faster, and the rotation mechanism can avoid the problem of inability to restore due to file damage. Because incremental backups need to be restored from the first backup in order to restore all incremental backup files, when there are dozens of incremental backups One of the incremental backup files is damaged, and the damaged backup and subsequent backups cannot be restored normally. In one embodiment, the above-mentioned rotation mechanism merges files every day. If a file error message appears during the merge, the backup rotation module 511 may send a warning message to notify the maintenance personnel for processing.

在一實施例中,備份模組513可先將壓縮檔案及元資料儲存在異地備份儲存空間300的高速儲存池310(其例如是由固態硬碟建構的空間小且快速儲存池)中。藉此,可加快壓縮檔案及元資料的儲存速度。另外,在過了一段時間之後,高速儲存池310中的資料(例如,上述壓縮檔案及元資料)可再被移入異地備份儲存空間300的低速儲存池320(例如是由空間大且低成本的普通硬碟或磁帶建構的儲存池),但本發明可不限於此。In one embodiment, the backup module 513 may first store the compressed files and metadata in the high-speed storage pool 310 of the off-site backup storage space 300 (for example, a small-space and fast storage pool constructed by a solid state drive). In this way, the storage speed of compressed files and metadata can be accelerated. In addition, after a period of time, the data in the high-speed storage pool 310 (for example, the above-mentioned compressed files and metadata) can be moved to the low-speed storage pool 320 of the off-site backup storage space 300 (for example, from a large and low-cost storage pool). A storage pool constructed by ordinary hard disks or tapes), but the invention is not limited to this.

在一實施例中,另外,若某個區塊儲存無法進行快照、合併或是匯出的動作,代表此區塊儲存已有損毀情況,因此,本發明可將此區塊儲存加入黑名單中且發出告警,避免再次備份此區塊儲存。In one embodiment, in addition, if a block storage cannot be snapshot, merged, or exported, it means that the block storage has been damaged. Therefore, the present invention can add the block storage to the blacklist And send an alarm to avoid backing up this block storage again.

在一實施例中,維運人員能夠透過於備份資料管理模組410找到需要還原的備份資料,並透過備份還原觸發模組430選擇要將該備份資料還原給指定客戶中的指定專案。In one embodiment, the maintenance personnel can find the backup data that needs to be restored through the backup data management module 410, and use the backup restoration trigger module 430 to select the backup data to be restored to the specified project in the specified customer.

在一實施例中,備份還原模組520是由使用者介面模組400中的備份還原觸發模組430所觸發,以執行本發明的還原流程,其細節如下所示。In one embodiment, the backup restore module 520 is triggered by the backup restore trigger module 430 in the user interface module 400 to execute the restore process of the present invention. The details are as follows.

請參照圖3,其是依據本發明之一實施例繪示的還原區塊儲存的流程圖。在步驟S701中,維運人員可於使用者介面中選擇欲還原的區塊儲存及備份歷程。在步驟S702中,維運人員可在使用者介面中選擇指定客戶與專案。相應地,備份還原模組520可依據步驟S701及S702中的資訊在資料庫540中找到對應於欲還原的區塊儲存的多個歷史壓縮檔案存放的位置。Please refer to FIG. 3, which is a flowchart of restoring block storage according to an embodiment of the present invention. In step S701, the maintenance personnel can select the block storage and backup history to be restored in the user interface. In step S702, the maintenance personnel can select designated customers and projects in the user interface. Correspondingly, the backup restoration module 520 can find the storage locations of the multiple historical compressed files corresponding to the block to be restored in the database 540 according to the information in steps S701 and S702.

之後,在步驟S703中,備份還原模組520可將所需的歷史壓縮檔案解壓縮為多個待合併檔案。在一實施例中,若維運人員指定將區塊儲存還原至某個特定時間點,則備份還原模組520可將此特定時間點之間的歷史壓縮檔案皆解壓縮,以取得上述待合併檔案。並且,上述待合併檔案例如可包括一個全量備份以及多個增量備份。After that, in step S703, the backup and restoration module 520 can decompress the required historical compressed files into multiple files to be merged. In one embodiment, if the maintenance personnel designate to store and restore the block to a specific point in time, the backup and restore module 520 can decompress all the historical compressed files between this specific point in time to obtain the aforementioned pending merge file. In addition, the aforementioned files to be merged may include, for example, one full backup and multiple incremental backups.

接著,在步驟S704中,備份還原模組520可將上述待合併檔案合併為一還原檔案(其例如是一映像檔)。亦即,備份還原模組520可將上述全量備份及其他的增量備份合併為單一個檔案,即上述還原檔案。Then, in step S704, the backup and restoration module 520 can merge the above-mentioned files to be combined into a restoration file (for example, an image file). That is, the backup restoration module 520 can combine the aforementioned full backup and other incremental backups into a single file, that is, the aforementioned restoration file.

之後,在步驟S705中,備份還原模組520可將還原檔案納管至雲服務映像檔空間。舉例而言,備份還原模組520例如可透過OpenStack或是vCenter等虛擬化基礎建設管理(Virtualised Infrastructure Manager,vim)來納管上述還原檔案,但不限於此。在步驟S706中,備份還原模組520可將上述映像檔歸戶至指定客戶的專案。在步驟S707中,維運人員可通知客戶自行基於上述映像檔供裝服務,進而完成備份還原流程。After that, in step S705, the backup and restoration module 520 can manage the restoration file to the cloud service image file space. For example, the backup and restoration module 520 can manage the restoration files through a virtualized infrastructure management (Virtualised Infrastructure Manager, vim) such as OpenStack or vCenter, but is not limited to this. In step S706, the backup and restoration module 520 can assign the aforementioned image file to the project of the designated customer. In step S707, the maintenance personnel can notify the customer to provide the installation service based on the above image file by themselves, and then complete the backup and restoration process.

在一實施例中,監控模組550可監控異地備份服務模組500中的各模組運行狀況,如若是遠端掛載模組530掛載備份儲存空間300出現異常的話,或是備份模組513建立快照失敗,監控模組550即會透過雲服務100發出告警通知維運人員修復,但本發明可不限於此。In one embodiment, the monitoring module 550 can monitor the operating status of each module in the remote backup service module 500. If the remote mounting module 530 mounts the backup storage space 300 abnormally, or the backup module 513 If the snapshot creation fails, the monitoring module 550 will send an alarm through the cloud service 100 to notify the maintenance personnel to repair, but the present invention is not limited to this.

在一實施例中,雲服務100可由部署於多個實體伺服器上的多個微服務協同提供,且前述微服務可提供高可用性(high availability)的主動-主動(active-active)架構。在本發明的實施例中,上述微服務可協同執行本發明的異地備份程序。藉此,不但可以加快備份速度,且當一台實體伺服器意外暫停或故障時,另外一台實體伺服器中的微服務能接手處理故障這台正在處理的異地備份程序。In an embodiment, the cloud service 100 may be provided by multiple microservices deployed on multiple physical servers in coordination, and the aforementioned microservices may provide a high availability active-active architecture. In the embodiment of the present invention, the above-mentioned microservices can cooperate to execute the remote backup program of the present invention. This not only speeds up the backup speed, but also when one physical server unexpectedly suspends or fails, the microservices in the other physical server can take over the offsite backup process that is being processed.

在一實施例中,位於一台實體伺服器上的微服務可監控另一台實體伺服器的微服務有無異常狀態,藉以判定其他實體伺服器是否暫停或故障。具體而言,本發明的異地備份程序可具有由各微服務所共用的資料庫,其可存放所有實體伺服器的IP位置。在此情況下,各微服務可定期至此資料庫獲取所有實體伺服器的IP位置,再透過每個微服務提供檢查狀態的RESTful應用程式介面來獲取彼此的狀態訊息,但本發明可不限於此。In one embodiment, the microservice on one physical server can monitor whether the microservice of another physical server has abnormal status, so as to determine whether other physical servers are suspended or malfunctioning. Specifically, the remote backup program of the present invention can have a database shared by each microservice, which can store the IP locations of all physical servers. In this case, each microservice can periodically obtain the IP locations of all physical servers from this database, and then obtain each other's status information through the RESTful application program interface that each microservice provides to check the status, but the invention is not limited to this.

綜上所述,本發明的方法可定期以有效率的方式備份與管理用戶區塊儲存。各區塊儲存以增量備份與多進程壓縮的方式備份後,再移至異地儲存空間以減少網路頻寬與儲存空間占用。為減少備份資料空間占用與備份還原效率,本發明備份技術會輪替(rotate)備份資料,將過舊的備份資料合併,維持備份資料的數量。且於異地備份儲存空間以建構分層快取的架構加快異地機房存放資料的速度與減少大量資料儲存的成本。In summary, the method of the present invention can regularly back up and manage user block storage in an efficient manner. Each block of storage is backed up by incremental backup and multi-process compression, and then moved to a remote storage space to reduce network bandwidth and storage space usage. In order to reduce the space occupation of the backup data and the efficiency of backup restoration, the backup technology of the present invention rotates the backup data, merges the old backup data, and maintains the number of backup data. And in the remote backup storage space to construct a hierarchical cache structure to accelerate the speed of data storage in the remote computer room and reduce the cost of large amounts of data storage.

為了在災難發生後,能夠讓維運人員於新機房(例如異地機房)將客戶資料重建為對應的虛擬主機與磁碟,本發明會將雲服務中的元資料一同備份至異地備份儲存空間,藉此讓重建後的雲服務能夠透過元資料將虛擬機器與區塊儲存的進行關聯,並建回雲服務,且還原客戶的虛擬機器、磁碟,進而於異地機房持續提供服務。In order to allow maintenance personnel to rebuild customer data into corresponding virtual hosts and disks in a new computer room (such as a remote computer room) after a disaster, the present invention will back up the metadata in the cloud service to the remote backup storage space. In this way, the reconstructed cloud service can associate the virtual machine with the block storage through metadata, build back to the cloud service, and restore the customer's virtual machine and disk, and then continue to provide services in the remote computer room.

另外,本發明提供使用者介面模組,用以讓維運人員管理雲服務中所有區塊儲存的備份,維運人員能夠透過此介面瀏覽所有的備份中介資料與備份歷程,且可以選取特定備份歷程,以自動化方式還原指定備份檔案,此備份還原流程包含檔案解壓縮、檔案合併至指定備份歷程、檔案納管等皆以自動化方式還原,維運人員只需選擇指定備份檔案與歷程,並選擇指定用戶即可觸發自動還原功能。每次還原皆會記錄相關資訊,以免維運人員將資料還原給錯誤的使用者卻不記得還原給哪位用戶。In addition, the present invention provides a user interface module to allow maintenance personnel to manage the backups stored in all blocks in the cloud service. Maintenance personnel can browse all backup intermediate data and backup history through this interface, and can select specific backups Process, restore the specified backup file in an automated way. This backup restoration process includes file decompression, file merging to the specified backup process, file management, etc. All are restored in an automated manner. Maintenance personnel only need to select the specified backup file and process, and select Specify the user to trigger the automatic restore function. Relevant information will be recorded for each restoration, so as to prevent the maintenance personnel from restoring the data to the wrong user but not remembering which user to restore to.

雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明的精神和範圍內,當可作些許的更動與潤飾,故本發明的保護範圍當視後附的申請專利範圍所界定者為準。Although the present invention has been disclosed in the above embodiments, it is not intended to limit the present invention. Anyone with ordinary knowledge in the technical field can make some changes and modifications without departing from the spirit and scope of the present invention. The scope of protection of the present invention shall be determined by the scope of the attached patent application.

10:系統 100:雲服務 101:本地資料庫 200:雲儲存服務 300:異地備份儲存空間 310:高速儲存池 320:低速儲存池 400:使用者介面模組 410:備份資料管理模組 420:備份設定模組 430:備份還原觸發模組 500:異地備份服務模組 501:設定檔 510:排程備份模組 511:備份輪替模組 512:元資料備份模組 513:備份模組 514:備份記錄模組 520:備份還原模組 530:遠端掛載模組 540:資料庫 550:監控模組 S210~S250、S701~S707:步驟 10: System 100: cloud service 101: local database 200: Cloud storage service 300: Remote backup storage space 310: High-speed storage pool 320: Low-speed storage pool 400: User interface module 410: Backup data management module 420: Backup setting module 430: Backup and Restore Trigger Module 500: Remote backup service module 501: profile 510: Scheduled backup module 511: Backup Rotation Module 512: Metadata Backup Module 513: Backup Module 514: Backup record module 520: Backup and Restore Module 530: remote mount module 540: database 550: Monitoring module S210~S250, S701~S707: steps

圖1是依據本發明之一實施例繪示的異地備份系統示意圖。 圖2是依據本發明之一實施例繪示的異地備份方法流程圖。 圖3是依據本發明之一實施例繪示的還原區塊儲存的流程圖。 Fig. 1 is a schematic diagram of a remote backup system according to an embodiment of the present invention. Fig. 2 is a flowchart of a remote backup method according to an embodiment of the present invention. FIG. 3 is a flow chart of the restoration of block storage according to an embodiment of the present invention.

S210~S250:步驟 S210~S250: steps

Claims (9)

一種異地備份方法,包括:反應於一雲服務中對應於一區塊儲存的一異地備份程序被觸發,在該雲服務的一本地資料庫中取得關聯於該區塊儲存的元資料,其中該雲服務由部署於多個實體伺服器上的多個微服務協同提供,該些微服務提供一高可用性的主動-主動架構,其中該些微服務協同執行該異地備份程序,其中反應於該些實體伺服器的其中之一故障,位於該些實體伺服器的其中之另一的該些微服務接續執行該異地備份程序;判斷該區塊儲存是否具有一備份歷程;反應於該區塊儲存具有該備份歷程,對該區塊儲存執行一增量備份操作,以產生一增量備份檔案;反應於該區塊儲存不具有該備份歷程,對該區塊儲存執行一全量備份操作,以產生一全量備份檔案;將該增量備份檔案或該全量備份檔案壓縮為一壓縮檔案,並將該壓縮檔案及該元資料發送至一異地備份儲存空間以進行異地備份,其中將增量備份檔案或該全量備份檔案壓縮為該壓縮檔案的步驟包括:以多進程方式將增量備份檔案或該全量備份檔案壓縮為該壓縮檔案,其中該異地備份儲存空間儲存有多個歷史壓縮檔案,且該異地備份儲存空間具有一檔案天數限制,且所述方法更包括:反應於該異地備份儲存空間接收到該壓縮檔案,且該些歷 史壓縮檔案與該壓縮檔案的一總數超過該檔案天數限制,將該些歷史壓縮檔案中的第1個歷史壓縮檔案及第2個歷史壓縮檔案合併,以取代所述第1個歷史壓縮檔案。 An off-site backup method includes: responding to triggering of an off-site backup procedure corresponding to a block storage in a cloud service, obtaining metadata associated with the block storage in a local database of the cloud service, wherein the Cloud services are collaboratively provided by multiple microservices deployed on multiple physical servers. The microservices provide a high-availability active-active architecture. The microservices collaborate to execute the remote backup process, which is reflected in the physical servers If one of the physical servers fails, the microservices located in the other of the physical servers continue to execute the remote backup process; determine whether the block storage has a backup history; reflect that the block storage has the backup history , Perform an incremental backup operation on the block storage to generate an incremental backup file; reflect that the block storage does not have the backup history, perform a full backup operation on the block storage to generate a full backup file ; Compress the incremental backup file or the full backup file into a compressed file, and send the compressed file and the metadata to a remote backup storage space for remote backup, where the incremental backup file or the full backup file The step of compressing the compressed file includes: compressing the incremental backup file or the full backup file into the compressed file in a multi-process manner, wherein the remote backup storage space stores a plurality of historical compressed files, and the remote backup storage space has A file days limit, and the method further includes: reflecting that the compressed file is received in the remote backup storage space, and the calendars The total number of historical compressed files and the compressed file exceeds the limit of the number of days of the file, and the first historical compressed file and the second historical compressed file in the historical compressed files are merged to replace the first historical compressed file. 如申請專利範圍第1項所述的方法,其中該區塊儲存對應於單一個虛擬機器或單一個磁碟。 The method described in item 1 of the scope of patent application, wherein the block storage corresponds to a single virtual machine or a single disk. 如申請專利範圍第1項所述的方法,其中對該區塊儲存執行該增量備份操作,以產生該增量備份檔案的步驟包括:對該區塊儲存擷取一當下快照,並將該當下快照與一先前快照之間的差異資料匯出為該增量備份檔案,其中該先前快照包括於該備份歷程中。 For the method described in claim 1, wherein the step of performing the incremental backup operation on the block storage to generate the incremental backup file includes: taking a current snapshot of the block storage and storing the current snapshot The difference data between the next snapshot and a previous snapshot is exported as the incremental backup file, where the previous snapshot is included in the backup history. 如申請專利範圍第3項所述的方法,所述方法更包括刪除該先前快照。 Such as the method described in item 3 of the scope of patent application, the method further includes deleting the previous snapshot. 如申請專利範圍第3項所述的方法,其中該當下快照屬於崩潰一致性快照、檔案一致性快照及應用程式一致性快照的至少其中之一。 According to the method described in item 3 of the scope of patent application, the current snapshot is at least one of a crash-consistent snapshot, a file-consistent snapshot, and an application-consistent snapshot. 如申請專利範圍第1項所述的方法,其中對該區塊儲存執行該全量備份操作,以產生該全量備份檔案的步驟包括:對該區塊儲存擷取一當下快照,並將該當下快照匯出為該全量備份檔案。 For the method described in claim 1, wherein the step of performing the full backup operation on the block storage to generate the full backup file includes: taking a current snapshot of the block storage, and taking the current snapshot Export as the full backup file. 如申請專利範圍第1項所述的方法,其中反應於在所述第1個歷史壓縮檔案及所述第2個歷史壓縮檔案的一合併過程中出現錯誤,所述方法更包括發出一警示訊息。 The method described in item 1 of the scope of patent application, wherein it is reflected that an error occurred in a merging process of the first historical compressed file and the second historical compressed file, and the method further includes issuing a warning message . 如申請專利範圍第1項所述的方法,更包括:將該壓縮檔案的存放路徑、備份完成時數、備份時間點與快照名稱記錄於該本地資料庫,並據以提供一應用程式介面以供查詢。 For example, the method described in item 1 of the scope of patent application further includes: recording the storage path of the compressed file, the backup completion time, the backup time point and the snapshot name in the local database, and accordingly provide an application program interface to For inquiries. 如申請專利範圍第1項所述的方法,其中在對應於該區塊儲存的該異地備份程序被觸發之後,所述方法更包括:判斷該區塊儲存是否屬於一黑名單;反應於該區塊儲存屬於該黑名單,不執行該異地備份程序;反應於該區塊儲存不屬於該黑名單,在該雲服務的該本地資料庫中取得關聯於該區塊儲存的該元資料。 For example, the method described in item 1 of the scope of patent application, wherein after the offsite backup procedure corresponding to the block storage is triggered, the method further includes: determining whether the block storage belongs to a blacklist; Block storage belongs to the blacklist, and the offsite backup procedure is not executed; in response to the block storage does not belong to the blacklist, the metadata associated with the block storage is obtained from the local database of the cloud service.
TW108130697A 2019-08-27 2019-08-27 Remote backup method TWI711288B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW108130697A TWI711288B (en) 2019-08-27 2019-08-27 Remote backup method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW108130697A TWI711288B (en) 2019-08-27 2019-08-27 Remote backup method

Publications (2)

Publication Number Publication Date
TWI711288B true TWI711288B (en) 2020-11-21
TW202110155A TW202110155A (en) 2021-03-01

Family

ID=74202548

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108130697A TWI711288B (en) 2019-08-27 2019-08-27 Remote backup method

Country Status (1)

Country Link
TW (1) TWI711288B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI819916B (en) * 2022-12-07 2023-10-21 中華電信股份有限公司 Virtual machine in cloud service disaster recovery system and method based on distributed storage technology

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI474164B (en) * 2009-04-03 2015-02-21 Microsoft Corp Differential file and system restores from peers and the cloud
US20150112939A1 (en) * 2013-10-18 2015-04-23 Solidfire, Inc. Incremental block level backup
CN105068856A (en) * 2015-07-16 2015-11-18 武汉噢易云计算有限公司 Mirror image snapshooting based on virtual machine backup system and backup method
CN106407040A (en) * 2016-09-05 2017-02-15 华为技术有限公司 Remote data copy method and system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI474164B (en) * 2009-04-03 2015-02-21 Microsoft Corp Differential file and system restores from peers and the cloud
US20150112939A1 (en) * 2013-10-18 2015-04-23 Solidfire, Inc. Incremental block level backup
CN105068856A (en) * 2015-07-16 2015-11-18 武汉噢易云计算有限公司 Mirror image snapshooting based on virtual machine backup system and backup method
CN106407040A (en) * 2016-09-05 2017-02-15 华为技术有限公司 Remote data copy method and system

Also Published As

Publication number Publication date
TW202110155A (en) 2021-03-01

Similar Documents

Publication Publication Date Title
CN105389230B (en) A kind of continuous data protection system and method for combination snapping technique
US11397648B2 (en) Virtual machine recovery method and virtual machine management device
US7552358B1 (en) Efficient backup and restore using metadata mapping
US20170262345A1 (en) Backup, Archive and Disaster Recovery Solution with Distributed Storage over Multiple Clouds
JP6521462B2 (en) Improving backup system performance
US8046547B1 (en) Storage system snapshots for continuous file protection
CN100367224C (en) System and method for resynchronization of time after minimized backup of system and system failure
US7490103B2 (en) Method and system for backing up data
US20070208918A1 (en) Method and apparatus for providing virtual machine backup
US7979649B1 (en) Method and apparatus for implementing a storage lifecycle policy of a snapshot image
US20040093361A1 (en) Method and apparatus for storage system to provide distributed data storage and protection
US8219770B2 (en) Storage system and data management method
US20200110655A1 (en) Proactive data protection on predicted failures
US20120124285A1 (en) Virtual disk drive system and method with cloud-based storage media
JP2005250676A (en) Storage system and method for controlling it
JP2004287648A (en) External storage device and method for restoring data of the same external storage device and program
JP2006012121A (en) Data backup system and method
EP3108380A1 (en) Systems and methods for improving snapshot performance
US8285835B1 (en) Graphical analysis of states in a computing system
CN114518973B (en) Distributed cluster node downtime restarting recovery method
CN113885809B (en) Data management system and method
TWI711288B (en) Remote backup method
CN117992283A (en) Cloud host backup method and device, computer equipment and storage medium
US8782006B1 (en) Method and apparatus for file sharing between continuous and scheduled backups
US20210117390A1 (en) Snapshot management based on data churn delta