SAP HANA (大型執行個體) 網路架構

在本文中,我們將探討適用於部署 Azure 上的 SAP HANA 大型執行個體 (也稱為 BareMetal 基礎結構) 的網路架構。

Azure 網路服務的架構是在 HANA 大型執行個體上成功部署 SAP 應用程式的關鍵元件。 通常 Azure 上的 SAP HANA (大型執行個體) 部署具備較大的 SAP 環境。 這些部署可能包含數個大小不同的資料庫、CPU 資源耗用量和記憶體使用量的 SAP 解決方案。

並非所有的 IT 系統都已位於 Azure 中。 您的 SAP 環境也可能是混合式環境。 您的資料庫管理系統 (DBMS) 和 SAP 應用程式可能會混用 NetWeaver、S/4HANA 和 SAP HANA。 您的 SAP 應用程式甚至可能會使用另一個 DBMS。

Azure 提供不同的服務,可讓您在 Azure 中執行不同的 DBMS、NetWeaver 和 S/4HANA 系統。 Azure 也提供網路技術,讓 Azure 看起來像是內部部署軟體部署的虛擬資料中心。 Azure 網路功能包括以下:

  • 連線至 ExpressRoute 線路的 Azure 虛擬網路,接著會連線至您的內部部署網路資產。
  • 將內部部署連線至 Azure 的 ExpressRoute 線路,最小頻寬為 1 Gbps 或更高。 此線路可讓您有足夠的頻寬在內部部署系統與執行於虛擬機器 (VM) 的系統之間傳輸資料, 它也讓內部部署使用者有足夠的頻寬可連線至 Azure 系統。
  • Azure 中的所有 SAP 系統都會在虛擬網路中設定妥當,以彼此通訊。
  • 裝載於內部部署環境中的 Active Directory 與 DNS 會透過 ExpressRoute 從內部部署環境延伸到 Azure。 也可以在 Azure 中完整執行。

將 HANA 大型執行個體整合到 Azure 資料中心網路網狀架構時,也會使用 Azure ExpressRoute 技術。

注意

在特定 Azure 區域中,只有一個 Azure 訂閱可連結到 HANA 大型執行個體戳記中的一個租用戶。 相反地,單一 HANA 大型執行個體戳記租用戶只能連結到一個 Azure 訂閱。 Azure 中其他可計費的物件也有此需求。

如果 Azure 上的 SAP HANA (大型執行個體) 部署在多個 Azure 區域中,則會在 HANA 大型執行個體戳記中部署個別的租用戶。 只要這些執行個體為相同 SAP 環境的一部分,您便可以在所提供的同一個 Azure 訂閱下執行兩者。

重要

使用 Azure 上的 SAP HANA (大型執行個體) 時,僅支援 Azure Resource Manager 部署方法。

額外虛擬網路資訊

若要將虛擬網路連線至 ExpressRoute,必須建立 Azure ExpressRoute 閘道。 如需詳細資訊,請參閱關於 ExpressRoute 的 Expressroute 閘道

Azure ExpressRoute 閘道可搭配 ExpressRoute 使用於 Azure 外部的基礎結構或 Azure 大型執行個體戳記。 您可以將 Azure ExpressRoute 閘道連線至最多四個 ExpressRoute 線路,只要這些連線來自不同的 Enterprise Edge Routers (MSEE) 即可。 如需詳細資料,請參閱 Azure 上的 SAP HANA (大型執行個體) 基礎結構和連線

注意

在使用 ExpressRoute 連線的情況下,ExpressRoute 閘道可達到的最大輸送量是 10 Gbps。 在位於虛擬網路中的 VM 與內部部署系統之間複製檔案 (以單一複製串流的形式),並不會達到不同閘道 SKU 的最大輸送量。 若要利用 ExpressRoute 閘道的全部頻寬,您必須使用多個串流,或是以單一檔案的平行串流複製不同的檔案。

適用於 HANA 大型執行個體的網路架構

適用於 HANA 大型執行個體的網路架構,可區分為四個部分:

  • 內部部署網路和 Azure 的 ExpressRoute 連線。 這個部分是您的 (即客戶) 網域,會透過 ExpressRoute 連線至 Azure。 此 ExpressRoute 線路會以您的身分全額支付。 頻寬應該大到足以處理內部部署資產和您連線的 Azure 區域之間的網路流量。 請參閱下圖右下方的區域。
  • 如先前的討論,Azure 網路服務也需加入 ExpressRoute 閘道的虛擬網路搭配使用。 對於這個部分,您需要針對符合應用程式、安全性及合規性需求建立合適的設計。 有鑑於可供選擇虛擬網路數目和 Azure 閘道 SKU,請考慮是否要使用 HANA 大型執行個體。 請查看圖中的右上方。
  • HANA 大型執行個體透過 ExpressRoute 連線至 Azure。 這部分已部署且會由 Microsoft 來處理。 您唯一需要做的,是在將資產部署至 HANA 大型執行個體後提供一些 IP 位址範圍,並將 ExpressRoute 線路連線至虛擬網路。 如需詳細資料,請參閱 Azure 上的 SAP HANA (大型執行個體) 基礎結構和連線。 Azure 資料中心網路網狀架構與 HANA 大型執行個體單位之間的連線,則不需額外付費。
  • HANA 大型執行個體戳記內的網路功能,大部分都是透明的。

連線至 SAP HANA on Azure (大型執行個體) 與內部部署環境的虛擬網路

即使您使用 Hana 大型執行個體,仍需保留下列兩個需求:

  • 您的內部部署資產必須透過 ExpressRoute 連線到 Azure。
  • 您需要一或多個執行 VM 的虛擬網路。 這些 VM 裝載的應用層,會與在 HANA 大型執行個體中裝載的 HANA 執行個體連線。

與 Azure 中的 SAP 部署的差異為:

  • 您租用戶的 HANA 大型執行個體會透過另一個 ExpressRoute 線路連線至您的虛擬網路。 內部部署至 Azure 虛擬網路 ExpressRoute 線路和 Azure 虛擬網路與 HANA 大型執行個體之間的線路不會共用相同的路由器。 它們的負載條件仍保持為獨立。
  • SAP 應用程式層和 HANA 大型執行個體的工作負載設定檔則有所不同。 SAP HANA 會產生許多小型要求和高載,例如將資料傳輸 (結果集) 至應用程式層。
  • 相較於在內部部署與 Azure 之間交換資料的典型案例,SAP 應用程式架構對於網路延遲更敏感。
  • Azure ExpressRoute 閘道至少會有兩個 ExpressRoute 連線。 一個線路是從內部部署連線,另一個線路是從 HANA 大型執行個體連線。 此設定只會留下可供最多兩個從不同 MSEE 連線至 ExpressRoute 閘道的線路使用空間。 這項限制與 ExpressRoute FastPath 的使用無關。 所有連線的線路都會共用 ExpressRoute 閘道傳入資料的最大頻寬。

搭配 HANA 大型執行個體戳記的修訂版本 3,VM 與 HANA 大型執行個體單位之間的網路延遲可能會高於典型的 VM 對 VM 網路來回延遲。 依據 Azure 區域,值可超過 0.7 毫秒的來回延遲,這在 SAP Note #1100926 - 常見問題集:網路效能中已歸類為低於平均值。 根據測量 Azure VM 與 HANA 大型執行個體單位之間的網路來回延遲時所使用的 Azure 區域和測量工具,測量的延遲最高可達 2 毫秒。 客戶仍可順利在 SAP HANA 大型執行個體上部署以 SAP HANA 為基礎的生產環境 SAP 應用程式。 請務必使用 Azure HANA 大型執行個體徹底測試您的商務程序。 稱為 ExpressRoute FastPath 的新功能可大幅減少 Azure 中 HANA 大型執行個體與應用層 VM 之間的網路延遲 (請參閱下方)。

HANA 大型執行個體戳記的修訂版本 4 可改善部署在鄰近 HANA 大型執行個體戳記之 Azure VM 之間的網路延遲。 如果 Azure ExpressRoute FastPath 已設定,而延遲符合 SAP Note #1100926 - 常見問題集:網路效能中記錄的平均或優於平均分類 (請參閱下方)。

若要將 Azure VM 部署至鄰近修訂版本 4 的 HANA 大型執行個體,您需要套用 Azure 鄰近放置群組。 鄰近放置群組可用來找出與修訂版本 4 版裝載的 HANA 大型執行個體,位於相同 Azure 資料中心的 SAP 應用層。 如需詳細資訊,請參閱搭配 SAP 應用程式將網路延遲最佳化的 Azure 鄰近放置群組

若要提供 VM 和 HANA 大型執行個體之間具決定性的網路延遲,則必須使用 ExpressRoute 閘道 SKU。 不同於內部部署與 VM 之間的流量模式,VM 和 HANA 大型執行個體之間的流量模式可以開發很小但高載的要求和資料磁碟區。 為了處理這類高載,強烈建議您使用 UltraPerformance 閘道 SKU。 針對類型 II 類別的 HANA 大型執行個體 SKU,使用 UltraPerformance 閘道 SKU 作為 ExpressRoute 閘道是必要的。

重要

考慮到 SAP 應用程式與資料庫層之間的整體網路流量,因此僅支援使用虛擬網路的 HighPerformance 或 UltraPerformance 閘道 SKU 來連線至 SAP HANA on Azure (大型執行個體)。 針對 HANA 大型執行個體類型 II SKU,僅支援使用 UltraPerformance 閘道 SKU 作為 ExpressRoute 閘道。 使用 ExpressRoute FastPath 時適用例外狀況 (請參閱下文)。

ExpressRoute FastPath

在 2019 年 5 月,我們發行了 ExpressRoute FastPath。 FastPath 可降低裝載 SAP 應用程式 VM 的 HANA 大型執行個體與 Azure 虛擬網路之間的網路延遲。 使用 FastPath 時,VM 與 HANA 大型執行個體之間的資料流程不會透過 ExpressRoute 閘道路由傳送。 在 Azure 虛擬網路子網路中指派的 VM 會直接與專用的企業邊緣路由器通訊。

重要

ExpressRoute FastPath 需要執行 SAP 應用程式 VM 的子網路位於與連線至 HANA 大型執行個體相同的 Azure 虛擬網路中。 在 Azure 虛擬網路中,與連線至 HANA 大型執行個體單位的 Azure 虛擬網路對等互連的 VM,無法從 ExpressRoute FastPath 獲益。 因此,在一般中樞和輪輻虛擬網路設計中,ExpressRoute 線路會連線至中樞虛擬網路,而包含 SAP 應用程式層的 (輪輻) 虛擬網路則是對等互連,這種 ExpressRoute FastPath 的最佳化功能不適用。 ExpressRoute FastPath 目前也不支援使用者定義的路由規則 (UDR)。 如需詳細資訊,請參閱 ExpressRoute 虛擬網路閘道和 FastPath

如需有關如何設定 ExpressRoute FastPath 的詳細資訊,請參閱將虛擬網路連結為 HANA 大型執行個體

注意

必須使用 UltraPerformance ExpressRoute 閘道,才能使用 ExpressRoute FastPath。

單一 SAP 系統

先前顯示的內部部署基礎結構會透過 ExpressRoute 連線至 Azure。 ExpressRoute 線路會連線至 MSEE。 如需詳細資訊,請參閱 ExpressRoute 技術概觀。 路由建立後將會連線至 Azure 骨幹。

注意

若要在 Azure 中執行 SAP 架構,請連線至距離 SAP 架構中的 Azure 區域最近的 Enterprise Edge 路由器。 HANA 大型執行個體戳記會透過專用企業邊緣路由器連線,將 Azure IaaS 中的 VM 與 HANA 大型執行個體戳記之間的網路延遲降到最低。

裝載 SAP 應用程式執行個體的 VM,其 ExpressRoute 閘道會連接到連線至內部部署的一個 ExpressRoute 線路。 相同的虛擬網路會連線至個別 Enterprise Edge 路由器。 該邊緣路由器專門用來連接到大型執行個體戳記。 同樣地,使用 FastPath 時,不會透過 ExpressRoute 閘道路來自 HANA 大型執行個體傳輸到 SAP 應用程式層 VM 的資料流程。 此設定可減少網路來回延遲。

此系統是單一 SAP 系統的簡明範例。 SAP 應用程式層裝載於 Azure 中。 SAP HANA 資料庫執行於 SAP HANA on Azure (大型執行個體) 上。 我們的假設是 2 Gbps 或 10 Gbps 的 ExpressRoute 閘道頻寬輸送量並不代表瓶頸。

多個 SAP 系統或大型 SAP 系統

如果將多個 SAP 系統或大型 SAP 系統部署成連線至 Azure 上的 SAP HANA (大型執行個體),ExpressRoute 閘道的輸送量就可能成為瓶頸。 在這種情況下,請將應用程式層分割成多個虛擬網路。 如果想要在不同的 Azure 虛擬網路中隔離生產環境和非生產環境系統,您也可以分割應用程式層。

您也可以建立會連線至 HANA 大型執行個體的特殊虛擬網路,如下所示:

  • 直接從HANA 大型執行個體中的 HANA 執行個體備份到 Azure 中裝載 NFS 共用的 VM。
  • 將大型備份或其他檔案,從 HANA 大型執行個體複製到在 Azure 中管理的磁碟空間。

使用個別的虛擬網路來裝載管理儲存體的 VM,便可在在 HANA 大型執行個體與 Azure 之間大量傳輸資料。 這種配置可避免在透過 ExpressRoute 閘道 (此閘道可為執行 SAP 應用程式層的 VM 提供服務) 將大型檔案或資料從 HANA 大型執行個體傳輸到 Azure。

讓網路架構更具擴充性:

  • 針對較大型的單一 SAP 應用程式層,請使用多個虛擬網路。

  • 相較於將所部署的 SAP 系統結合在相同虛擬網路下的個別子網路中,為這些 SAP 系統中的每一個系統部署一個個別的虛擬網路。

    下圖顯示 Azure上 SAP HANA (大型執行個體)更具擴充性的網路架構:

跨多個虛擬網路部署 SAP 應用程式層

根據規則和限制,如果您想套用至不同虛擬網路中那些裝載於不同 SAP 系統的 VM,則應該將這些虛擬網路對等互連。 如需關於虛擬網路對等互連的詳細資訊,請參閱虛擬網路對等互連

Azure 中的路由

根據預設部署,Azure 上的 SAP HANA (大型執行個體) 有三項重要的網路路由考量:

  • Azure 上的 SAP HANA (大型執行個體) 只能透過 Azure VM 和專用 ExpressRoute 連線來存取,而無法從內部部署環境直接存取。 從內部部署環境對 HANA 大型執行個體單位的直接存取 (如 Microsoft 所提供),是無法立即執行的。 可轉移的路由會因為目前用於 SAP HANA 大型執行個體的 Azure 網路架構而受限。 有些系統管理用戶端及所有需要直接存取權的應用程式 (例如在內部部署環境中執行的 SAP Solution Manager) 會無法連線至 SAP HANA 資料庫。 針對例外狀況,請參閱下一節的直接路由傳送至 HANA 大型執行個體

  • 如果您在兩個不同 Azure 區域中部署了 HANA 大型執行個體單位以供災害復原之用,則系統將會套用與過去相同的暫時性路由限制。 換句話說,HANA 大型執行個體單位在一個區域 (例如美國西部) 內的 IP 位址不會路由傳送至在另一個地區 (例如美國東部) 部署的 HANA 大型執行個體。 此限制與跨區域使用 Azure 網路對等互連或交叉連接 ExpressRoute 線路 (將 HANA 大型執行個體連線至虛擬網路) 無關。 如需以圖形檢視,請參閱在多個區域中使用 HANA 大型執行個體單位一節中的圖表。 部署架構隨附的這項限制,會禁止立即將 HANA 系統複寫用於災害復原。 關於最近的變更,請參閱在多個區域中使用 HANA 大型執行個體單位

  • Azure 上的 SAP HANA 大型執行個體包含指派的 IP 位址,來自您在要求 HANA 大型執行個體部署時提交的伺服器 IP 集區位址範圍。 如需詳細資料,請參閱 Azure 上的 SAP HANA (大型執行個體) 基礎結構和連線。 透過 Azure 訂閱以及將 Azure 虛擬網路連線至 HANA 大型執行個體的線路,即可存取此 IP 位址。 從該伺服器 IP 集區位址範圍指派的 IP 位址會直接指派給硬體單位。 這不會再經過網路位址轉譯 (NAT) 處理,因為這是此解決方案的第一次部署才會有的情況。

直接路由傳送至 HANA 大型執行個體

根據預設,可轉移路由不適用於這些案例:

  • 在 HANA 大型執行個體單位與內部部署之間。

  • 在部署於不同地區的 HANA 大型執行個體單位之間。

在這些案例中,有三種方式可以啟用可轉移路由:

  • 路由資料的反向 Proxy,往返方向皆有可能。 例如,F5 BIG-IP (部署在 Azure 虛擬網路中具有流量管理員的 NGINX) 會連線至 HANA 大型執行個體和內部部署作為虛擬防火牆/流量路由解決方案。
  • 在 Linux VM 中使用 IPTables 規則,以啟用在內部部署位置和 HANA 大型執行個體單位之間的路由,或不同區域中 HANA 大型執行個體單位之間的路由。 執行 IPTables 的 VM 必須部署在連線至 HANA 大型執行個體與內部部署的 Azure 虛擬網路中。 VM 必須調整大小,才能使 VM 的網路輸送量足以應付預期的網路流量。 如需 VM 網路頻寬的詳細資訊,請參閱 Azure 中的 Linux 虛擬機器大小一文。
  • Azure 防火牆可成為另一個可在內部部署與 HANA 大型執行個體單位之間引導流量的解決方案。

這些解決方案的所有流量都會透過 Azure 虛擬網路經路由傳送。 因此,資料流量也可能受限於所使用的軟設備或 Azure 網路安全性群組。 如此,可封鎖來自內部部署的特定 IP 位址或 IP 位址範圍,或明確地允許其存取 HANA 大型執行個體。

注意

請注意,Microsoft 並不提供與協力廠商網路設備或 IPTables 相關自定義解決方案的實作和支援。 必須由所使用元件的廠商或整合者提供支援。

Express Route Global Reach

Microsoft 引進稱為 ExpressRoute Global Reach 的新功能。 Global Reach 可用於兩個案例中的 HANA 大型執行個體:

  • 允許從內部部署直接存取部署在不同區域中的 HANA 大型執行個體單位。
  • 啟用部署在不同區域的 HANA 大型執行個體單位之間的直接通訊。
從內部部署直接存取

在提供 Global Reach 的 Azure 區域中,您可以要求為 ExpressRoute 線路啟用 Global Reach。 該線路會將內部部署網路連結至連線 HANA 大型執行個體的 Azure 虛擬網路。 ExpressRoute 線路的內部部署端具有成本。 如需詳細資訊,請參閱 Global Reach 附加元件的定價。 您將不會為將 HANA 大型執行個體連線至 Azure 的線路支付額外成本。

重要

使用 Global Reach 來啟用 HANA 大型執行個體單位與內部部署資產之間的直接存取時,網路資料和控制流程不會透過 Azure 虛擬網路路由傳送。 相反地,網路資料和控制流程會直接在 Microsoft 企業交換路由器之間路由傳送。 因此,不會觸碰任何 NSG 或 ASG 規則,或是您在 Azure 虛擬網路中部署的任何類型防火牆、NVA 或 Proxy。 如果您使用 ExpressRoute Global Reach 來啟用從內部部署直接存取 HANA 大型執行個體單位,則必須在內部部署端的防火牆中定義存取 HANA 大型執行個體單位的限制和權限。

連接不同 Azure 區域中的 HANA 大型執行個體

同樣地,ExpressRoute Global Reach 也可用來連線至不同區域中部署的兩個 HANA 大型執行個體租用戶。 隔離方式就是 HANA 大型執行個體租用戶用來連線至兩個區域中 Azure 的 ExpressRoute 線路。 連線至部署在不同區域的 HANA 大型執行個體租用戶不會產生額外費用。

重要

HANA 大型執行個體租用戶之間網路流量的資料流程和控制流程,將不會透過 Azure 網路路由傳送。 因此,您無法使用 Azure 功能或網路虛擬設備 (NVA) 來強制執行 HANA 大型執行個體租用戶之間的通訊限制。

如需有關如何啟用 ExpressRoute Global Reach 的詳細資訊,請參閱將虛擬網路連結為 HANA 大型執行個體

HANA 大型執行個體的網際網路連線

HANA 大型執行個體無法直接連線到網際網路。 此限制可能會使您的一些能力受到限制,例如,直接向 OS 廠商註冊 OS 映像的能力。 您可能需要使用本機 SUSE Linux Enterprise Server Subscription Management Tool 伺服器或 Red Hat Enterprise Linux Subscription Manager。

VM 與 HANA 大型執行個體之間的資料加密

HANA 大型執行個體與 VM 之間的資料傳輸並未加密。 不過,您可以純粹針對 HANA DBMS 端與 JDBC/ODBC 型應用程式之間的交換,啟用流量加密。 如需詳細資訊,請參閱保護 SAP HANA 與 JDBC/ODBC 用戶端之間的通訊 (英文)。

在多個區域中使用 HANA 大型執行個體單位

若要進行災害復原,您必須在多個 Azure 區域中具有 HANA 大型執行個體單位。 只使用 Azure 全域 Vnet 對等互連,根據預設,不同區域中的 HANA 大型執行個體租用戶之間將無法使用可轉移路由。 不過,Global Reach 會開啟不同區域中 HANA 大型執行個體單位之間的通訊。 此案例使用 ExpressRoute Global Reach 來啟用:

  • 不含任何 Proxy 或防火牆的 HANA 系統複寫。
  • 在不同區域的 HANA 大型執行個體單位之間複製備份,以進行系統複本或執行系統重新整理。

連線至不同 Azure 區域中的 Azure 大型執行個體戳記的虛擬網路

上圖顯示出虛擬網路在兩個區域中連結至兩個 ExpressRoute 線路的方式。 該線路可在兩個 Azure 區域中用來連線至 Azure 上的 SAP HANA (大型執行個體)(灰色線條)。 兩個交叉連線的原因是要防止兩端的 MSEE 中斷。 兩個 Azure 區域中兩個虛擬網路之間的通訊流程,應透過兩個不同區域中兩個虛擬網路的全域對等互連來處理 (藍色虛線)。 紅色粗線條用來描述 ExpressRoute Global Reach 連線。 此連線可讓不同區域租用戶的 HANA 大型執行個體單位彼此通訊。

重要

如果您使用多個 ExpressRoute 線路,則在前面加上「AS 路徑」和使用「本機喜好 BGP」設定來確保流量路由正確。

下一步

了解 SAP HANAa (大型執行個體) 的儲存體架構。