5.12 進階工作負載保護主題

5.12.1 保護 Windows 叢集

PlateSpin Protect 支援對 Microsoft Windows 叢集的業務服務進行保護。支援的叢集技術包括︰

  • 基於 Windows 2003 Server 的 Windows 叢集伺服器 (單一仲裁裝置叢集模式)

  • 基於 Windows 2008 Server 的 Microsoft 容錯移轉叢集 (節點與磁碟多數非大部分︰僅磁碟模式)

可以透過對主動節點上串流處理至虛擬單節點叢集的變更進行增量複製,來實現叢集保護。您在疑難排解來源基礎架構時就可以使用此方式。

目前版本對叢集移轉的支援受以下條件的限制︰

  • 執行新增工作負載操作時,您必須以叢集的 IP 位址 (虛擬 IP 位址) 識別主動節點 (即目前擁有叢集的仲裁資源的節點)。指定個別節點的 IP 位址會導致將該節點庫存為不可感知叢集的一般 Windows 工作負載。

  • 叢集的仲裁資源必須與其目前正受到保護的資源群組 (服務) 放在一起。

如果在受保護叢集的增量複製間隔發生節點容錯移轉,PlateSpin Protect 會產生一個保護事件。如果新的主動節點與出現故障的主動節點的設定檔相似,則保護排程會繼續有效;否則指令會失敗。如果叢集節點的設定檔符合下列條件則視為相似:

  • 它們有相同數目的磁碟區

  • 每個節點上的每個磁碟區的大小完全相同

  • 它們有相同數目的網路連接

若要保護 Windows 叢集,請遵循正常的工作負載保護工作流程 (請參閱工作負載保護及備援的基本工作流程)。

在進行錯誤回復時,PlateSpin Protect 會提供驗證,有助於確保在目標上保留共用的磁碟區配置。請確認您正確對應了磁碟區。

5.12.2 Linux 錯誤回復至 Xen on SLES 上的準虛擬化虛擬機器

您可以錯誤回復至 Xen on SLES (僅限 10 版) 上的準虛擬化虛擬機器。此程序無法直接完成,需要分兩個階段來進行。半虛擬化虛擬機器需要先轉換成完全虛擬化的虛擬機器,以後再轉換回來。PlateSpin 開機 ISO 影像中隨附的公用程式 (xmpsadministrator-) 可用來轉換虛擬機器。

根據目標是新的還是現有的半虛擬化虛擬機器,該程序稍有不同。

Linux 錯誤回復至新的半虛擬化虛擬機器

  1. 將 PlateSpin Linux 開機 ISO 複製到目標 Xen on SLES 伺服器。請參閱表 5-2, 目標實體機器的開機 ISO 影像

  2. 啟動虛擬機器管理員並建立完全虛擬化的虛擬機器:

    1. 選取我需要安裝作業系統選項。

    2. 為磁碟影像選擇合適的大小 (磁碟大小應該等於或大於容錯移轉虛擬機器的磁碟大小)。

    3. 選擇將開機 ISO 做為安裝來源。

      虛擬機器會開機到錯誤回復至實體機器設定中使用的 PlateSpin 作業系統環境。

  3. 執行錯誤回復程序。請參閱半自動錯誤回覆到實體機器

    完成時,虛擬機器應當就會具備完全虛擬化機器的全部功能。

  4. 將虛擬機器重新開機,並確定它仍然開機到 PlateSpin 作業系統環境。

  5. boot: 提示符處,輸入 switch,然後按 Enter。

    這會將作業系統重新設定為可開機為半虛擬化機器。完成時,輸出應類似於如下內容:

    請記下輸出內容最後一段中的開機載入程式引數:

    Please apply the following data as bootloader_args for
    switching Xen fully-virt machine to Para-virt machine:
     
    '-entry=xvda1:/vmlinuz-2.6.16.60-0.54.5-xen, /initrd-2.6.16.60-0.54.5-xen'
    

    xmps 公用程式會使用它們來設定內核及 initrd 影像的位置,半虛擬化機器會從該位置開機。

  6. 關閉虛擬機器:

    [DB]$ poweroff

  7. root 使用者身分登入 XEN on SLES 伺服器,並掛接 PlateSpin Linux 開機 ISO (指令範例假設已將 ISO 複製到 /root 目錄下)︰

    # mkdir /mnt/ps
    # mount -o loop /root/linuxfailback.iso /mnt/ps
    
  8. 執行 xmps 公用程式,根據完全虛擬化虛擬機器的組態建立半虛擬化虛擬機器:

    # /mnt/ps/tools/xmps --pv --vm_name=SLES10-FV --new_vm_name=SLES10-PV --bootloader_args="--entry=xvda1:/vmlinuz-2.6.16.60-0.54.5-xen, /initrd-2.6.16.60-0.54.5-xen"
    

    公用程式需要的輸入:

    • 將做為半虛擬化機器組態之依據的完全虛擬化虛擬機器的名稱 (SLES10-FV)

    • 要建立的虛擬機器名稱 (SLES10-PV)

    • 半虛擬化機器的開機載入程式引數 "--bootloader_args" (如步驟 5中所示)

    如果已存在使用 new_vm_name 所傳遞之名稱的虛擬機器,則 xmps 公用程式會失敗。

    現在,新建立的半虛擬化虛擬機器 (SLES10-PV) 應該可以在虛擬機器管理員中使用,並且可以開啟。相應的完全虛擬化機器會被淘汰,並且將無法開機。此時可以刪除此虛擬機器 (將只移除虛擬機器組態)。

  9. 卸載 PlateSpin Linux 開機 ISO:

    # umount /mnt/ps
    

Linux 錯誤回復至現有的半虛擬化虛擬機器

  1. 將 PlateSpin Linux 開機 ISO 複製到目標 Xen on SLES 伺服器。請參閱表 5-2, 目標實體機器的開機 ISO 影像

  2. root 使用者身分登入 XEN SLES 伺服器,並掛裝 PlateSpin Linux 開機 ISO︰

    # mkdir /mnt/ps
    # mount -o loop /root/linuxfailback.iso /mnt/ps
    
  3. 執行 xmps 公用程式,根據半虛擬化虛擬機器 (要使用的錯誤回復目標) 的組態建立完全虛擬化的虛擬機器:

    # /mnt/ps/tools/xmps --fv --vm_name=SLES10-PV --new_vm_name=SLES10-FV --bootiso=/root/linuxfailback.iso
    

    公用程式需要的輸入:

    • 現有半虛擬化機器 (即要使用的錯誤回復目標) 的名稱 (SLES10-PV)

    • 要為兩階段錯誤回復操作建立之暫時完全虛擬化機器的名稱 (SLES10-FV)

    • 開機 ISO 的完整路徑 (假設 ISO 檔案位於 /root: /root/linuxfailback.iso 下)

    如果已存在使用 new_vm_name 所傳遞之名稱的虛擬機器,則 xmps 公用程式會失敗。

    現在,新建立的完全虛擬化機器 (SLES10-FV) 應該可以在虛擬機器管理員中使用。

  4. 開啟新建立的完全虛擬化機器 (SLES10-FV)。

    虛擬機器會開機到錯誤回復至實體機器設定中使用的 PlateSpin 作業系統環境。

  5. 執行錯誤回復程序。請參閱半自動錯誤回覆到實體機器

  6. 將虛擬機器重新開機,執行 switch,並重新設定工作負載,如Linux 錯誤回復至新的半虛擬化虛擬機器中所述 (僅從步驟 4步驟 9)。

5.12.3 透過 PlateSpin Protect Web 服務 API 使用工作負載保護功能

您可以透過應用程式中的 protection.webservices API,撰寫程式來使用工作負載保護功能。可以使用支援 Web 服務的任意程式設計或程序檔語言。

http://<主機名稱 | IP 位址>/protection.webservices

以 PlateSpin Protect 伺服器主機的主機名稱或 IP 位址取代 <主機名稱 | IP 位址>

圖 5-3 保護 Web 服務 API 的 Front Page

若要為常用的工作負載保護操作編寫程序檔,請以用 Python 編寫的參考範例做為指導。為便於您參考,還提供了 Microsoft Silverlight 應用程式及其原始程式碼。