本指南將說明如何設定與 SAP NetWeaver 和 SAP 應用程式相關的獨特 Bare Metal 解決方案環境。
在 Bare Metal 解決方案環境中,您必須按照 SAP 說明文件自行安裝 SAP NetWeaver 和其他 SAP 軟體。
本指南也涵蓋在 Bare Metal 解決方案環境中,Google Cloud SAP 所需或 SAP NetWeaver 可選的基礎服務安裝和設定。
如要瞭解 Bare Metal 解決方案上的 SAP NetWeaver 概況,以便規劃部署作業,請參閱 Bare Metal 解決方案上的 SAP NetWeaver 規劃指南。
大致步驟
在 Google Cloud 通知您機器已就緒後,您需要完成下列高階步驟,才能在 Bare Metal 解決方案上部署 SAP NetWeaver。
- 請按照裸機解決方案說明文件完成與新機器的連線作業。如需設定程序,請參閱 Bare Metal 解決方案說明文件中的「設定 Bare Metal 解決方案環境」。
- 驗證 SAP NetWeaver 的機器設定。
- 建立網際網路連線,以便取得軟體更新。請參閱 Bare Metal 解決方案說明文件中的「存取網際網路」一節。
- 建立與 Google Cloud API 的連線。請參閱 Bare Metal 解決方案說明文件中的「設定 Google Cloud API 和服務的存取權」一節。
- 設定網路時間通訊協定 (NTP) 伺服器的存取權,這不在本指南的討論範圍。
- 設定網域名稱系統 (DNS) 伺服器 (本指南未涵蓋這項作業)。
- 在 Bare Metal 解決方案伺服器上安裝 Google Cloud的 Agent for SAP。
驗證 SAP NetWeaver 的機器設定
第一次登入機器時,請確認機器設定與訂單相符。
如要瞭解 Bare Metal 解決方案機器驗證,請參閱「首次登入 Bare Metal 解決方案機器」。
設定應用程式服務帳戶
任何從 Bare Metal 解決方案環境存取資源的應用程式、代理程式或程序,都需要 IAM 服務帳戶進行驗證和授權。 Google Cloud
如何建立服務帳戶:
前往 Google Cloud 控制台的「Service accounts」(服務帳戶) 頁面。
選取 Google Cloud 專案。
按一下「Create Service Account」(建立服務帳戶)。
指定服務帳戶名稱,並視需要輸入說明。
按一下「建立並繼續」。
在「將專案存取權授予這個服務帳戶」面板中,選取包含應用程式所需權限的角色。
舉例來說,在高可用性叢集中使用的
fence_gce
代理程式需要baremetalsolution.service.resetInstance
權限,而這項權限包含在 IAM 角色roles/baremetalsolution.editor
和roles/baremetalsolution.admin
中。按一下「繼續」。
視情況授予其他使用者服務帳戶的存取權。
按一下 [完成]。
在 Google Cloud 控制台的「Service accounts」頁面中,按一下您剛建立的服務帳戶電子郵件地址。
在服務帳戶名稱下方,按一下「金鑰」分頁標籤。
點選「Add Key」下拉式選單,然後選取「Create new key」,即可建立服務帳戶金鑰。
接受 JSON 做為金鑰類型,然後按一下「建立」。私密金鑰會儲存到您的電腦中。
將 JSON 金鑰檔案上傳至 Bare Metal 解決方案伺服器的安全位置,讓需要的應用程式可以存取。
設定應用程式以存取 JSON 金鑰檔案。
舉例來說,當您建立使用
fence_gce
代理程式且具備高可用性的叢集資源時,請在fence_gce
設定屬性中指定 JSON 鍵檔案的路徑和檔案名稱。
如要進一步瞭解 IAM 服務帳戶,請參閱:
確認與應用程式伺服器的連線
確認資料庫伺服器和應用程式伺服器之間的網路連線。
請確認您的 Google Cloud 和來賓作業系統防火牆規則允許伺服器之間的流量。
安裝 SAP NetWeaver
如要在 Bare Metal 解決方案主機上安裝 SAP NetWeaver,請按照您 SAP NetWeaver 版本的 SAP 安裝說明文件操作。
如要查看您所用 SAP NetWeaver 版本的安裝說明文件,請參閱 SAP 說明入口網站。
安裝 Google Cloud的 Agent for SAP
Google Cloud的 SAP 代理程式是 SAP 在 Bare Metal 解決方案伺服器上執行 SAP 系統時所需的支援。
如果您使用 Google Cloud提供的下列 RHEL 或 SLES「for SAP」OS 映像檔, Google Cloud的 SAP 代理程式會與 OS 映像檔一併封裝:
- RHEL:所有「SAP 專用」映像檔
- SLES:SLES 15 SP4 for SAP 以上版本
如要瞭解可在 Bare Metal Solution 伺服器上執行 SAP 的作業系統,請參閱以下資訊:
- 如需瞭解 SAP HANA,請參閱「已認證的作業系統」。
- 如需 SAP NetWeaver 的相關資訊,請參閱「已通過認證的作業系統」。
如要在 Bare Metal 解決方案伺服器上安裝 Google Cloud的 Agent for SAP,請按照下列步驟操作:
建立與 Bare Metal 解決方案伺服器的 SSH 連線。
在終端機中,執行適用於您作業系統的指令來安裝代理程式:
- (建議) 如要安裝代理程式的 3.8 版 (最新版),請按照下列步驟操作:
RHEL
sudo tee /etc/yum.repos.d/google-cloud-sap-agent.repo << EOM [google-cloud-sap-agent] name=Google Cloud Agent for SAP baseurl=https://packages.cloud.google.com/yum/repos/google-cloud-sap-agent-el$(cat /etc/redhat-release | cut -d . -f 1 | tr -d -c 0-9)-x86_64 enabled=1 gpgcheck=1 repo_gpgcheck=0 gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg EOM sudo yum install google-cloud-sap-agent
SLES15
sudo zypper addrepo --refresh https://packages.cloud.google.com/yum/repos/google-cloud-sap-agent-sles15-x86_64 google-cloud-sap-agent sudo zypper install google-cloud-sap-agent
SLES 12
sudo zypper addrepo --refresh https://packages.cloud.google.com/yum/repos/google-cloud-sap-agent-sles12-x86_64 google-cloud-sap-agent sudo zypper install google-cloud-sap-agent
如要安裝特定版本的代理程式,請按照下列步驟操作:
RHEL
sudo tee /etc/yum.repos.d/google-cloud-sap-agent.repo << EOM [google-cloud-sap-agent] name=Google Cloud Agent for SAP baseurl=https://packages.cloud.google.com/yum/repos/google-cloud-sap-agent-el$(cat /etc/redhat-release | cut -d . -f 1 | tr -d -c 0-9)-x86_64 enabled=1 gpgcheck=1 repo_gpgcheck=0 gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg EOM sudo yum install google-cloud-sap-agent-VERSION_NUMBER.x86_64
SLES15
sudo zypper addrepo --refresh https://packages.cloud.google.com/yum/repos/google-cloud-sap-agent-sles15-x86_64 google-cloud-sap-agent sudo zypper install google-cloud-sap-agent-VERSION_NUMBER.x86_64
SLES 12
sudo zypper addrepo --refresh https://packages.cloud.google.com/yum/repos/google-cloud-sap-agent-sles12-x86_64 google-cloud-sap-agent sudo zypper install google-cloud-sap-agent-VERSION_NUMBER.x86_64
將
VERSION_NUMBER
替換為要安裝的代理程式版本號碼,例如3.1-606637668
。如要瞭解可安裝的代理程式版本,請參閱「列出所有可用的代理程式版本」。
- (建議) 如要安裝代理程式的 3.8 版 (最新版),請按照下列步驟操作:
開啟以下設定檔:
/etc/google-cloud-sap-agent/configuration.json
修改或新增下列參數至設定檔:
- 在第一個部分中:
bare_metal
:設為true
。
- 新增
cloud_properties
部分,並指定下列參數:project_id
:指定您的 Google Cloud 專案instance_name
:指定 Bare Metal 解決方案伺服器的名稱region
:指定 Bare Metal 解決方案伺服器的區域
- 在第一個部分中:
儲存設定檔。
重新啟動代理程式:
sudo systemctl restart google-cloud-sap-agent
如要進一步瞭解設定參數,請參閱「在 Bare Metal 解決方案伺服器上安裝 Google Cloud的 SAP 代理程式」一文。
安裝 Google Cloud的 Agent for SAP 和 SAP Host Agent 後,請按照「驗證代理程式安裝狀態」一節所述,驗證 Google Cloud的 Agent for SAP 安裝作業。
驗證 Google Cloud的 Agent for SAP 安裝狀態
與 Bare Metal 解決方案伺服器建立 SSH 連線。
執行下列指令:
systemctl status google-cloud-sap-agent
如果代理程式運作正常,輸出內容就會包含
active (running)
。例如:google-cloud-sap-agent.service - Google Cloud Agent for SAP Loaded: loaded (/usr/lib/systemd/system/google-cloud-sap-agent.service; enabled; vendor preset: disabled) Active: active (running) since Fri 2022-12-02 07:21:42 UTC; 4 days ago Main PID: 1337673 (google-cloud-sa) Tasks: 9 (limit: 100427) Memory: 22.4 M (max: 1.0G limit: 1.0G) CGroup: /system.slice/google-cloud-sap-agent.service └─1337673 /usr/bin/google-cloud-sap-agent
如果代理程式未執行,請重新啟動代理程式。
確認 SAP Host Agent 正在接收指標
如要確認Google Cloud的 Agent for SAP 是否收集基礎架構指標,並正確傳送至 SAP Host Agent,請按照下列步驟操作:
- 在 SAP 系統中輸入交易
ST06
。 在「Overview」(總覽) 窗格中,查看以下欄位的可用性和內容,確認 SAP 和 Google 監控基礎架構已做好正確的端對端設定:
- 雲端服務供應商:
Google Cloud Platform
- Enhanced Monitoring Access (強化版監控功能存取權):
TRUE
- Enhanced Monitoring Details (強化版監控功能詳細資料):
ACTIVE
- 雲端服務供應商:
設定高可用性叢集
為重要業務工作負載設定叢集或合適的高可用性解決方案。建議您使用 Pacemaker 叢集。
除了少數需求和建議外,請按照作業系統供應商提供的叢集化操作說明,在 Bare Metal 解決方案電腦上設定高可用性叢集。
如要進一步瞭解在 Bare Metal 解決方案上設定高可用性 SAP NetWeaver 系統的 Google Cloud 相關規定和建議,請參閱「Bare Metal 解決方案適用於 SAP NetWeaver 的高可用性叢集」。
浮動 IP 位址
SAP NetWeaver 的高可用性叢集會使用兩個浮動或虛擬 IP 位址 (VIP):一個用於將網路通訊導向至 SAP Central Services 元件,另一個用於節點之間的 Enqueue Replication Server 通訊。設定 VIP 時,請使用標準的 IPaddr2
Pacemaker 資源,該資源會使用無用 ARP 要求,在主機之間移動 VIP。詳情請參閱「位址解析協定」。
以下範例顯示 SUSE 上 SAP Central Services 的 IPaddr2
資源定義:
crm configure primitive scs-vip-rsc-name IPaddr2 \ params ip=10.0.0.79 \ op monitor interval=10 timeout=20
您可以將每個 IPaddr2
資源新增至包含 SAP Central Services 資源或其所屬的 Enqueue Replication Server 資源的資源群組,這樣在容錯期間,資源就能一起移動。舉例來說,下列指令會為 SAP Central Services 建立群組:
crm configure group scs-rsc-group-name \ scs-file-system-rsc-name \ scs-vip-rsc-name \ scs-instance-sap-rsc-name \ meta resource-stickiness=3000
同樣地,下列指令會為 Enqueue 複製伺服器建立另一個群組:
crm configure group ers-rsc-group-name \ ers-file-system-rsc-name \ ers-vip-rsc-name \ ers-instance-rsc-name
設定 fence_gce
代理程式
下列高階步驟可協助您為高可用性叢集設定圍欄資源,該叢集會使用 Linux 作業系統隨附的 fence_gce
代理程式。
在 Google Cloud 專案中,將包含
baremetalsolution.service.resetInstance
權限的 IAM 角色指派給您擁有 JSON 金鑰檔案的新或現有 IAM 服務帳戶。預先定義的角色
roles/baremetalsolution.editor
包含必要權限,您也可以建立自訂角色,以便更精細地控管角色所包含的權限。如需詳細資訊,請參閱:
將服務帳戶 JSON 金鑰檔案上傳至高可用性叢集中的所有 Bare Metal Solution 伺服器。
確認
fence_gce
代理程式版本支援 Bare Metal 解決方案。透過 SSH 連線至 Bare Metal 解決方案伺服器
顯示
fence_gce
服務專員說明:$
sudo fence_gce --help在
fence_gce
說明中找出下列屬性:--baremetalsolution Enable on bare metal ... --serviceaccount=[filename] Service account json file location e.g. serviceaccount=/somedir/service_account.json
如果您沒有看到
--baremetalsolution
和--serviceaccount=[filename]
屬性,就需要更新代理程式。請與 Cloud Customer Care 團隊聯絡,取得修補程序說明。修補程序會因您使用的 Linux 版本而異。
按照作業系統供應商提供的叢集化操作說明設定叢集資源時,請在每個叢集節點上指定
fence_gce
代理程式做為圍欄裝置。定義資源時,請指定下列
fence_gce
參數,為 Bare Metal 解決方案環境啟用代理程式:baremetalsolution="true"
serviceaccount="file_path/key_file.json"
以下範例顯示在 SUSE 上定義的
fence_gce
圍欄裝置資源:crm configure primitive STONITH-"server_name" stonith:fence_gce \ op monitor interval="300s" timeout="60s" on-fail="restart" \ op start interval="0" timeout="60s" onfail="restart" \ params port="server_name" zone="Google_Cloud_zone" project="Google_Cloud_project_ID" \ baremetalsolution="true" method="cycle" \ serviceaccount="file_path/key_file.json"
以下是圍欄資源範例使用的定義:
定義 說明 baremetalsolution=true
設定圍欄代理程式,以便在 Bare Metal 解決方案環境中運作。 serviceaccount=file_path/key_file.json
JSON 金鑰檔案的檔案路徑,其中包含服務帳戶的金鑰,該帳戶是用於讓防火牆代理程式存取 Google Cloud API。 port=server_name
圍欄裝置可重設的 Bare Metal 解決方案伺服器原始主機名稱。 method=cycle
定義用於重設失敗伺服器的方法。 定義每個圍欄資源後,請將圍欄裝置的位置設為要重設的伺服器以外的伺服器:
crm configure location LOC_STONITH_server_name STONITH-server_name -inf: server_name
重新啟動 Bare Metal 解決方案伺服器
您可以發出 resetInstance
API 呼叫,藉此重新啟動 Bare Metal 解決方案伺服器,這會啟動伺服器的非正常硬重設程序。
重新啟動伺服器前,請先停止在伺服器上執行的所有應用程式和資料庫。
如要瞭解如何啟用 Bare Metal 解決方案 API 並發出 resetInstance
API 呼叫,請參閱「重新啟動 Bare Metal 解決方案機器」一文。
取得 Bare Metal 解決方案的 SAP NetWeaver 支援
如果您需要協助解決裸機解決方案的 SAP NetWeaver 和 SAP 應用程式部署問題,請收集必要的診斷資訊,然後與 Cloud Customer Care 團隊聯絡。詳情請參閱「Bare Metal 解決方案上的 SAP 診斷資訊」。
支援
如果是基礎架構或服務相關問題,請與客戶服務團隊聯絡。 Google Cloud 您可以在 Google Cloud 控制台的「支援總覽」頁面中找到聯絡資訊。如果客戶服務團隊判定問題出在 SAP 系統,就會將您轉介給 SAP 支援團隊。
如要進一步瞭解 SAP 產品相關問題,請使用 SAP 支援登錄您的支援要求。SAP 會評估支援票證,如確定為 Google Cloud基礎架構方面的問題,就會將票證轉移至系統中的適當Google Cloud 元件:BC-OP-LNX-GOOGLE
或 BC-OP-NT-GOOGLE
。
支援相關規定
您必須符合支援方案的最低需求,才能獲得 SAP 系統和Google Cloud所使用的基礎架構和服務支援服務。
如要進一步瞭解Google Cloud上 SAP 的最低支援需求,請參閱:
- 取得 GCP 上的 SAP 支援 Google Cloud
- SAP 注意事項 2456406 - Google Cloud 平台上的 SAP:支援必要條件 (必須使用 SAP 使用者帳戶)