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 大型實例戳記中部署個別的租使用者。 您可以在相同的 Azure 訂用帳戶下執行,但前提是這些實例都是相同 SAP 環境的一部分。

重要

Azure (大型實例) 上的 SAP Hana 僅支援 Azure Resource Manager 部署方法。

額外的虛擬網路資訊

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

Azure ExpressRoute 閘道可搭配 ExpressRoute 使用於 Azure 外部的基礎結構或 Azure 大型執行個體戳記。 您可以將 Azure expressroute 閘道連接到最多四個 expressroute 線路,但只有當這些連線來自不同的 Microsoft Enterprise 邊緣路由器時,才會 (msee) 。 如需詳細資料,請參閱 Azure 上的 SAP HANA (大型執行個體) 基礎結構和連線

注意

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

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

適用于 HANA 大型實例的網路架構可分成四個部分:

  • 內部部署網路和 Azure 的 ExpressRoute 連線。 這部分是您 (客戶的) 網域,並透過 ExpressRoute 連線到 Azure。 您可以完全支付此 ExpressRoute 線路的費用。 頻寬必須夠大,才能處理您內部部署資產與您要連接的 Azure 區域之間的網路流量。 請參閱下圖右下方的區域。
  • 先前已討論過的 Azure 網路服務,與虛擬網路同樣需要新增 ExpressRoute 閘道。 在此部分中,您必須建立適當的設計,以符合您的應用程式、安全性和合規性需求。 考慮是否要使用「HANA 大型實例」,以提供虛擬網路和 Azure 閘道 Sku 的數目來從中選擇。 請查看圖中的右上方。
  • 您的 HANA 大型實例透過 ExpressRoute 連線到 Azure 的能力。 這部分已部署且會由 Microsoft 來處理。 您只需要在將資產部署到 HANA 大型實例,並將 ExpressRoute 線路連線到虛擬網路之後,提供一些 IP 位址範圍。 如需詳細資料,請參閱 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 區域和工具來測量 Azure VM 與 HANA 大型實例之間的網路來回延遲,延遲最多可達2毫秒。 儘管如此,客戶也能在 SAP Hana 大型實例上成功部署以 SAP Hana 為基礎的生產環境 SAP 應用程式。 請務必使用 Azure HANA 大型實例來徹底測試您的商務程式。 稱為 ExpressRoute FastPath 的新功能,可大幅減少 HANA 大型實例和 (Azure 中的應用層 Vm 之間的網路延遲,請參閱以下) 。

版本為「HANA 大型實例」戳記的修訂4,可改善部署在與「HANA 大型實例」戳記接近的 Azure Vm 之間的網路延遲。 延遲符合平均或優於 SAP 附注中所述的平均分類 #1100926-常見問題: 如果已設定 Azure ExpressRoute FastPath,則為網路效能 (請參閱以下) 。

若要將 Azure Vm 部署到適用于修訂4的 HANA 大型實例,您需要套用 Azure 鄰近放置群組。 鄰近放置群組可用來在相同的 Azure 資料中心內,找出與修訂4所裝載的 HANA 大型實例相同的 SAP 應用層。 如需詳細資訊,請參閱 Azure 鄰近放置群組,以取得 SAP 應用程式的最佳網路延遲

若要在 Vm 和 HANA 大型實例之間提供決定性的網路延遲,使用 ExpressRoute 閘道 SKU 是不可或缺的。 不同于內部部署與 Vm 之間的流量模式,Vm 和 HANA 大型實例之間的流量模式可以開發小型但高載的要求和資料磁片區。 為了處理這類高載,強烈建議使用 UltraPerformance 閘道 SKU。 若為「HANA 大型實例」 Sku 的類型 II 類別,則必須使用 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 可減少 HANA 大型實例與裝載 SAP 應用程式 Vm 的 Azure 虛擬網路之間的延遲。 使用 FastPath 時,Vm 和 HANA 大型實例之間的資料流程不會透過 ExpressRoute 閘道路由傳送。 在 Azure 虛擬網路的子網 (s) 中指派的 Vm 會直接與專用的 enterprise edge 路由器通訊。

重要

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 路由器。 Edge 路由器專門用來連接到大型實例戳記。 同樣地,使用 FastPath 時,從 HANA 大型實例到 SAP 應用層 Vm 的資料流程不會透過 ExpressRoute 閘道路由傳送。 此設定可減少網路來回延遲。

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

多個 SAP 系統或大型 SAP 系統

如果您部署多個 SAP 系統或大型 SAP 系統,且連接至 SAP Hana (大型實例) ,ExpressRoute 閘道的輸送量可能會變成瓶頸。 在此情況下,請將應用層分成多個虛擬網路。 如果您想要隔離不同 Azure 虛擬網路中的生產和非生產系統,您也可以分割應用層。

您可以建立特殊的虛擬網路,以便在下列情況連線到 HANA 大型實例:

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

使用個別的虛擬網路來裝載 Vm,以管理儲存體,以便在 HANA 大型實例與 Azure 之間進行大量資料傳輸。 這種安排可避免將大型檔案或資料從 HANA 大型實例傳輸到 ExpressRoute 閘道上的 Azure,以提供執行 SAP 應用層的 Vm。

如需更可擴充的網路架構:

  • 針對較大型的單一 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 虛擬網路連線到 HANA 大型實例的 Azure 訂用帳戶和線路來存取此 IP 位址。 從該伺服器 IP 集區位址範圍指派的 IP 位址會直接指派給硬體單位。 它 會透過網路位址轉譯 (NAT) 再指派,就像是在此解決方案的第一次部署時一樣。

直接路由至 HANA 大型實例

根據預設,在這些情況下,可轉移路由無法運作:

  • 在 HANA 大型實例單位與內部部署之間進行。

  • 在不同區域部署的 HANA 大型實例單位之間。

在這些情況下,有三種方式可以啟用轉移路由:

  • 路由資料的反向 Proxy,往返方向皆有可能。 例如,F5 BIG IP、NGINX 和流量管理員部署在 Azure 虛擬網路中,以連線至 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 全球接觸

Microsoft 引進了一種稱為 ExpressRoute Global 觸及的新功能。 在兩個案例中,您可以使用「全球接觸」來進行 HANA 大型實例:

  • 啟用從內部部署直接存取部署在不同區域中的 HANA 大型實例單位。
  • 啟用在不同區域部署的 HANA 大型實例單位之間的直接通訊。
從內部部署直接存取

在提供全球接觸的 Azure 區域中,您可以要求為您的 ExpressRoute 線路啟用全球接觸。 該線路會將您的內部部署網路連線到 Azure 虛擬網路,以連接到您的 HANA 大型實例。 ExpressRoute 線路的內部部署端有一些成本。 如需詳細資訊,請參閱 全球接觸附加元件的定價。 將 HANA 大型實例連線到 Azure 的線路不會支付額外費用。

重要

使用「全球存取範圍」來啟用「HANA 大型實例」單位和內部部署資產之間的直接存取時, 不會透過 Azure 虛擬網路路由 網路資料和控制流程。 相反地,網路資料和控制流程會直接在 Microsoft enterprise exchange 路由器之間路由傳送。 因此,您將不會接觸任何 NSG 或 ASG 規則,或您在 Azure 虛擬網路中部署的任何類型的防火牆、NVA 或 proxy。 如果您使用 ExpressRoute 全球存取範圍來啟用從內部部署到 HANA 大型實例單位的直接存取,則需要在內部部署端的防火牆中定義存取 HANA 大型實例單位的限制和許可權。

連接不同 Azure 區域中的 HANA 大型實例

同樣地,ExpressRoute Global 觸及可以用來連接不同區域中部署的兩個 HANA 大型實例租使用者。 隔離是您的 HANA 大型實例租使用者用來在兩個區域中連線到 Azure 的 ExpressRoute 線路。 連接不同區域中部署的兩個 HANA 大型實例租使用者沒有額外的費用。

重要

HANA 大型實例租使用者之間網路流量的資料流程和控制流程將不會透過 Azure 網路路由傳送。 因此,您無法使用 Azure 功能或網路虛擬裝置 (Nva) 在您的 HANA 大型實例租使用者之間強制執行通訊限制。

如需有關如何啟用 ExpressRoute 全球存取範圍的詳細資訊,請參閱連線虛擬網路到 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 大型實例租使用者之間,可轉移路由將無法運作。 不過,全球接觸會開啟不同區域中 HANA 大型實例單位之間的通訊。 使用 ExpressRoute Global 觸及的這個案例可讓:

  • 沒有其他 proxy 或防火牆的 HANA 系統複寫。
  • 在不同區域中的 HANA 大型實例單位之間複本備份,以進行系統複製或重新整理系統。

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

上圖顯示兩個區域中的虛擬網路如何連線至兩個 ExpressRoute 線路。 線路是用來連線到 Azure 上的 SAP Hana, (兩個 Azure 區域中) 的大型實例, (灰色的程式碼) 。 這兩個交叉連接的原因是為了防止 Msee 在任一側中斷。 在兩個 Azure 區域中兩個虛擬網路之間的通訊流程,應該透過兩個不同區域中兩個虛擬網路的 全域對等互連 來處理 (藍線) 。 黑色的紅線描述 ExpressRoute 的全球觸達連接。 此連線可讓您在不同區域中租使用者的 HANA 大型實例單位彼此通訊。

重要

如果您使用多個 ExpressRoute 線路,請使用做為路徑前置和本機喜好設定 BGP 設定,以確保適當的流量路由。

後續步驟

瞭解 SAP Hana (大型實例) 的儲存架構。