如要瞭解如何規劃這項實作作業,請參閱「規劃 SAP NetWeaver 的 Oracle 資料庫實作作業」。
事前準備
- 請參閱「規劃 SAP NetWeaver 的 Oracle Database 導入作業」。
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
- 如果您希望 SAP 工作負載能遵循資料落地、存取權控管、支援人員或法規規定執行,就必須建立必要的 Assured Workloads 資料夾。詳情請參閱「SAP on Google Cloud的符合性和主權控管措施」。
- 請確認您有權存取 Oracle Database 安裝媒體。
- 在 Google Cloud 控制台中,前往「VPC networks」(虛擬私有雲網路) 頁面。
- 按一下「建立虛擬私有雲網路」。
- 輸入網路的名稱。
名稱必須遵循命名慣例。虛擬私有雲網路會使用 Compute Engine 命名慣例。
- 在 [Subnet creation mode] (子網路建立模式) 中,選擇 [Custom]。
- 在「New subnet」(新子網路) 部分,指定子網路的以下設定參數:
- 輸入子網路的「名稱」。
- 在「區域」中,選取要建立子網路的 Compute Engine 區域。
- 針對「IP 堆疊類型」,請選取「IPv4 (單一堆疊)」,然後以 CIDR 格式輸入 IP 位址範圍,例如
10.1.0.0/24
。這是子網路的主要 IPv4 範圍。如果您打算新增多個子網路,請為網路中的每個子網路指派不重疊的 CIDR IP 範圍。請注意,每個子網路及其內部 IP 範圍都會對應至單一地區。
- 按一下「完成」。
- 如要新增其他子網路,請按一下「Add subnet」(新增子網路),然後重複上述步驟。建立網路後,您可以新增更多子網路。
- 按一下 [建立]。
- 前往 Cloud Shell。
- 如要在自訂子網路模式中建立新的網路,請執行:
gcloud compute networks create NETWORK_NAME --subnet-mode custom
請將
NETWORK_NAME
替換為新網路的名稱。名稱必須遵循命名慣例。虛擬私有雲網路會使用 Compute Engine 命名慣例。指定
--subnet-mode custom
以避免使用預設的自動模式,不然系統會自動在每個 Compute Engine 地區建立子網路。詳情請參閱「子網路建立模式」。 - 建立子網路,並指定地區和 IP 範圍。
gcloud compute networks subnets create SUBNETWORK_NAME \ --network NETWORK_NAME --region REGION --range RANGE
更改下列內容:
SUBNETWORK_NAME
:新子網路的名稱NETWORK_NAME
:您在上一個步驟中建立的網路名稱REGION
:您希望子網路所在的區域RANGE
:以 CIDR 格式指定的 IP 位址範圍,例如10.1.0.0/24
如果您打算新增多個子網路,請為網路中的每個子網路指派不重疊的 CIDR IP 範圍。請注意,每個子網路及其內部 IP 範圍都會對應至單一地區。
- (選用) 重複上述步驟以新增其他子網路。
從 Oracle 下載 Oracle Linux 映像檔,該映像檔已通過 SAP 認證,可在 Google Cloud上與 SAP NetWeaver 應用程式搭配使用。
如要瞭解已獲 SAP 認證的 OS 版本,請參閱「支援的作業系統」。
將映像檔匯入至 Compute Engine 映像檔:
建立自訂 OS 映像檔:
使用匯入的映像檔建立小型 VM,並將執行個體名稱設為
vm-ol-gvnic
。如要瞭解如何執行這項操作,請參閱「透過自訂映像檔建立執行個體」一文。
使用 SSH 連線至執行個體。
安裝
gve
驅動程式:yum install kernel-uek-modules-extra.x86_64 echo gve > /etc/modules-load.d/gve.conf
停止執行個體。
如要瞭解如何執行這項操作,請參閱「停止或重新啟動 Compute Engine 執行個體」。
關閉連結至運算執行個體的磁碟的預設自動刪除行為。這可避免在您刪除運算執行個體時,一併刪除開機磁碟。
gcloud compute instances set-disk-auto-delete vm-ol-gvnic \ --no-auto-delete \ --disk=vm-ol-gvnic
為開機磁碟建立暫時映像檔:
gcloud compute images create ol-uek-temp \ --source-disk=vm-ol-gvnic \ --source-disk-zone=ZONE \ --storage-location=LOCATION
更改下列內容:
ZONE
:開機磁碟部署的位置LOCATION
:您要儲存圖片的 Cloud Storage 位置
使用您建立的暫時映像檔,建立支援 Google Virtual NIC (gVNIC) 的開機磁碟映像檔:
gcloud compute images create ol-uek-production \ --source-image=ol-uek-temp \ --source-image-project=PROJECT_ID \ --guest-os-features="GVNIC" \ --storage-location=LOCATION
更改下列內容:
PROJECT_ID
:來源圖片所在的Google Cloud 專案 IDLOCATION
:您要儲存圖片的 Cloud Storage 位置
除了啟用 gVNIC 的開機磁碟映像檔之外,請刪除您在本節中建立的臨時映像檔和 VM:
gcloud compute images delete ol-uek-temp gcloud compute instances delete vm-ol-gvnic --zone=ZONE gcloud compute disks delete DISK_NAME --zone=ZONE
更改下列內容:
ZONE
:開機磁碟部署的位置DISK_NAME
:要刪除的臨時 VM 開機磁碟名稱
前往 Google Cloud 控制台的 Compute Engine「VM instances」(VM 執行個體) 頁面。
點選「建立執行個體」。
在「Name」欄位中,輸入執行個體的名稱。
名稱長度不得超過 13 個字元,因為這是 SAP 支援的字元數上限。詳情請參閱 SAP 注意事項 611361:SAP ABAP 平台伺服器的主機名稱。
在「Region」(區域) 和「Zone」(可用區) 欄位中,選取要建立執行個體的區域和可用區。
選取這些項目時,請務必考量內部資源和使用者的位置,以及您要使用的機器類型是否可用。如要瞭解如何選取區域和可用區,請參閱「規劃區域和可用區」一文。
將機器類型變更為其中一個支援的機器類型。
如要瞭解支援的機器類型及其永久磁碟限制,請參閱「規劃 SAP NetWeaver 的 Oracle Database 實作方式」。
前往「OS 和儲存空間」分頁。
按一下 [變更]。
在「Boot disk」窗格中執行下列操作:
- 在「Operating system」(作業系統) 欄位中,選取「Oracle Linux」。
- 在「Version」欄位中,選取所需版本。
- 查看其他預設設定,並視需要進行修改。
- 按一下 [選取]。
為 Oracle 資料庫建立其他磁碟。如要瞭解需要為磁碟配置資源的雲端硬碟,請參閱「部署架構」。
如要建立磁碟,請按照下列步驟操作:
- 在「Additional disks」(其他磁碟) 下方,點選 [Add new disk] (增加新磁碟)。
- 在「Name」(名稱) 欄位中,輸入磁碟的名稱。
- 在「磁碟儲存空間類型」欄位中,選取「空白磁碟」。
- 在「磁碟類型」欄位中,選取支援的磁碟類型。如要瞭解支援的磁碟類型,請參閱規劃指南中的「區塊儲存空間」。
- 在「Size」欄位中,設定符合效能需求的值。
- 按一下 [儲存]。
- 針對需要配置的每個磁碟重複上述步驟。
按一下 [建立]。
在 Google Cloud 控制台中,前往 Compute Engine 的「Images」(映像檔) 頁面。
選取您在前一個部分中準備的 Oracle Linux 映像檔,然後按一下「建立執行個體」。
在「Name」欄位中,輸入執行個體的名稱。
名稱長度不得超過 13 個字元,因為這是 SAP 支援的字元數上限。詳情請參閱 SAP 注意事項 611361:SAP ABAP 平台伺服器的主機名稱。
在「Region」(區域) 和「Zone」(可用區) 欄位中,選取要建立執行個體的區域和可用區。
選取這些項目時,請務必考量內部資源和使用者的位置,以及您要使用的機器類型是否可用。如要瞭解如何選取區域和可用區,請參閱「規劃區域和可用區」一文。
將機器類型變更為其中一個支援的機器類型。
如要瞭解支援的機器類型及其永久磁碟限制,請參閱「規劃 SAP NetWeaver 的 Oracle Database 實作方式」。
前往「OS 和儲存空間」分頁。
為 Oracle 資料庫建立其他磁碟。如要瞭解需要為磁碟配置資源的雲端硬碟,請參閱「部署架構」。
如要建立磁碟,請按照下列步驟操作:
- 在「額外儲存空間和 VM 備份」下方,點選「新增磁碟」。
- 在「Name」(名稱) 欄位中,輸入磁碟的名稱。
- 在「磁碟儲存空間類型」欄位中,選取「空白磁碟」。
- 在「磁碟類型」欄位中,選取支援的磁碟類型。如要瞭解支援的磁碟類型,請參閱規劃指南中的「區塊儲存空間」。
- 在「Size」欄位中,設定符合效能需求的值。
- 按一下 [儲存]。
- 針對需要配置的每個磁碟重複上述步驟。
按一下 [建立]。
- 使用 SSH 連線至運算執行個體。
- 請確認已連結至運算執行個體的 Hyperdisk 或 Persistent Disk 磁碟區足夠大,可為執行個體提供高效的儲存空間。
- 使用 LVM 針對所有必要的硬碟格式化並掛接邏輯磁碟區。
- 使用 SSH 連線至 Compute Engine 執行個體。
請按照 Oracle 的建議,確認已停用 Transparent HugePages 功能。
如要確認這項資訊,請按照下列步驟操作:
執行下列指令,檢查是否已啟用 Transparent HugePages 功能:
cat /sys/kernel/mm/transparent_hugepage/enabled
如果已啟用透明巨型頁面功能,請執行下列指令將其停用:
ORIGINAL=$(grep GRUB_CMDLINE_LINUX /etc/default/grub) INSERT=" transparent_hugepage=never" TARGET=$(printf '%s\n' "$ORIGINAL" | sed -e "s/\"$/$INSERT&/") sed -i "s%^GRUB_CMDLINE_LINUX.*$%$TARGET%" /etc/default/grub grub2-mkconfig -o /boot/grub2/grub.cfg
重新啟動執行個體。如要瞭解如何執行這項操作,請參閱「重新啟動執行個體」。
如需 SAP 提供的這些功能相關資訊,請參閱下列 SAP 注意事項:
安裝 Oracle Database 預先安裝 RPM:
yum install oracle-database-preinstall-19c
如果您使用的是 Oracle Linux 9,請一併執行下列指令:
yum in libxcrypt-compat
- RHEL:所有「SAP 專用」映像檔
- SLES:SLES 15 SP4 for SAP 以上版本
前往 Google Cloud 控制台的「IAM」頁面。
選取 Google Cloud 專案。
找出您想新增角色的服務帳戶。
- 如果服務帳戶不在主體清單中,表示尚未獲派任何角色。按一下「Add」,然後輸入服務帳戶的電子郵件地址。
- 如果服務帳戶已在使用者清單中,表示已獲指派角色。找到要編輯的服務帳戶,然後按一下「編輯」按鈕。
從可用角色清單中選取必要角色:
- Compute Engine > Compute 檢視器
- Monitoring > Monitoring 檢視器
- Workload Manager > Workload Manager 深入分析資訊寫入者
按一下 [Add] (新增) 或 [Save] (儲存),即可將角色套用到服務帳戶。
- Cloud Platform:已啟用
- Compute Engine:唯讀
- Stackdriver Monitoring API:唯讀
建立與運算執行個體之間的 SSH 連線。
如要安裝代理程式的 3.8 版 (最新版),請執行下列指令:
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
與 Compute Engine 執行個體建立 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 系統中輸入交易
ST06
。 在「Overview」(總覽) 窗格中,查看以下欄位的可用性和內容,確認 SAP 和 Google 監控基礎架構已做好正確的端對端設定:
- 雲端服務供應商:
Google Cloud Platform
- Enhanced Monitoring Access (強化版監控功能存取權):
TRUE
- Enhanced Monitoring Details (強化版監控功能詳細資料):
ACTIVE
- 雲端服務供應商:
在您建立的 Compute Engine 執行個體上安裝支援的 Oracle Database。
如要瞭解支援的 Oracle Database 版本和功能,請參閱「支援的 Oracle Database 版本和功能」。
如要瞭解如何安裝資料庫,請參閱下列 SAP 注意事項:
- 如要針對以 Oracle Linux 為基礎的 Oracle Database 獲得 Oracle 和 SAP 的支援,請務必購買 Oracle Linux Premier Support。
您必須符合支援方案的最低需求,才能獲得 SAP 系統和其使用的 Google Cloud基礎架構和服務支援服務。
如要進一步瞭解Google Cloud上 SAP 的最低支援需求,請參閱:
- 取得 Google Cloud上的 SAP 支援
- SAP 注意事項 2456406 - Google Cloud 平台上的 SAP:支援必要條件 (必須使用 SAP 使用者帳戶)
如要瞭解 SAP 對 Oracle 的支援,請參閱 SAP 附註 2799900 - Central Technical Note for Oracle Database 19c。
建立虛擬私人雲端網路
基於安全性考量,請建立新的網路。您可以新增防火牆規則或使用另一個存取權控管方法,藉此控管具有存取權的對象。
如果您的專案具有預設的虛擬私有雲網路,請勿使用。請建立您自己專屬的虛擬私有雲網路,確保系統只套用您明確建立的防火牆規則。
在部署期間,Compute Engine 執行個體通常需要網際網路的存取權,才能下載 Google Cloud的 SAP 代理程式。如果您使用 Google Cloud提供的其中一種 SAP 認證 Linux 映像檔,則計算機執行個體也需要存取網際網路,才能註冊憑證並且存取 OS 供應商存放區。具有 NAT 閘道和 VM 網路標記的設定即可支援上述存取需求,即便目標運算執行個體沒有外部 IP 也沒關係。
如要設定網路:
控制台
gcloud
設定 NAT 閘道
如果您需要建立一或多個沒有公開 IP 位址的 VM,就必須使用網路位址轉譯 (NAT),讓 VM 能夠存取網際網路。使用 Cloud NAT,這是一項 Google Cloud 分散式軟體定義的受控服務,可讓 VM 將傳出封包傳送至網際網路,並接收任何相應的已建立傳入回應封包。或者,您也可以設定個別的 VM 做為 NAT 閘道。
如要為專案建立 Cloud NAT 執行個體,請參閱「使用 Cloud NAT」。
為專案設定 Cloud NAT 後,VM 執行個體就能在不使用公開 IP 位址的情況下,安全地存取網際網路。
準備 Oracle Linux 映像檔
來自 Compute Engine 的映像檔
如果您使用的是 Compute Engine 提供的 Oracle Linux 映像檔,可以略過本節,因為這些映像檔包含在 Google Cloud上搭配 SAP NetWeaver 系統執行 Oracle 資料庫所需的套件。
圖片來源:Oracle
如要準備執行 SAP 系統 Oracle 資料庫所需的 Oracle Linux 映像檔,您必須將映像檔匯入 Google Cloud 專案,並安裝必要的驅動程式。
如要準備 Oracle Linux 映像檔,請按照下列步驟操作:
為 Oracle Database 建立 Compute Engine 執行個體
建立 Compute Engine 執行個體時,您可以指定多個選項,例如機器類型、建立執行個體的地區,以及用於儲存空間的額外磁碟。
如要為 Oracle Database 建立 Compute Engine 執行個體,請完成下列步驟:
來自 Compute Engine 的映像檔
圖片來源:Oracle
格式化及掛接磁碟
如要瞭解磁碟磁碟機和其分組,請參閱部署架構。
準備作業系統
安裝 Google Cloud的 Agent for SAP
Google Cloud的 SAP 代理程式是 SAP 支援在 Google Cloud上執行的 SAP 系統所需的工具,包括 SAP NetWeaver、SAP HANA、SAP ASE、SAP MaxDB 等。
在 Compute Engine 執行個體上安裝 Google Cloud的 SAP 代理程式時,代理程式會針對 SAP Host Agent 指標,結合 Cloud Monitoring 和 Compute Engine API 的監控資料,並將這些資料提供給 SAP Host Agent。
如果您使用 Google Cloud提供的下列 RHEL 或 SLES「for SAP」OS 映像檔, Google Cloud的 SAP 代理程式會與 OS 映像檔一併封裝:
如要瞭解 Google Cloud的 Agent for SAP 支援的作業系統,請參閱「支援的作業系統」。
代理程式的先決條件
安裝 Google Cloud的 SAP 代理程式前,請務必確認已符合下列先決條件。
設定必要的 IAM 角色
Google Cloud的 SAP 代理程式所使用的服務帳戶至少必須具備Compute 檢視者 (roles/compute.viewer
)、監控檢視者 (roles/monitoring.viewer
) 和 Workload Manager 深入分析寫入者 (roles/workloadmanager.insightWriter
) 角色。
如要為服務帳戶新增必要角色,請按照下列步驟操作:
啟用 Google Cloud API 存取權
Compute Engine 建議您設定運算執行個體,允許所有 Cloud API 的所有存取權範圍,並僅使用執行個體服務帳戶的 IAM 權限來控管資源存取權。 Google Cloud 詳情請參閱「建立使用使用者管理服務帳戶的 VM」。
如果您限制 Cloud API 存取權, Google Cloud的 SAP 代理程式就需要在主機 Compute Engine 執行個體上設定下列最低 Cloud API 存取範圍:
如果您要在沒有外部 IP 位址的運算執行個體上執行 SAP 應用程式,就必須在運算執行個體的子網路上啟用私人 Google 存取權 ,讓 Google Cloud的 SAP 代理程式可以存取 Google API 和服務。如要在子網路中啟用私人 Google 存取權,請參閱「設定私人 Google 存取權」。
安裝代理程式
如要在使用 Oracle Linux 的 Compute Engine 執行個體上安裝 Google Cloud的 Agent for SAP,請按照下列步驟操作:
確認代理程式是否正在執行
如要確認代理程式是否正在執行,請按照下列步驟操作:
如果代理程式未執行,請重新啟動代理程式。
確認 SAP Host Agent 正在接收指標
如要確認Google Cloud的 Agent for SAP 是否收集基礎架構指標,並正確傳送至 SAP Host Agent,請按照下列步驟操作:
安裝 Oracle 資料庫
取得支援
如果是基礎架構或服務相關問題,請與 Cloud 客戶服務團隊聯絡。 Google Cloud 您可以在 Google Cloud 控制台的「支援總覽」頁面中找到聯絡資訊。如果客戶服務團隊判定問題出在 SAP 系統,就會將您轉介給 SAP 支援團隊。
如要進一步瞭解 SAP 產品相關問題,請向 SAP 支援團隊登錄支援要求。SAP 會評估支援票證,如確定為 Google Cloud基礎架構方面的問題,就會將票證轉移至系統中的適當Google Cloud 元件:BC-OP-LNX-GOOGLE
或 BC-OP-NT-GOOGLE
。