套用至 SUSE Linux Enterprise High Availability Extension 12

19 使用 Rear (Relax-and-Recover) 進行災難備援

Relax-and-Recover (以前稱為 ReaR,本章中縮寫為 Rear) 是一套用來建立災難備援影像的管理員工具組。災難備援資訊可儲存於網路上,也可本地儲存於硬碟、USB 裝置、DVD/CD-R、磁帶或類似媒體上。備份資料儲存在網路檔案系統 (NFS) 中。

請注意,必須在災難發生之前對 Rear 進行設定與測試。如果災難已經發生,使用 Rear 也於事無補。

警告
警告:需要大量測試

每次建立災難備援媒體時,請一律使用相同的測試機器來測試災難備援,這一點至關重要。僅當此程序的執行結果令人滿意時,才表明災難備援系統的設定適當且可靠。

19.1 概念綜覽

Rear 支援多種備份工具 (Tivoli Storage Manager、QNetix Galaxy、Symantec NetBackup、EMC NetWorker、HP DataProtector),而且可以將其復原媒體輸出至 CD 或 PXE 環境。還原步驟可透過 NFS、CIFS 或其他網路檔案系統來執行。

若要使用 Rear,您至少需要兩個相同的系統:用來儲存線上環境的主要機器,以及測試機器。這裡所指的相同,舉例而言就是使用相同核心驅動程式的網路卡,可以用其中一個來取代另一個。如果某個硬體元件使用不同的驅動程式,則 Rear 不會將其視為相同系統。

SUSE Linux Enterprise Server 在 rear版本套件中隨附了一個災難備援系統。

Rear 的用法如下:

  1. 準備.  建立可開機的 CD 備份系統。

  2. 測試. 在發生災難之前,對復原程序進行徹底的測試,並測試與主系統相同的硬體上所儲存的備份!

  3. 復原.  從復原媒體開機並從備份還原系統。

為了準備救援媒體,Rear 將會執行下列步驟:

Rear 準備復原媒體
  1. 從目標系統收集系統資訊。

  2. 儲存磁碟配置 (磁碟分割、檔案系統、LVM、RAID 和開機載入程式)。

  3. 複製系統 (核心驅動程式與模組、裝置驅動程式組態、網路組態、系統軟體與工具)。

  4. 備份系統與使用者資料。

  5. 建立包含系統組態的可開機復原媒體。

災難發生後,復原程序會執行以下動作:

復原程序
  1. 從復原媒體開機。

  2. 還原磁碟配置 (磁碟分割區、RAID 組態、LVM、檔案系統)。

  3. 還原系統與使用者資料。

  4. 還原開機載入程式。

  5. 重新啟動系統。

注意
注意:Rear 與 Btrfs 檔案系統中的子磁碟區和快照

您應該瞭解,由於技術和概念方面的問題,Rear 和 Btrfs 工具存在一些限制:

  • 包含子磁碟區但不含快照的 Btrfs. 至少需要使用 Rear 1.15 版本,因為此版本支援還原 Btrfs 子磁碟區結構。可以備份和還原資料。

  • 包含子磁碟區和快照的 Btrfs. 無法對快照中的資料執行一般的備份和還原。普通的備份工具 (例如 tar) 無法將資料與 Btrfs 快照結構區分開。解決方式之一是排除 Btrfs 快照中的資料,並將此資料與一般資料分開儲存。

19.2 為最糟的情況做好準備:災難備援計劃

在最糟的情況發生之前,應準備好災難備援計劃。災難備援計劃是一份收集了所有風險、基礎結構與預算的文件。您可能已經制定了的計劃,但仍可以瀏覽以下一般綜覽:

  • 風險分析.  對您的基礎結構進行一次全面的風險分析。列出所有可能存在的威脅並評估其嚴重性。判斷這些威脅發生的可能性,並對它們排列優先順序。建議進行一個簡單的分類:可能性與影響。

  • 預算規劃.  分析的結果會是一個綜覽,告訴您哪些風險可以承受,哪些風險對企業影響很大。問問自己,怎樣才能將風險將至最低、這要付出多大的代價。根據公司的規模大小,將整個 IT 預算的 2% 到 50% 花費在災難備援上。

  • 災難備援計劃開發.  製作檢查清單、測試程序、建立並指定優先順序,以及清查 IT 基礎結構。定義當基礎結構中有服務失敗時,要如何處理問題。

  • 測試.  定義完一份詳細的計劃後,需對其進行測試。一年至少測試一次。所使用的測試硬體應與主要 IT 基礎結構相同。

19.3 設定 Rear

若要設定 Rear,請將您的選項新增至組態檔案 /etc/rear/local.conf 中。以前的檔案 /etc/rear/sites.conf 已從套件中移除。如果您上次設定時新增了這樣一個檔案,Rear 將會繼續使用該檔案。

定義輸出方法,為此,請使用 OUTPUT 變數。例如,若要將復原媒體輸出為 ISO 影像,請使用:

OUTPUT=ISO

變更組態檔案後,請執行以下指令來確定所有設定均正確:

rear dump

檢查輸出並查看有無任何錯誤。

如需詳細資訊,請參閱 Rear 的 man 頁面 (man rear)。

19.4 在 NFS 伺服器上儲存備份

Rear 可以在多種不同的情況下使用。以下範例使用 NFS 伺服器做為備份儲存:

過程 19.1 在 NFS 伺服器上儲存備份
  1. 依照《SUSE Linux Enterprise Server 12 管理指南》的「使用 NFS 共享檔案系統」一章所述,使用 YaST 設定 NFS 伺服器。此文件位於 http://www.suse.com/documentation/

  2. 確定 /etc/exports 檔案中包含 NFS 伺服器的正確組態:

    /srv/nfs    *(fsid=0,crossmnt,rw,no_root_squash,sync,no_subtree_check)
  3. 調整組態檔案 /etc/rear/local.conf。請以自己的適當值取代 NETFS_URL

    如果您的 NFS 主機並非 IP 位址,而是主機名稱,則在還原備份時,DNS 必須處於運作狀態。其他選項在 http://rear.github.com/documentation/ 上文件的「各種設定」一節中有介紹。

    # Create rear rescue media as ISO image:
    OUTPUT=ISO
    # Store the backup file via NFS on an NFS server:
    BACKUP=NETFS
    # BACKUP_OPTIONS variable contains the NFS mount options and
    # with 'mount -o nolock' no rpc.statd (plus rpcbind) are needed:
    BACKUP_OPTIONS="nfsvers=3,nolock"
    # If the NFS server is not an IP address but a hostname,
    # DNS must work in the rear recovery system when the backup is restored.
    BACKUP_URL=nfs://192.168.1.1/nfs/rear/
    # Keep an older copy of the backup in a HOSTNAME.old directory
    # provided there is no '.lockfile' in the HOSTNAME directory:
    NETFS_KEEP_OLD_BACKUP_COPY=yes
    # Files in btrfs subvolumes are excluded by 'tar --one-file-system'
    # so that such files must be explictly included to be in the backup.
    # Files in the following SLE12 default btrfs subvolumes are
    # in the below example not included to be in the backup
    #   /.snapshots/*  /var/tmp/*  /tmp/*  /var/crash/*
    # but files in /home/* are included to be in the backup
    # (one line!):
    BACKUP_PROG_INCLUDE=( '/home/*' '/var/spool/*' '/var/opt/*' '/var/log/*' 
      '/var/lib/pgsql/*' '/var/lib/mailman/*' '/var/lib/named/*' '/usr/local/*' 
      '/srv/*' '/boot/grub2/x86_64-efi/*' '/opt/*' '/boot/grub2/i386-pc/*' )
    # Avoid that "rear recover" is 'Creating btrfs-filesystem' by default
    # also for every mounted btrfs subvolume by excluding the mountpoints
    # of the mounted btrfs subvolumes from component recreation
    # see /usr/share/doc/packages/rear/user-guide/06-layout-configuration.txt
    # and /usr/share/rear/conf/default.conf
    # When /home is a separated filesystem remove "fs:/home" from the list below
    # (one line!):
    EXCLUDE_RECREATE=( "${EXCLUDE_RECREATE[@]}" "fs:/home" "fs:/.snapshots" 
       "fs:/var/tmp" "fs:/var/spool" "fs:/var/opt" "fs:/var/log" 
       "fs:/var/lib/pgsql" "fs:/var/lib/mailman" "fs:/var/lib/named" 
       "fs:/usr/local" "fs:/tmp" "fs:/srv" "fs:/var/crash" 
       "fs:/boot/grub2/x86_64-efi" "fs:/opt" "fs:/boot/grub2/i386-pc" )
    # This option defines a root password to allow SSH connection
    # without a public/private key pair
    #SSH_ROOT_PASSWORD="password_on_the_rear_recovery_system"
  4. 執行以下指令來準備備份:

    rear -v mkbackup

若要在測試機器上執行災難備援,請繼續執行以下操作:

過程 19.2 在測試機器上執行災難備援
  1. 找到以 /var/lib/rear/output/rear-主機名稱.iso 名稱儲存的復原 ISO 影像,並將其燒錄至 CD。

  2. 使用復原 CD 將測試機器開機。

  3. 從功能表選項中選取復原名稱並按 Enter

  4. root 的身分登入 (不需要密碼)。

  5. 輸入 rear recover 以啟動復原程序。復原程序會安裝並設定機器,並從您的 NFS 伺服器擷取備份資料。

此程序完成後,請確定測試機器的設定正確,並且可以取代您的主要機器。按常規測試此程序,以確保一切如預期運作。保留復原 CD 的副本,以防媒體損毀。

若要將 EMC Networker 用做備份工具,請使用以下組態檔案 (相應地變更 BACKUP_URL):

BACKUP=NSR
OUTPUT=ISO
BACKUP_URL=nfs://dd990.example.com/data/col1/rear/backup
OUTPUT_URL=nfs://dd990.example.com/data/col1/rear/output
NSRSERVER=backupserver.example.com
RETENTION_TIME="Month"

19.5 使用 YaST Rear 模組

YaST Rear 模組可用於進行基本設定。Rear 可將復原影像及資料儲存在 NFS 後端或隨身碟中。不過,YaST Rear 模組不支援從災難中復原。從災難中復原需要一定的專業技術,必須由管理員手動執行。

若要開始進行基本設定,請執行下列步驟:

  1. 指定以何種方式啟動復原系統。如果要從隨身碟開機,請選擇 USB;要從 CD-ROM 開機,請選擇 ISO

  2. 指定應將備份儲存在何處。選取NFSUSB

    • 如果您需要使用一部伺服器來提供網路檔案系統,請選取 NFS。請以 nfs://hostname/directory 格式指定位置。

    • 如果您要將資料儲存在 USB 隨身碟中,請選取USB。如果未顯示任何 USB 裝置,請連接隨身碟或 USB 磁碟,然後按一下重新掃描 USB 裝置

  3. 如果您要儲存以前的備份副本,請選中保留舊備份

  4. 如果您要新增其他也應包含在備份中的目錄,請使用進階功能表並選取備份中的其他目錄

  5. 如果您的救援系統因為缺少核心模組而無法開機,請使用進階功能表,選取救援系統中的其他核心模組,然後將相應的核心模組新增至為救援系統新增之模組的清單中。

  6. 按一下立即儲存並執行 ReaR按鈕以啟動備份程序。

當 YaST Rear 模組完成備份之後,測試您的備份,以確定它依預期運作。

19.6 更多資訊

列印此頁面