Azure 上的 SAP HANA 基礎結構設定和作業

本檔提供設定 Azure 基礎結構和在 Azure 原生虛擬機上部署之 SAP HANA 系統的指引。 本檔也包含 M128s VM SKU 的 SAP HANA 向外延展設定資訊。 本文件並非用來取代標準 SAP 檔,其中包含下列內容:

必要條件

若要使用本指南,您需要下列 Azure 元件的基本知識:

若要深入瞭解 Azure 上的 SAP NetWeaver 和其他 SAP 元件,請參閱 Azure 檔中SAP on Azure 一節。

基本設定考慮

下列各節說明在 Azure VM 上部署 SAP HANA 系統的基本設定考慮。

連線 至 Azure 虛擬機

如 Azure 虛擬機規劃指南中所述,有兩種基本方法可連線到 Azure VM:

  • 連線 透過跳躍 VM 或執行 SAP HANA 之 VM 上的因特網和公用端點。
  • 透過 連線 VPN 或 Azure ExpressRoute

生產案例需要透過 VPN 或 ExpressRoute 的站對站連線能力。 饋送至使用 SAP 軟體之生產案例中的非生產案例也需要這種類型的連線。 下圖顯示跨月台連線的範例:

Cross-site connectivity

選擇 Azure VM 類型

SAP 會列出可用於生產案例Azure VM 類型。 針對非生產案例,有更廣泛的原生 Azure VM 類型可供使用。

注意

針對非生產案例,請使用 SAP 附注中所列的 VM 類型 #1928533。 如需生產案例的 Azure VM 使用方式,請查看 SAP 已發佈 的認證 IaaS 平台清單中的 SAP HANA 認證 VM。

使用下列方式在 Azure 中部署 VM:

  • Azure 入口網站。
  • Azure PowerShell Cmdlet。
  • Azure CLI。

您也可以透過 SAP 雲端平臺,在 Azure VM 服務上部署完整的 SAP HANA 平臺。 安裝程式描述於 在 Azure 上部署 SAP S/4HANA 或 BW/4HANA。

重要

若要使用M208xx_v2 VM,您必須小心選取您的 Linux 映射。 如需詳細資訊,請參閱 記憶體優化虛擬機大小

SAP HANA 的 儲存體 組態

若要讓記憶體組態和記憶體類型與 Azure 中的 SAP HANA 搭配使用,請閱讀 SAP HANA Azure 虛擬機記憶體設定檔

設定 Azure 虛擬網路

當您透過 VPN 或 ExpressRoute 連線到 Azure 時,必須至少有一個透過虛擬網關聯機到 VPN 或 ExpressRoute 線路的 Azure 虛擬網路。 在簡單部署中,虛擬閘道也可以部署在裝載 SAP HANA 實例的 Azure 虛擬網路 (VNet) 子網中。 若要安裝 SAP HANA,您可以在 Azure 虛擬網路中建立兩個子網。 一個子網裝載 VM 以執行 SAP HANA 實例。 其他子網會執行 Jumpbox 或管理 VM 來裝載 SAP HANA Studio、其他管理軟體或您的應用程式軟體。

重要

由於功能不足,但效能不足,因此不支援 在 SAP 應用程式和 SAP NetWeaver、Hybris 或 S/4HANA 型 SAP 系統之間的通訊路徑中設定 Azure 網路虛擬設備 。 SAP 應用程式層和 DBMS 層之間必須是直接通訊。 只要這些 ASG 和 NSG 規則允許直接通訊,限制就不會包含 Azure ASG 和 NSG 規則。 不支援 NVA 的進一步案例是在代表 Linux Pacemaker 叢集節點和 SBD 裝置的 Azure VM 之間的通訊路徑,如 SUSE Linux Enterprise Server for SAP 應用程式的 Azure VM 上的 SAP NetWeaver 高可用性中所述。 或在 Azure VM 與 Windows Server SOFS 之間設定的通訊路徑中 ,如在 Azure 中使用檔案共用,在 Windows 故障轉移叢集上將 SAP ASCS/SCS 實例叢集進行叢集中所述。 通訊路徑中的 NVA 可以輕鬆地將兩個通訊夥伴之間的網路等待時間加倍,可以限制 SAP 應用層與 DBMS 層之間重要路徑中的輸送量。 在某些與客戶觀察到的案例中,NVA 可能會導致 Pacemaker Linux 叢集失敗,以防 Linux Pacemaker 叢集節點之間的通訊需要透過 NVA 與 SBD 裝置通訊。

重要

不支援的另一個設計是將 SAP 應用層和 DBMS 層隔離到未彼此對等互連的不同 Azure 虛擬網路。 建議您使用 Azure 虛擬網路內的子網來隔離 SAP 應用層和 DBMS 層,而不是使用不同的 Azure 虛擬網路。 如果您決定不遵循建議,而是將這兩個層區隔成不同的虛擬網路,則必須將兩 個虛擬網路對等互連。 請注意,兩個 對等互連 Azure 虛擬網路之間的網路流量受限於傳輸成本。 在 SAP 應用層與 DBMS 層之間交換許多 TB 的數據量,如果 SAP 應用層和 DBMS 層在兩個對等互連的 Azure 虛擬網路之間隔離,可能會累積大量成本。

如果您在不同的子網中部署 Jumpbox 或管理 VM,您可以為 HANA VM 定義 多個虛擬網路介面卡(vNIC), 並將每個 vNIC 指派給不同的子網。 有了多個 vNIC 的能力,您可以視需要設定網路流量分離。 例如,用戶端流量可以透過主要 vNIC 路由傳送,而系統管理流量則是透過第二個 vNIC 路由傳送。
您也會指派為這兩個虛擬 NIC 部署的靜態私人 IP 位址。

注意

您應該透過 Azure 將靜態 IP 位址指派給個別 vNIC。 您不應該將客體OS內的靜態IP位址指派給 vNIC。 某些 Azure 服務,例如 Azure 備份 服務會依賴至少主要 vNIC 設定為 DHCP,而不是靜態 IP 位址的事實。 另請參閱針對 Azure 虛擬機備份進行疑難解答檔。 如果您需要將多個靜態 IP 位址指派給 VM,則必須將多個 vNIC 指派給 VM。

不過,對於持久部署,您必須在 Azure 中建立虛擬網路架構。 此架構建議將連線至內部部署的 Azure VNet 閘道區隔成個別的 Azure VNet。 這個個別的 VNet 應該裝載離開內部部署或因特網的所有流量。 此方法可讓您部署軟體,以稽核和記錄在此個別中樞 VNet 中進入 Azure 中的虛擬資料中心的流量。 因此,您有一個 VNet 裝載與 Azure 部署內傳流量相關的所有軟體和組態。

Azure 虛擬數據中心:網路觀點和 Azure 虛擬數據中心和企業控制平面等文章提供虛擬數據中心方法和相關 Azure VNet 設計的詳細資訊。

注意

使用 Azure VNet 對等互連 在中樞 VNet 和輪輻 VNet 之間流動的流量受限於額外的 成本。 根據這些成本,您可能需要考慮在執行嚴格的中樞和輪輻網路設計,以及執行您連線到「輪輻」的多個 Azure ExpressRoute 網關 之間做出妥協,以略過 VNet 對等互連。 不過,Azure ExpressRoute 閘道也會帶來額外的 成本 。 您也可能遇到用於網路流量記錄、稽核和監視之第三方軟體的額外成本。 視一端透過 VNet 對等互連進行數據交換的成本,以及額外的 Azure ExpressRoute 閘道和其他軟體授權所建立的成本而定,您可以使用子網作為隔離單位,而不是 VNet,決定在一個 VNet 內進行微分割。

如需指派IP位址之不同方法的概觀,請參閱 Azure 中的IP位址類型和配置方法。

針對執行 SAP HANA 的 VM,您應該使用指派的靜態 IP 位址。 原因是 HANA 參考 IP 位址的某些組態屬性。

Azure 網路安全組 (NSG) 可用來將路由傳送至 SAP HANA 實例或 Jumpbox 的流量導向。 NSG 和最終 應用程式安全組 會與 SAP HANA 子網和管理子網相關聯。

若要在沒有站對站連線的 Azure 中部署 SAP HANA,您仍想要保護 SAP HANA 實例不受公用因特網的防護,並將它隱藏在正向 Proxy 後方。 在此基本案例中,部署依賴 Azure 內建 DNS 服務來解析主機名。 在使用公用IP位址的較複雜部署中,Azure 內建 DNS 服務特別重要。 使用 Azure NSG 和 Azure NVA 來控制、監視從因特網到 Azure 中 Azure VNet 架構的路由。 下圖顯示在中樞和輪輻 VNet 架構中部署沒有站對站連線的 SAP HANA 的粗略架構:

Rough deployment schema for SAP HANA without a site-to-site connection

如需有關如何使用 Azure NVA 來控制和監視來自因特網的存取,但沒有中樞和輪輻 VNet 架構的另一個描述,請參閱部署高可用性網路虛擬設備一文

設定 SAP HANA 向外延展的 Azure 基礎結構

若要找出經 OLAP 向外延展或 S/4HANA 向外延展認證的 Azure VM 類型,請查看 SAP HANA 硬體目錄。 數據行 『Clustering』 中的複選標記表示向外延展支援。 應用程式類型指出是否支援 OLAP 向外延展或 S/4HANA 向外延展。 如需認證向外延展之節點的詳細數據,請檢閱 SAP HANA 硬體目錄中所列特定 VM SKU 的專案。

在 Azure VM 中部署向外延展設定的最低 OS 版本,請檢查 SAP HANA 硬體目錄中所列特定 VM SKU 中專案的詳細數據。 在 n 節點 OLAP 向外延展組態中,一個節點會作為主要節點。 其他節點最多只能作為背景工作節點。 更多待命節點不會計入認證節點的數目

注意

只有使用 Azure NetApp Files 記憶體,才能使用 Sap HANA 與待命節點的 Azure VM 向外延展部署。 沒有其他 SAP HANA 認證的 Azure 記憶體允許設定 SAP HANA 待命節點

針對 /hana/shared,我們建議使用 Azure NetApp FilesAzure 檔案儲存體

向外延展組態中單一節點的典型基本設計,部署 /hana/shared 在 Azure NetApp Files 上,看起來如下:

Diagram that shows a typical basic design for a single node in a scale-out configuration.

SAP HANA 向外延展 VM 節點的基本組態如下所示:

  • 針對 /hana/shared,您可以使用透過 Azure NetApp Files 或 Azure 檔案儲存體 提供的原生 NFS 服務。
  • 所有其他磁碟區不會在不同的節點之間共用,而且不是以 NFS 為基礎。 本檔稍後會進一步提供使用非共用 /hana/data 和 /hana/log 向外延展 HANA 安裝的安裝組態和步驟。 如需可使用的 HANA 認證記憶體,請查看 SAP HANA Azure 虛擬機記憶體設定一文

調整磁碟區或磁碟的大小,您必須檢查 SAP HANA TDI 儲存體 需求,以取得所需的大小取決於背景工作節點數目。 文件會發行您需要套用的公式,以取得磁碟區的必要容量

相應放大 SAP HANA VM 之單一節點組態圖形中顯示的另一個設計準則是 VNet 或更好的子網組態。 SAP 強烈建議將面向用戶端/應用程式流量與 HANA 節點之間的通訊區隔開。 如圖所示,此目標可透過連結至 VM 的兩個不同的 vNIC 來達成。 這兩個 vNIC 位於不同的子網中,有兩個不同的IP位址。 接著,您可以使用 NSG 或使用者定義的路由來控制流量與路由規則的流量。

特別是在 Azure 中,沒有任何方法可以強制執行特定 vNIC 的服務品質和配額。 因此,用戶端/應用程式對向和節點內部通訊的區隔不會開啟任何機會,讓一個流量串流優先於另一個流量數據流。 相反地,隔離仍然是防護向外延展組態之節點內部通訊的安全性量值。

注意

SAP 建議將網路流量分隔至用戶端/應用程式端和節點內部流量,如本檔所述。 因此,建議將架構放在原處,如最後一個圖形所示。 也請洽詢您的安全性和合規性小組,以取得偏離建議的需求

從網路觀點來看,最低所需的網路架構看起來會像這樣:

Scale-out basics of a single node

安裝 SAP HANA 向外延展 n Azure

安裝向外延展 SAP 組態時,您必須執行下列粗略步驟:

  • 部署新的或調整現有的 Azure VNet 基礎結構
  • 使用以 ANF 為基礎的 Azure 受控 進階儲存體、Ultra 磁碟區和/或 NFS 磁碟區部署新的 VM
    • 調整網路路由,以確保 VM 之間的節點內部通訊不會透過 NVA 路由傳送。
  • 安裝 SAP HANA 主要節點。
  • 調整 SAP HANA 主要節點的組態參數
  • 繼續安裝SAP HANA背景工作節點

在向外延展設定中安裝SAP HANA

部署 Azure VM 基礎結構並完成所有其他準備工作時,您必須在下列步驟中安裝 SAP HANA 向外延展設定:

  • 根據 SAP 的檔案安裝 SAP HANA 主要節點
  • 搭配 和 的非共用磁碟使用 Azure 進階儲存體 或 Ultra 磁碟/hana/data/hana/log記憶體時,請將 參數basepath_shared = no新增至 global.ini 檔案。 此參數可讓SAP HANA在相應放大中執行,而不需在節點之間共用 /hana/data/hana/log 磁碟區。 詳細資料記載於 SAP 附註 #2080991。 如果您針對 /hana/data 和 /hana/log 使用以 ANF 為基礎的 NFS 磁碟區,則不需要進行這項變更
  • 在 global.ini 參數的最終變更之後,重新啟動 SAP HANA 實例
  • 新增更多背景工作節點。 如需詳細資訊,請參閱 使用命令行介面新增主機。 指定安裝期間或之後使用本機 hdblcm 的 SAP HANA 節點間通訊的內部網路。 如需更詳細的檔,請參閱 SAP 附注 #2183363

若要設定具有待命節點的 SAP HANA 向外延展系統,請參閱 SUSE Linux 部署指示Red Hat 部署指示

適用於 Azure 虛擬機的 SAP HANA 動態階層處理 2.0

除了 Azure M 系列 VM 上的 SAP HANA 認證之外,Microsoft Azure 也支援 SAP HANA 動態階層處理 2.0。 如需詳細資訊,請參閱 DT 2.0 文件的連結。 安裝或操作產品並無任何差異。 例如,您可以在 Azure VM 內安裝 SAP HANA Cockpit。 不過,針對 Azure 上的官方支援,有一些必要需求,如下一節所述。 在整個文章中,將會使用縮寫 「DT 2.0」,而不是完整名稱動態階層處理 2.0。

SAP BW 或 S4HANA 不支援 SAP HANA 動態階層處理 2.0。 目前的主要使用案例是原生 HANA 應用程式。

概觀

下圖提供 Microsoft Azure 上 DT 2.0 支援的概觀。 有一組強制性需求,必須遵循才能符合官方認證:

  • DT 2.0 必須安裝在專用的 Azure VM 上。 它可能不會在 SAP HANA 執行所在的相同 VM 上執行
  • SAP HANA 和 DT 2.0 VM 必須部署在相同的 Azure Vnet 內
  • 必須部署已啟用 Azure 加速網路的 SAP HANA 和 DT 2.0 VM
  • DT 2.0 VM 的 儲存體 類型必須是 Azure 進階儲存體
  • 多個 Azure 磁碟必須連結至 DT 2.0 VM
  • 您需要使用跨 Azure 磁碟的等量分割來建立軟體 RAID/等量磁碟區(透過 lvm 或 mdadm)

下列各節將說明更多詳細數據。

SAP HANA DT 2.0 Architecture Overview

SAP HANA DT 2.0 專用 Azure VM

在 Azure IaaS 上,只有專用 VM 才支援 DT 2.0。 它不允許在 HANA 實例執行所在的相同 Azure VM 上執行 DT 2.0。 一開始有兩種 VM 類型可用來執行 SAP HANA DT 2.0:

  • M64-32ms
  • E32sv3

如需 VM 類型描述的詳細資訊,請參閱 Azure VM 大小 - 記憶體

考慮到 DT 2.0 的基本概念,這是關於卸除「暖」數據,以節省使用對應 VM 大小是合理的成本。 雖然關於可能的組合沒有嚴格的規則。 這取決於特定的客戶工作負載。

建議的組態為:

SAP HANA VM 類型 DT 2.0 VM 類型
M128ms M64-32ms
M128s M64-32ms
M64ms E32sv3
M64s E32sv3

所有支援 DT 2.0 VM 的 SAP HANA 認證 M 系列 VM 組合(M64-32ms 和 E32sv3) 都可行。

Azure 網路和 SAP HANA DT 2.0

在專用 VM 上安裝 DT 2.0 需要 DT 2.0 VM 與 SAP HANA VM 之間的網路輸送量下限為 10 Gb。 因此,必須將所有 VM 放在相同的 Azure Vnet 中,並啟用 Azure 加速網路。

請參閱 Azure 加速網路 使用 Azure CLI 建立具有加速網路的 Azure VM 的其他資訊

SAP HANA DT 2.0 的 VM 儲存體

根據 DT 2.0 最佳做法指引,每個實體核心的磁碟 IO 輸送量應至少為 50 MB/秒。

根據 DT 2.0 支援的兩種 Azure VM 類型規格,VM 的最大磁碟 IO 輸送量限制如下所示:

  • E32sv3:768 MB/秒(未快取),這表示每個實體核心的比率為 48 MB/秒
  • M64-32ms:1000 MB/秒(未快取),這表示每個實體核心的比率為 62.5 MB/秒

您必須將多個 Azure 磁碟連結至 DT 2.0 VM,並在 OS 層級上建立軟體 RAID(等量分割),以達到每個 VM 的磁碟輸送量上限。 單一 Azure 磁碟無法提供輸送量,無法達到這方面的最大 VM 限制。 Azure 進階版 記憶體必須執行 DT 2.0。

  • 如需可用 Azure 磁碟類型的詳細數據,請參閱 選取 Azure IaaS VM 的磁碟類型 - 受控磁碟 頁面
  • 如需透過 mdadm 建立軟體 RAID 的詳細數據,請參閱 在 Linux VM 上設定軟體 RAID 頁面上
  • 如需設定 LVM 以建立最大輸送量等量磁碟區的詳細數據,請參閱在執行 Linux 的虛擬機上設定 LVM 頁面

視大小需求而定,有不同的選項可達到 VM 的最大輸送量。 以下是每個 DT 2.0 VM 類型的可能數據磁碟磁碟組態,以達到 VM 輸送量上限。 E32sv3 VM 應該視為較小工作負載的入門層級。 萬一它應該發現它不夠快,可能需要將 VM 大小調整為 M64-32 毫秒。 由於 M64-32ms VM 有大量的記憶體,IO 負載可能無法達到限制,尤其是讀取密集的工作負載。 因此,等量集中的磁碟可能就足夠,視客戶特定的工作負載而定。 但要放在安全端,系統會選擇下列磁碟組態,以確保最大輸送量:

VM SKU 磁碟設定 1 磁碟設定 2 磁碟設定 3 磁碟設定 4 磁碟設定 5
M64-32ms 4 x P50 -> 16 TB 4 x P40 -> 8 TB 5 x P30 -> 5 TB 7 x P20 -> 3.5 TB 8 x P15 -> 2 TB
E32sv3 3 x P50 -> 12 TB 3 x P40 -> 6 TB 4 x P30 -> 4 TB 5 x P20 -> 2.5 TB 6 x P15 -> 1.5 TB

特別是在工作負載非常密集的情況下,它可以提升IO效能,以開啟 Azure 主機快取「唯讀」,因為資料庫軟體的數據磁碟區建議。 而在事務歷史記錄中,Azure 主機磁碟快取必須是「無」。

關於記錄磁碟區的大小,建議的起點是 15% 的數據大小啟發學習法。 根據成本和輸送量需求,使用不同的 Azure 磁碟類型即可完成記錄磁碟區建立。 針對記錄磁碟區,需要高 I/O 輸送量。

使用 VM 類型 M64-32ms 時,必須啟用 寫入加速器。 Azure 寫入加速器提供事務歷史記錄的最佳磁碟寫入延遲(僅適用於 M 系列)。 有一些專案可以考慮,就像每個 VM 類型的磁碟數目上限一樣。 您可以在 Azure 寫入加速器頁面上找到 有關寫入加速器 的詳細數據

以下是調整記錄磁碟區大小的一些範例:

數據磁碟區大小和磁碟類型 記錄磁碟區和磁碟類型設定 1 記錄磁碟區和磁碟類型組態 2
4 x P50 -> 16 TB 5 x P20 -> 2.5 TB 3 x P30 -> 3 TB
6 x P15 -> 1.5 TB 4 x P6 -> 256 GB 1 x P15 -> 256 GB

如同 SAP HANA 向外延展,必須在 SAP HANA VM 與 DT 2.0 VM 之間共用 /hana/shared 目錄。 建議使用專用 VM 作為高可用性 NFS 伺服器的 SAP HANA 向外延展架構。 為了提供共用備份磁碟區,可以使用相同的設計。 但如果需要HA,或只要使用具有足夠記憶體容量的專用VM才能作為備份伺服器,則由客戶決定。

在 Azure VM 上部署 SAP HANA 的作業

下列各節說明在 Azure VM 上部署 SAP HANA 系統的相關一些作業。

Azure VM 上的備份和還原作業

下列文件說明如何備份和還原 SAP HANA 部署:

啟動並重新啟動包含 SAP HANA 的 VM

Azure 公用雲端的一個突出功能是,您只需支付計算分鐘的費用。 例如,當您關閉執行 SAP HANA 的 VM 時,只會針對該時間的記憶體成本計費。 當您在初始部署中指定 VM 的靜態 IP 位址時,可以使用另一項功能。 當您重新啟動具有 SAP HANA 的 VM 時,VM 會以先前的 IP 位址重新啟動。

針對 SAP 遠端支援使用 SAProuter

如果您的內部部署位置和 Azure 之間有站對站連線,而且您正在執行 SAP 元件,則您可能已經在執行 SAProuter。 在此情況下,請完成下列專案以取得遠端支援:

  • 在 SAProuter 設定中維護裝載 SAP HANA 之 VM 的私人和靜態 IP 位址。
  • 設定裝載 HANA VM 的子網 NSG,以允許透過 TCP/IP 埠 3299 的流量。

如果您要透過因特網連線到 Azure,且沒有 SAP HANA VM 的 SAP 路由器,則需要安裝元件。 在管理子網中的個別 VM 中安裝 SAProuter。 下圖顯示一個粗略的架構,用於部署不含站對站連線的 SAP HANA,以及使用 SAProuter:

Rough deployment schema for SAP HANA without a site-to-site connection and SAProuter

請確保您在分開的 VM 中安裝 SAProuter,而不是您的 Jumpbox VM。 這個分開的 VM 必須具有靜態 IP 位址。 若要將您的 SAProuter 與由 SAP 主控的 SAProuter 連線,請聯絡 SAP 來取得 IP 位址。 (由 SAP 主控的 SAProuter 是您安裝在 VM SAProuter 對應項目。)使用 SAP 的 IP 位址來設定您的 SAProuter 執行個體。 在組態設定中,唯一必要的連接埠是 TCP 連接埠 3299。

關於如何透過 SAProuter 設定並維持遠端支援連線的詳細資訊,請參閱 SAP 文件

在 Azure 原生 VM 上使用 SAP HANA 的高可用性

如果您執行 SUSE Linux Enterprise Server 或 Red Hat,您可以建立具有隔離裝置的 Pacemaker 叢集。 您可以使用裝置來設定使用同步復寫搭配 HANA 系統複寫和自動故障轉移的 SAP HANA 組態。 如需一節中所列的詳細資訊。

後續步驟

熟悉列出的文章