Skip to main content
NetApp Solutions SAP
本繁體中文版使用機器翻譯,譯文僅供參考,若與英文版本牴觸,應以英文版本為準。

自動化範例指令碼

貢獻者

在本文件中、有兩個指令碼可用於進一步自動化SnapCenter 建立及複製刪除作業。

  • 指令碼「shc-system-refresh.sh」用於系統更新和系統複製工作流程、以執行HANA資料磁碟區的掛載和卸載作業、以及HANA資料庫的還原和關機作業。

  • 指令碼「shc-mount-volume.sh」可用於系統實體複製工作流程、以執行HANA共享磁碟區的掛載和卸載作業。

註 範例指令碼是以原樣提供、NetApp不支援。您可以透過電子郵件向mailto:ng-sapcc@netapp.com [ng-sapcc@netapp.com ^]索取指令碼。

指令碼sc-system-refresh.sh

範例指令碼「shc-system-refresh.sh」用於執行SAP HANA資料磁碟區的掛載和卸載作業、以及還原和關機作業。指令碼是以SnapCenter 特定命令列選項在「創建及複製刪除流程」中呼叫、如下圖所示。

指令碼為一般指令碼、並設定有特定於SID的組態檔和環境變數、SnapCenter 這些變數可在執行指令碼時由S時 使用。指令碼和組態檔必須在系統重新整理作業的目標主機上可用。如果指令碼用於多個目標主機、您可以提供NFS共用、讓指令碼可供所有目標主機使用。

註 目前版本的指令碼支援單一容器、單一用戶租戶或多個用戶配置的單一主機系統。不支援SAP HANA多主機系統。
註 指令碼支援使用NFS或Fibre Channel(FC)作為儲存傳輸協定的HANA系統。

錯誤:缺少圖形影像

支援的租戶還原作業

如一節所述 "「使用儲存快照備份的SAP HANA系統更新作業流程」" 目標系統上可能的租戶還原作業取決於來源系統的租戶組態。指令碼「shc-system-refresh.sh」支援所有租戶還原作業、這些作業可能取決於來源系統組態、如下表所示。

如果目標系統需要不同的租戶名稱、則必須在恢復作業之後手動重新命名租戶。

Hana系統 來源系統的租戶組態 目標系統的租戶組態

單一容器

不適用

不適用

單一租戶

來源租戶名稱等於來源SID

目標租戶名稱等於目標SID

單一租戶

來源租戶名稱不等於來源SID

目標租戶名稱等於來源租戶名稱

多個用戶的MDC

任何租戶名稱

只會恢復第一個租戶、並與來源租戶具有相同的名稱。

特定於SID的組態檔

此指令碼使用組態檔來設定數個目標系統專屬的參數。組態檔必須具有特定於SID的檔案名稱「sc-system-refresh- sID.cfg/」。

註 使用目標系統的hdbuserstore金鑰設定的資料庫使用者、必須存在於來源資料庫中、且必須擁有正確的權限才能允許資料庫還原。

下表顯示組態檔參數。

參數 說明

金鑰

例如:QS1KEY

SAP HANA hdbuserstore金鑰、應用於目標SAP HANA資料庫的還原作業。必須為目標主機上的使用者<SID>adm設定金鑰。

傳輸協定

NFS或FCP

儲存傳輸協定、用於連接HANA資料庫資料Volume。

下列輸出顯示SAP HANA系統的範例組態檔:「ID=QS1」。

ss1adm@hana-1:/mnt/sapcc-share/SAP-System-Refresh> cat sc-system-refresh-QS1.cfg
# ---------------------------------------------
# Target database specific parameters
# ---------------------------------------------
# hdbuserstore key, which should be used to connect to the target database
KEY="QS1KEY"
# Used storage protocol, NFS or FCP
PROTOCOL="NFS"
ss1adm@hana-1:/mnt/sapcc-share/SAP-System-Refresh>

局部環境變數SnapCenter

提供一組環境變數、可在目標主機上執行的指令碼中使用。SnapCenter指令碼會使用這些變數來判斷相關的組態設定。

  • 指令碼變數「HANA架構」是用來判斷單一容器或MDC系統所需的還原作業。

    • 衍生自'HANA資料庫類型'環境變數

    • 例如:「mDC\SS1_HANA資料庫類型=多重容器」

  • 指令碼變數「租戶名單、來源租戶」和「OURCE_SID」可用來判斷恢復作業的目標租戶名稱。

    • 衍生自'租 戶資料庫名稱'環境變數

    • 例如:「MDC\SM1_租 戶資料庫名稱= TENANT1、TENANT2」

  • 指令碼變數「torage、jane_path」用於掛載作業。

    • 衍生自'Clone磁碟區_mount_path'環境變數

    • 例如:

CLONED_VOLUMES_MOUNT_PATH=192.168.175.117:/SS1_data_mnt00001_Clone_05112206115489411

指令碼sc-mount-volume.sh

範例指令碼「shc - mount-volume.sh」用於執行任何Volume的掛載和卸載。指令碼可用來掛載HANA共享磁碟區與SAP HANA系統實體複製作業。指令碼是以SnapCenter 特定命令列選項在「創建及複製刪除流程」中呼叫、如下圖所示。

註 指令碼支援使用NFS做為儲存傳輸協定的HANA系統。

錯誤:缺少圖形影像

局部環境變數SnapCenter

提供一組環境變數、可在目標主機上執行的指令碼中使用。SnapCenter指令碼會使用這些變數來判斷相關的組態設定。

  • 指令碼變數「torage、jane_path」用於掛載作業。

    • 衍生自'Clone磁碟區_mount_path'環境變數。

    • 例如:

CLONED_VOLUMES_MOUNT_PATH=192.168.175.117:/SS1_shared_Clone_05112206115489411

取得SnapCenter 局部環境變數的指令碼

如果不應使用自動化指令碼、而且應手動執行這些步驟、您必須知道FlexClone Volume的儲存系統交會路徑。交叉路徑在SnapCenter 視覺上看不到、因此您需要直接在儲存系統上查詢交會路徑、或是使用簡單的指令碼、在SnapCenter 目標主機上提供各種版本的支援環境變數。此指令碼必須新增為SnapCenter 執行此動作的掛載作業指令碼、才能執行此動作。

ss1adm@hana-1:/mnt/sapcc-share/SAP-System-Refresh> cat get-env.sh
#!/bin/bash
rm /tmp/env-from-sc.txt
env > /tmp/env-from-sc.txt
ss1adm@hana-1:/mnt/sapcc-share/SAP-System-Refresh>

在「env-from sc.txt"檔案中、尋找變數「clone Volume _mount_path」、以取得FlexClone Volume的儲存系統IP位址和交會路徑。

例如:

CLONED_VOLUMES_MOUNT_PATH=192.168.175.117:/SS1_data_mnt00001_Clone_05112206115489411