適用於 SAP 工作負載的 IBM Db2 Azure 虛擬機器 DBMS 部署
使用 Microsoft Azure,您可以將目前在 IBM Db2 for Linux、UNIX 及 Windows (LUW) 上執行的 SAP 應用程式移轉至 Azure 虛擬機器。 透過 IBM Db2 for LUW 上的 SAP,系統管理員和開發人員仍然可以使用可在內部部署使用的相同開發和管理工具。 在適用於 LUW 的 IBM Db2 上執行 SAP Business Suite 的一般資訊,可以透過 適用於 Linux、UNIX 和 Windows 的 IBM Db2 上的 SAP 中的 SAP 社群網路 (SCN) 取得。
如需有關 Azure 中 Db2 for LUW 上 SAP 的詳細資訊和更新,請參閱 SAP 附註 2233094。
目前有各種文章提到 Azure 上的 SAP 工作負載。 建議您從開始使用 Azure 上的 SAP VM 開始,然後閱讀其他感興趣的領域。
下列的 SAP 附註,在本文所討論的領域上與 Azure 上的 SAP 有關:
附註編號 | 標題 |
---|---|
1928533 | Azure 上的 SAP 應用程式︰支援的產品和 Azure VM 類型 |
2015553 | Microsoft Azure 上的 SAP:支援的必要條件 |
1999351 | 疑難排解適用於 SAP 且已強化的 Azure 監視功能 |
2178632 | Microsoft Azure 上的 SAP 主要監視度量 |
1409604 | Windows 上的虛擬化︰增強型監視功能 |
2191498 | Linux 和 Azure 上的 SAP:增強型監視功能 |
2233094 | DB6︰Azure 上使用 IBM DB2 for Linux, UNIX, and Windows 的應用程式 - 其他資訊 |
2243692 | Microsoft Azure (IaaS) VM 上的 Linux:SAP 授權問題 |
1984787 | SUSE LINUX Enterprise Server 12:安裝注意事項 |
2002167 | Red Hat Enterprise Linux 7.x:安裝和升級 |
1597355 | 適用於 Linux 的交換空間建議 |
如需本文件的預讀資訊,請檢閱適用於 SAP 工作負載的 Azure 虛擬機器 DBMS 部署考量。 檢閱 Azure 上 SAP 工作負載中的其他指南。
IBM Db2 for Linux, UNIX, and Windows 支援版本
當 Db2 版本為 10.5 時,支援 Microsoft Azure 虛擬機器中 IBM Db2 for LUW 上的 SAP。
如需有關支援之 SAP 產品和 Azure VM (虛擬機器) 類型的資訊,請參閱 SAP 附註 1928533。
在 Azure VM 中安裝 SAP 的 IBM Db2 for Linux, UNIX, and Windows 組態指導方針
儲存體設定
如需適用於 SAP 工作負載的 Azure 儲存體類型概觀,請參閱適用於 SAP 工作負載的 Azure 儲存體類型一文,所有資料庫檔案都必須儲存在 Azure 區塊存放裝置的掛接磁碟上 (Windows:NTFS、Linux:xfs、在 Db2 11.1 或 ext3 中受支援)。
Db2 資料庫檔案不支援遠端共用磁碟區,例如所列案例中的 Azure 服務:
適用於所有客體 OS 的 Microsoft Azure 檔案服務。
適用於在 Windows 客體 OS 中所執行的 Db2 的 Azure NetApp Files。
Db2 資料庫檔案不支援遠端共用磁碟區,例如所列案例中的 Azure 服務:
- 支援在裝載於 Azure NetApp Files 上的 NFS 共用上裝載 Linux 客體 OS 型 Db2 資料和記錄檔!
使用以 Azure 分頁 Blob 儲存體或受控磁碟為基礎的磁碟時,適用於 SAP 工作負載的 Azure 虛擬機器 DBMS 部署考量中的描述,同樣適用於利用 Db2 DBMS (資料庫管理系統) 所做的部署。
如同先前在文件通用部分中所述,適用於 Azure 磁碟的 IOPS (每秒的 I/O 作業數) 輸送量上有配額存在。 確切的配額會根據使用的 VM 類型而定。 如需 VM 類型及其配額的清單,請參閱這裡 (Linux) 和這裡 (Windows)。
只要每個磁碟上目前有足夠的 IOPS 配額,就可以將所有資料庫檔案儲存於單一掛接的磁碟上。 而您一律要將資料檔案和交易記錄檔,分別儲存在不同的磁碟/VHD 上。
針對效能考量,也請參閱 SAP 安裝指南中的<適用於資料庫目錄的資料安全性和效能考量>章節。
或者,如同適用於 SAP 工作負載的 Azure 虛擬機器 DBMS 部署考量所述,您也可以使用 Windows 儲存集區 (僅適用於 Windows Server 2012 和更新版本)。 在 Linux 上,可以使用 LVM 或 mdadm,在多個磁碟上建立一個大型邏輯裝置。
對於 Azure M 系列虛擬機器來說,使用 Azure 寫入加速器時,和 Azure 進階儲存體相比,寫入交易記錄的延遲時間可縮短好幾倍。 因此,您應該針對組成 Db2 交易記錄磁碟區的一或多個 VHD 來部署 Azure 寫入加速器。 如需詳細資訊,請參閱寫入加速器文件。
IBM Db2 LUW 11.5 已發佈對 4 KB 磁區大小的支援。 不過您需要在 11.5 版本中透過 db2set DB2_4K_DEVICE_SUPPORT=ON 的組態設定,來啟用 4 KB 磁區大小的使用,如下列所述:
- Db1 11.5 效能變數 (英文)
- Db2 登錄和環境變數 (英文)
針對較舊的 Db2 版本,必須使用 512 位元組的磁區大小。 進階 SSD 硬碟為 4 KB 原生,且具有 512 位元組的模擬。 Ultra 磁碟預設會使用 4 KB 磁區大小。 您可以在建立 Ultra 磁碟的期間啟用 512 位元組磁區大小。 詳細資料請參閱 Azure Ultra 磁碟 (部分機器翻譯)。 此 512 位元組磁區大小是版本低於 11.5 的 IBM Db2 LUW 的必要條件。
在 Windows 上,若針對 log_dir
、sapdata
和 saptmp
目錄的 Db2 儲存路徑使用儲存體集區,您必須指定實體磁碟磁區大小為 512 位元組。 使用 Windows 儲存集區時,您必須透過使用參數 -LogicalSectorSizeDefault
的命令列介面,以手動方式建立儲存集區。 如需詳細資訊,請參閱 New-StoragePool。
IBM Db2 部署的 VM 和磁碟結構建議
SAP 支援附註 1928533 中所列的任何 VM 類型都支援適用於 SAP NetWeaver 應用程式的 IBM Db2。 執行 IBM Db2 資料庫的建議 VM 系列是 Esd_v4/Eas_v4/Es_v3 和 M/M_v2 系列,用於大型多 TB 資料庫。 啟用 M 系列寫入加速器,即可改善 IBM Db2 交易記錄磁碟寫入效能。
以下是各種大小和用途的 SAP on Db2 部署基準設定,從小型到超大型。
重要
下列 VM 類型是符合每個類別之 vCPU 和記憶體準則的範例。 儲存體設定是以 Azure 進階儲存體 v1 為基礎。 IBM Db2 也完全支援進階 SSD v2 和 Azure Ultra 磁碟,並且可用於部署。 使用容量、高載輸送量和高載 IOPS 的值來定義 Ultra 磁碟或進階 SSD v2 組態。 您可以將 /db2/<SID>
/log_dir 的 IOPS 限制為大約 5000 IOPS。 如果這些基準建議不符合需求,請將輸送量和 IOPS 調整為特定工作負載
超小型 SAP 系統:資料庫大小 50 - 200 GB:範例解決方案管理員
VM 大小/範例 | Db2 掛接點 | Azure 進階磁碟 | 磁碟數 | IOPS | 輸送 量 [MB/秒] |
大小 [GB] | 高載 IOPS | 高載輸送 量 [GB] |
等量大小 | 快取功能 |
---|---|---|---|---|---|---|---|---|---|---|
vCPU: 4 | /db2 | P6 | 1 | 240 | 50 | 64 | 3,500 | 170 | ||
RAM:~32 GiB | /db2/<SID> /sapdata |
P10 | 2 | 1,000 | 200 | 256 | 7,000 | 340 | 256 KB |
ReadOnly |
E4(d)s_v5 | /db2/<SID> /saptmp |
P6 | 1 | 240 | 50 | 128 | 3,500 | 170 | ||
E4(d)as_v5 | /db2/<SID> /log_dir |
P6 | 2 | 480 | 100 | 128 | 7,000 | 340 | 64 KB |
|
... | /db2/<SID> /offline_log_dir |
P10 | 1 | 500 | 100 | 128 | 3,500 | 170 |
小型 SAP 系統:資料庫大小 200 - 750 GB:小型商務套件
VM 大小/範例 | Db2 掛接點 | Azure 進階磁碟 | 磁碟數 | IOPS | 輸送 量 [MB/秒] |
大小 [GB] | 高載 IOPS | 高載輸送 量 [GB] |
等量大小 | 快取功能 |
---|---|---|---|---|---|---|---|---|---|---|
vCPU: 16 | /db2 | P6 | 1 | 240 | 50 | 64 | 3,500 | 170 | ||
RAM:~128 GiB | /db2/<SID> /sapdata |
P15 | 4 | 4,400 | 500 | 1.024 | 14,000 | 680 | 256 KB | ReadOnly |
E16(d)s_v5 | /db2/<SID> /saptmp |
P6 | 2 | 480 | 100 | 128 | 7,000 | 340 | 128 KB | |
E16(d)as_v5 | /db2/<SID> /log_dir |
P15 | 2 | 2,200 | 250 | 512 | 7,000 | 340 | 64 KB |
|
... | /db2/<SID> /offline_log_dir |
P10 | 1 | 500 | 100 | 128 | 3,500 | 170 |
適中 SAP 系統:資料庫大小 500 - 1000 GB:小型商務套件
VM 大小/範例 | Db2 掛接點 | Azure 進階磁碟 | 磁碟數 | IOPS | 輸送 量 [MB/秒] |
大小 [GB] | 高載 IOPS | 高載輸送 量 [GB] |
等量大小 | 快取功能 |
---|---|---|---|---|---|---|---|---|---|---|
vCPU: 32 | /db2 | P6 | 1 | 240 | 50 | 64 | 3,500 | 170 | ||
RAM:~256 GiB | /db2/<SID> /sapdata |
P30 | 2 | 10,000 | 400 | 2.048 | 10,000 | 400 | 256 KB | ReadOnly |
E32(d)s_v5 | /db2/<SID> /saptmp |
P10 | 2 | 1,000 | 200 | 256 | 7,000 | 340 | 128 KB | |
E32(d)as_v5 | /db2/<SID> /log_dir |
P20 | 2 | 4,600 | 300 | 1.024 | 7,000 | 340 | 64 KB |
|
M32ls | /db2/<SID> /offline_log_dir |
P15 | 1 | 1,100 | 125 | 256 | 3,500 | 170 |
大型 SAP 系統:資料庫大小 750 - 2000 GB:商務套件
VM 大小/範例 | Db2 掛接點 | Azure 進階磁碟 | 磁碟數 | IOPS | 輸送 量 [MB/秒] |
大小 [GB] | 高載 IOPS | 高載輸送 量 [GB] |
等量大小 | 快取功能 |
---|---|---|---|---|---|---|---|---|---|---|
vCPU: 64 | /db2 | P6 | 1 | 240 | 50 | 64 | 3,500 | 170 | ||
RAM:~512 GiB | /db2/<SID> /sapdata |
P30 | 4 | 20,000 | 800 | 4.096 | 20,000 | 800 | 256 KB | ReadOnly |
E64(d)s_v5 | /db2/<SID> /saptmp |
P15 | 2 | 2,200 | 250 | 512 | 7,000 | 340 | 128 KB | |
E64(d)as_v5 | /db2/<SID> /log_dir |
P20 | 4 | 9,200 | 600 | 2.048 | 14,000 | 680 | 64 KB |
|
M64ls | /db2/<SID> /offline_log_dir |
P20 | 1 | 2,300 | 150 | 512 | 3,500 | 170 |
大型多 TB SAP 系統:資料庫大小 2 TB+:全球商務套件系統
特別是對於這類較大型的系統,請務必評估系統目前正在其中執行的基礎結構,以及這些系統的資源耗用量資料,以找出 Azure 計算和儲存體基礎結構及組態的最符合項目。
VM 名稱 / 大小 | Db2 掛接點 | Azure 進階磁碟 | 磁碟數 | IOPS | 輸送 量 [MB/秒] |
大小 [GB] | 高載 IOPS | 高載輸送 量 [GB] |
等量大小 | 快取功能 |
---|---|---|---|---|---|---|---|---|---|---|
vCPU:=>128 | /db2 | P10 | 1 | 500 | 100 | 128 | 3,500 | 170 | ||
RAM:=>2,048 GiB | /db2/<SID> /sapdata |
P40 | 4 | 30,000 | 1.000 | 8.192 | 30,000 | 1.000 | 256 KB | ReadOnly |
M128s_v2 | /db2/<SID> /saptmp |
P20 | 2 | 4,600 | 300 | 1.024 | 7,000 | 340 | 128 KB | |
M176s_2_v3 | /db2/<SID> /log_dir |
P30 | 4 | 20,000 | 800 | 4.096 | 20,000 | 800 | 64 KB |
寫入- 加速器 |
M176s_3_v3, M176s_4_v3 |
/db2/<SID> /offline_log_dir |
P30 | 1 | 5,000 | 200 | 1.024 | 5,000 | 200 |
使用 Azure NetApp Files
Suse 或 Red Hat Linux 客體 OS 中裝載的 IBM Db2 支援以 Azure NetApp Files (ANF) 為基礎的 NFS v4.1 磁碟區使用。 您應該至少建立四個不同的磁碟區,列出:
- 適用於 saptmp1、sapmnt、usr_sap、
<sid>
_home、db2<sid>
_home、db2_software 的共用磁碟區 - 一個適用於 sapdata1 至 sapdatan 的資料磁碟區
- 重做記錄目錄的一個記錄磁碟區
- 記錄封存和備份的一個磁碟區
第五個潛在磁碟區可以是一個用於長期備份的 ANF 磁碟區,用來進行快照並將快照集儲存在 Azure Blob 存放區中。
設定看起來可能如下所示:
效能層級和 ANF 裝載磁碟區的大小必須根據效能需求來選擇。 不過,我們建議針對資料和記錄磁碟區採用 Ultra 效能等級。 不支援將資料與記錄磁碟區的區塊儲存體和共用儲存體類型混合使用。
在掛接選項中,掛接這些磁碟區可能看起來像這樣 (您需要以 SAP 系統的 SID 取代 <SID>
和 <sid>
):
vi /etc/idmapd.conf
# Example
[General]
Domain = defaultv4iddomain.com
[Mapping]
Nobody-User = nobody
Nobody-Group = nobody
mount -t nfs -o rw,hard,sync,rsize=262144,wsize=262144,sec=sys,vers=4.1,tcp 172.17.10.4:/db2shared /mnt
mkdir -p /db2/Software /db2/AN1/saptmp /usr/sap/<SID> /sapmnt/<SID> /home/<sid>adm /db2/db2<sid> /db2/<SID>/db2_software
mkdir -p /mnt/Software /mnt/saptmp /mnt/usr_sap /mnt/sapmnt /mnt/<sid>_home /mnt/db2_software /mnt/db2<sid>
umount /mnt
mount -t nfs -o rw,hard,sync,rsize=262144,wsize=262144,sec=sys,vers=4.1,tcp 172.17.10.4:/db2data /mnt
mkdir -p /db2/AN1/sapdata/sapdata1 /db2/AN1/sapdata/sapdata2 /db2/AN1/sapdata/sapdata3 /db2/AN1/sapdata/sapdata4
mkdir -p /mnt/sapdata1 /mnt/sapdata2 /mnt/sapdata3 /mnt/sapdata4
umount /mnt
mount -t nfs -o rw,hard,sync,rsize=262144,wsize=262144,sec=sys,vers=4.1,tcp 172.17.10.4:/db2log /mnt
mkdir /db2/AN1/log_dir
mkdir /mnt/log_dir
umount /mnt
mount -t nfs -o rw,hard,sync,rsize=262144,wsize=262144,sec=sys,vers=4.1,tcp 172.17.10.4:/db2backup /mnt
mkdir /db2/AN1/backup
mkdir /mnt/backup
mkdir /db2/AN1/offline_log_dir /db2/AN1/db2dump
mkdir /mnt/offline_log_dir /mnt/db2dump
umount /mnt
注意
需要掛接選項硬式和同步處理
備份/還原
針對 IBM Db2 for LUW 的備份/還原功能,是利用與標準 Windows Server 作業系統和 Hyper-V 上所做的相同方式來支援。
您必須確定您擁有有效的資料庫備份策略。
如同裸機部署,備份/還原效能取決於可以平行讀取的磁碟區數目,以及這些磁碟區可能的輸送量。 此外,備份壓縮所使用的 CPU 耗用量在最多有 8 個 CPU 執行緒的 VM 上扮演重要的角色。 因此,您可以假設︰
- 用來儲存資料庫裝置的磁碟數目越少,讀取的整體輸送量就越小
- VM 中 CPU 執行緒數目越小,備份壓縮的影響就越嚴重
- 要寫入備份的目標 (等量目錄、磁碟) 越少,輸送量就越低
若要增加要寫入的目標數目,根據您的需求,有兩個選項可以使用/相結合:
- 在多個磁碟上等量配置備份目標磁碟區,以改善該等量磁碟區上的 IOPS 輸送量
- 使用一個以上的目標目錄來寫入備份
注意
在 Windows 上的 Db2 不支援 Windows VSS 技術。 如此一來,Azure 備份服務的應用程式一致 VM 備份,便不能用於部署了 Db2 DBMS 的 VM。
高可用性和災害復原
Linux Pacemaker
重要
針對 Db2 11.5.6 (含) 以上版本,我們強烈建議使用 IBM Pacemaker 的整合式解決方案。
- 使用 Pacemaker 的整合式解決方案
- Microsoft Azure 上可用的替代設定或其他設定 支援搭配 Pacemaker 的 Db2 高可用性災害復原 (HADR)。 支援 SLES 和 RHEL 作業系統。 此設定可啟用適用於 SAP 的 IBM Db2 的高可用性。 部署指南:
- SLES:使用 Pacemaker 在 Azure VM 上的 SUSE Linux Enterprise Server 實現 IBM Db2 LUW 的高可用性
- RHEL:Red Hat Enterprise Linux Server 上 Azure VM 的 IBM Db2 LUW 高可用性
Windows 叢集伺服器
不支援 Windows Server 容錯移轉叢集 (WSFC) 也稱為 Microsoft 叢集伺服器 (MSCS)。
支援 Db2 高可用性災害復原 (HADR)。 如果 HA 組態的虛擬機器具有運作中的名稱解析,則 Azure 中的設定與內部部署中完成的任何設定並無任何差別。 不建議只依賴 IP 解析。
請勿將異地複寫使用於可儲存資料庫磁碟的儲存體帳戶。 如需詳細資訊,請參閱適用於 SAP 工作負載的 Azure 虛擬機器 DBMS 部署考量文件。
加速網路
至於 Windows 上的 Db2 部署,強烈建議按照 Azure 加速網路文件所述,使用 Azure 的加速網路功能。 另請考慮在適用於 SAP 工作負載的 Azure 虛擬機器 DBMS 部署考量中所提出的建議。
Linux 部署專屬的詳細資料
只要每個磁碟上目前有足夠的 IOPS 配額,就可以將所有資料庫檔案儲存於單一磁碟上。 而您應一律將資料檔案和交易記錄檔,分別儲存在不同的磁碟上。
如果單一 Azure VHD 的 IOPS 或 I/O 輸送量不足夠,您可以按照適用於 SAP 工作負載的 Azure 虛擬機器 DBMS 部署考量文件所述,使用 LVM (邏輯磁碟區管理員) 或 MDADM,在多個磁碟上建立一個大型邏輯裝置。
如果磁碟包含適用於 sapdata
和 saptmp
目錄的 Db2 儲存路徑,您必須將實體磁碟磁區大小指定為 512 KB。
其他
所有其他一般領域 (例如「Azure 可用性設定組」或 SAP 監視) 也適用於使用 IBM 資料庫來部署 VM 的情況。 我們在適用於 SAP 工作負載 的 Azure 虛擬機器 DBMS 部署考量中所述的這些一般區域。
下一步
閱讀文章: