SAP HANA 適用的 Cloud Storage Backint 代理程式安裝指南

這些操作說明會讓您瞭解如何安裝及設定 SAP HANA 適用的 Cloud Storage Backint 代理程式 (Backint 代理程式)。

如要瞭解 Backint 代理程式的設定選項,請參閱 SAP HANA 適用的 Cloud Storage Backint 代理程式總覽

事前準備

您必須先安裝 SAP HANA,才能安裝 Backint 代理程式。如要在 Google Cloud上安裝 SAP HANA,請參閱 SAP HANA 部署指南

如要瞭解如何在裸機解決方案上安裝 SAP HANA,請參閱 SAP HANA 裸機解決方案規劃指南

如果主機 VM 無法存取網際網路,您需要設定私人 Google 存取權,讓 Backint 代理程式可以存取 Google Cloud API。如要設定私人 Google 存取權,請參閱「設定私人 Google 存取權」。

建立 Cloud Storage 值區以保留備份

在您設定 Backint 代理程式之前,您必須先建立 Cloud Storage 值區以保留備份。

如要建立 Cloud Storage 值區,請使用 Google Cloud 主控台。

如要瞭解值區選項,請參閱「在 Cloud Storage 值區中儲存備份」。

  1. 在 Google Cloud 主控台中開啟 Cloud Storage 瀏覽器。

    開啟 Cloud Storage 瀏覽器

  2. 按一下 [CREATE BUCKET] (建立值區)

  3. 為值區命名,然後按一下「Continue」

  4. 按照提示選取值區選項。

  5. 按一下 [建立]。

  6. 如要設定值區權限,請按一下權限分頁標籤。根據預設,身為值區的擁有者,您會具有值區的讀取/寫入存取權。您也可以允許其他主體存取您的值區。

在 SAP HANA 主機上安裝 Backint 代理程式

Backint 代理程式會安裝在與 SAP HANA 資料庫相同的共用檔案系統中。

在 SAP HANA 向外擴充部署中,請在 SAP HANA 系統的每個節點上安裝 Backint 代理程式。為簡化管理作業,您可以將設定檔儲存在共用位置,讓部署中的所有節點都能存取,例如 /hana/shared

  1. 使用 SSH 連線至 SAP HANA 主機。如果主機是 Compute Engine VM,您可以在「VM 執行個體頁面」中,按一下 VM 執行個體的 SSH 按鈕,或使用您偏好的 SSH 方法。

  2. 切換到 SAP HANA 系統管理員。

    sudo su - SID_LCadm
    
  3. 下載並安裝 Backint 代理程式。

    curl -O https://storage.googleapis.com/cloudsapdeploy/backint-gcs/install.sh
    chmod +x install.sh
    ./install.sh
    

    install.sh 指令碼會執行下列動作:

    • /usr/sap/SID/SYS/global/hdb/opt/backint/backint-gcs 中安裝 Backint 代理程式做為 JAR 檔案。
    • 下載 Java Runtime Environment 的相容版本。
    • 設定叫用 Backint 代理程式的 backint 指令碼。除非 Cloud Customer Care 團隊指示您修改 backint 指令碼,否則請勿擅自變更。
    • 完成後,系統會發出訊息,指引您更新 parameters.txt 檔案並設定驗證。詳情請參閱「設定 Backint 代理程式和 SAP HANA」。
  4. 如果您符合下列任一情況,就需要為 Backint 代理程式建立服務帳戶:

    • Backint 代理程式必須使用與主機 Compute Engine VM 不同的資源權限組合。
    • SAP HANA 是在 Bare Metal 解決方案上執行。
    • SAP HANA 並未在 Google Cloud上執行。

    如要為 Backint 代理程式建立服務帳戶,請按照下列步驟操作:

    1. 前往 Google Cloud 控制台的「Service accounts」(服務帳戶) 頁面。

      前往「Service Accounts」(服務帳戶) 頁面

    2. 選取 Google Cloud 專案。

    3. 按一下「Create Service Account」(建立服務帳戶)

    4. 指定服務帳戶名稱,並視需要輸入說明。

    5. 按一下「建立並繼續」

    6. 按一下「Continue」,即可建立沒有權限的服務帳戶。

    7. 視情況授予其他使用者服務帳戶的存取權。

    8. 按一下 [完成]

    9. 在 Google Cloud 控制台的「Service accounts」頁面中,按一下您剛建立的服務帳戶電子郵件地址。

    10. 在服務帳戶名稱下方,按一下「金鑰」分頁標籤。

    11. 點選「Add Key」下拉式選單,然後選取「Create new key」,即可建立服務帳戶金鑰

    12. 接受 JSON 做為金鑰類型,然後按一下「建立」。私密金鑰會儲存到您的電腦中。

  5. 將 JSON 金鑰檔案上傳至 SAP HANA 主機。

    • .json 檔案儲存在 SID_LCadm 使用者可存取的目錄中,例如 /usr/sap/SID/home
    • 請確認 SID_LCadm 使用者已獲授權讀取檔案。
  6. 更新 Cloud Storage 值區,授予服務帳戶使用該值區的權限:

    1. 在 Cloud Storage 瀏覽器中,按一下值區名稱。

      開啟 Cloud Storage 瀏覽器

    2. 按一下「Permissions」(權限) 分頁標籤。

    3. 按一下「新增主體」

    4. 在「新增主體」欄位中輸入服務帳戶的完整電子郵件地址。例如:

      backint-test@my-project.iam.gserviceaccount.com

    5. 按一下「請選擇角色」下拉式選單,然後輸入「Storage Object Admin」(Storage 物件管理員)。

    6. 按一下 [儲存]

設定 Backint 代理程式和 SAP HANA

您可以在純文字設定檔中指定參數,藉此設定 Backint 代理程式。

您可以為所有備份類型 (資料、記錄和目錄) 使用相同的單一設定,也可以為每個備份類型建立不同的設定檔,以便使用不同的設定。

您可以在 global.ini 檔案中指定參數,藉此指定 SAP HANA 中每個 Backint 代理程式設定檔的路徑。

  1. parameters.txt 檔案中指定參數,即可設定 Backint 代理程式。您可以視需要重新命名檔案。

    1. 使用您偏好的方法編輯 parameters.txt 檔案。檔案會安裝在以下目錄中。

      /usr/sap/SID/SYS/global/hdb/opt/backint/backint-gcs/parameters.txt
      

      您可以重新命名 parameters.txt 檔案,並使用不同的設定檔備份資料、記錄和目錄。

      如需有關設定參數的說明和效能建議,請參閱 Backint 代理程式的設定選項一節。

    2. 指定要用於備份的 Cloud Storage 值區名稱。

      #BUCKET bucket-name
      
    3. 如果您已為 Backint 代理程式建立服務帳戶和私密金鑰,請指定 JSON 金鑰檔案的路徑。

      #SERVICE_ACCOUNT /path/key-file-name.json

    以下範例顯示有效 parameters.txt 檔案的內容。請注意,範例中的 # 是語法的一環,並不表示該行是註解。

    #BUCKET hana-backups
    #DISABLE_COMPRESSION
    #SERVICE_ACCOUNT /usr/sap/ABC/home/example-project-123456-d591d63bba6f.json
  2. 選用:設定 Backint 代理程式,略過或使用代理程式進行備份和復原作業。根據預設,Backint 代理程式會略過 HTTP Proxy。

    對執行個體中繼資料伺服器的查詢一律必須略過 HTTP 代理伺服器。請根據 Proxy 伺服器的要求,使用 httphttps Proxy 參數。

    如要為 Backint 代理程式指定 Proxy 伺服器設定,請編輯 /usr/sap/SID/SYS/global/hdb/opt/backint/backint-gcs/jre/conf/net.properties 檔案。

    舉例來說,以下設定會指定 HTTPS Proxy 伺服器:

    http.proxyHost=proxy-host
    http.proxyPort=proxy-port
    http.nonProxyHosts=localhost|127.*|[::1]|169.254.169.254|metadata.google.internal
    https.proxyHost=proxy-host
    https.proxyPort=proxy-port
    

    如要進一步瞭解如何搭配 Proxy 使用 Backint 代理程式,請參閱「Proxy 和 Backint 代理程式」。

  3. 設定 SAP HANA 以使用 Backint 代理程式:

    1. 使用 SAP HANA Studio 或 SAP HANA Cockpit,將 global.ini 設定檔 backup 區段中的下列參數,設為表格中顯示的值。進行這些變更後,您不需要重新啟動 SAP HANA。

      如果您為每種備份類型使用不同的設定檔,請按照下表指定不同的設定檔。否則,請為所有類型指定相同的設定檔。

      參數
      catalog_backup_parameter_file /usr/sap/SID/SYS/global/hdb/opt/backint/backint-gcs/parameters-catalog.txt
      catalog_backup_using_backint true
      data_backup_parameter_file /usr/sap/SID/SYS/global/hdb/opt/backint/backint-gcs/parameters-data.txt
      log_backup_parameter_file /usr/sap/SID/SYS/global/hdb/opt/backint/backint-gcs/parameters-log.txt
      log_backup_using_backint true
    2. 使用 SAP HANA Studio,為 global.ini 檔案的 persistence 區段,為 basepath_catalogbackupbasepath_logbackup 指定相同的值。例如:

      basepath_catalogbackup 和 basepath_logbackup 在 global.ini 檔案的 persistence 區段中顯示相同的值

  4. 在 Cloud Storage 值區中建立備份,並從備份中還原,以測試安裝。

  5. 如要支援 Backint 代理程式的自動更新功能,請啟用從 SAP HANA VM 到 https://www.googleapis.com/ 的遠端 HTTP 要求。

  6. 您可以選擇啟用 Cloud Logging。

    • 如果 SAP HANA 在 Compute Engine VM 上執行,請將 com.google.cloud.logging.LoggingHandler 處理常式新增至 /usr/sap/SID/SYS/global/hdb/opt/backint/backint-gcs/logging.properties 檔案中的 com.google.cloud.partners.handlers 屬性。
    • 如果在 Google Cloud以外的平台執行 SAP HANA,請安裝 Google Cloud CLI,然後使用 gcloud auth application-default login 指令設定應用程式預設登入。

將 Backint 代理程式更新至新版本

在正式環境中將 Backint 代理程式更新為新版本前,請務必先在非正式環境中測試新版本。如要瞭解 Backint 代理程式提供的版本資訊,請參閱該版本的版本資訊

如要將 Backint 代理程式更新為新版本,請按照下列步驟操作:

  1. 請確認在更新期間,沒有任何資料備份正在進行或排定時間。

  2. 將 SAP HANA 參數 enable_auto_log_backup 設為 no,即可停用自動記錄備份功能。如需操作說明,請參閱 SAP HANA 文件「啟用及停用自動記錄備份功能」。

  3. 啟用從 SAP HANA 主機到 https://www.googleapis.com/ 的遠端 HTTP 要求。

  4. SID_LCadm 身分,在 SAP HANA 主機上安裝新版本:

    curl -O https://storage.googleapis.com/cloudsapdeploy/backint-gcs/update.sh
    chmod +x update.sh
    ./update.sh

    update.sh 指令碼會執行下列動作:

    • /usr/sap/SID/SYS/global/hdb/opt/backint/backint-gcs 中安裝新版 Backint 代理程式。
    • 更新 backint 指令碼,以便叫用新的 Backint 代理程式版本。
    • 更新 VERSION.txt 中的版本號碼。
    • update.sh 指令碼儲存在 /usr/sap/SID/SYS/global/hdb/opt/backint/backint-gcs 的本機中。
    • 完成後會發出訊息。

    更新程序不會修改或取代現有的 parameters.txt 檔案。如要使用新版本中推出的新選項,您必須在現有的 parameters.txt 檔案中新增對應的參數。

    更新程序會將舊版 Backint 代理程式留在 /usr/sap/SID/SYS/global/hdb/opt/backint/backint-gcs 目錄中,以便您在需要時改用舊版。

  5. 將 SAP HANA 參數 enable_auto_log_backup 參數設為 yes,啟用自動記錄備份功能。如需操作說明,請參閱 SAP HANA 文件「啟用及停用自動記錄備份功能」。

  6. 監控系統是否已成功完成備份。

改用舊版

如果您在使用新版 Backint 代理程式時遇到問題,且 Google Cloud 或 SAP 支援團隊建議您改用舊版,您可以編輯 backint 指令碼檔案。

您不需要移除在 parameters.txt 檔案中為新版本新增的任何參數。舊版 Backint 代理程式會忽略新版的參數。

如要改用舊版:

  1. SID_LCadm 身分開啟 backint 指令碼進行編輯。例如:

    vi /usr/sap/SID/SYS/global/hdb/opt/backint/backint-gcs/backint
  2. 將 Backint 代理程式 JAR 檔案的名稱變更為先前版本的 JAR 檔案名稱。

    舉例來說,如果您要從 1.0.6 版降級至 1.0.4 版,則應變更:

    -jar /usr/sap/ABC/SYS/global/hdb/opt/backint/backint-gcs/sap-backint-gcs-1.0.6.jar
    到:

    -jar /usr/sap/ABC/SYS/global/hdb/opt/backint/backint-gcs/sap-backint-gcs-1.0.4.jar

  3. 開啟 VERSION.txt 檔案進行編輯,並指定先前的版本編號。您必須執行這項操作,讓更新機制知道您正在執行哪個版本。

    vi /usr/sap/SID/SYS/global/hdb/opt/backint/backint-gcs/VERSION.txt
  4. 觸發備份作業來測試 Backint 代理程式。

疑難排解

如要排解 SAP HANA 適用的 Backint 代理程式問題,請參閱「排解 SAP HANA 適用的 Backint 代理程式問題」。

取得 Backint 代理程式的支援

如需協助解決 SAP HANA 適用的 Backint 代理程式問題,請收集必要的診斷資訊,然後與 Cloud Customer Care 團隊聯絡。詳情請參閱「SAP HANA 診斷資訊的 Backint 代理程式」。