在 Azure 上搭配 Windows Server 容錯移轉叢集和檔案共用的 SAP ASCS/SCS 執行個體多重 SID 高可用性

Windows OS 窗戶

您可以使用 Azure 內部負載平衡器 來管理多個虛擬 IP 位址

如果您有 SAP 部署,您可以使用內部負載平衡器來建立 SAP 中央服務 (ASCS/SCS) 實例的 Windows 叢集組態。

本文著重于如何將其他 SAP ASCS/SCS 叢集實例安裝到具有 檔案共用 的現有 Windows Server 容錯移轉叢集 (WSFC) 叢集,以從單一 ASCS/SCS 安裝移至 SAP 多重 SID 組態。 完成此程式時,您已設定 SAP 多重 SID 叢集。

注意

此功能僅適用于 Azure Resource Manager 部署模型。

每個 Azure 內部負載平衡器的私人前端 IP 數目有限制。

一個 WSFC 叢集中 SAP ASCS/SCS 實例數目上限等於每個 Azure 內部負載平衡器的私人前端 IP 數目上限。

本檔中引進的組態尚不支援用於 Azure 可用性區域

如需負載平衡器限制的詳細資訊,請參閱網路限制:Azure Resource Manager 中的 <每個負載平衡器的私人前端 IP>一節。 也請考慮使用 Azure Standard Load Balancer SKU ,而不是 Azure 負載平衡器的基本 SKU。

必要條件

您已使用檔案共用 ,將 WSFC 叢集設定為用於 一個 SAP ASCS/SCS 實例,如下圖所示。

Figure 1: An SAP ASCS/SCS instance and SOFS deployed in two clusters

圖 1: 部署在兩個叢集中的 SAP ASCS/SCS 實例和 SOFS

重要

安裝程式必須符合下列條件:

  • SAP ASCS/SCS 實例必須共用相同的 WSFC 叢集。
  • 屬於不同 SAP SID 的不同 SAP 全域主機檔案共用必須共用相同的 SOFS 叢集。
  • SAP ASCS/SCS 實例和 SOFS 共用不得合併在相同的叢集中。
  • 每個資料庫管理系統 (DBMS) SID 都必須有自己的專用 WSFC 叢集。
  • 屬於一個 SAP 系統 SID 的 SAP 應用程式伺服器必須有自己的專用 VM。
  • 不支援在相同叢集中混合排入佇列複寫伺服器 1 和排入佇列複寫伺服器 2。

具有檔案共用的 SAP ASCS/SCS 多重 SID 架構

目標是在相同的 WSFC 叢集中安裝多個 SAP Advanced Business Application Programming (ASCS) 或 SAP JAVA (SCS) 叢集實例,如下所示:

Figure 2: SAP multi-SID configuration in two clusters

圖 2: 兩個叢集中的 SAP 多重 SID 組態

一個 SAP < SID2 > 系統的安裝與一個 < SID > 系統的安裝相同。 ASCS/SCS 叢集以及檔案共用 SOFS 叢集上需要兩個額外的準備步驟。

準備 SAP 多重 SID 案例的基礎結構

在網域控制站上準備基礎結構

例如,使用 SID2 = PR2 建立網域群組 < Domain > \SAP_ < SID2 > > _Global管理員 。 < 功能變數名稱為 < Domain > \SAP_PR2_Global管理員。

準備 ASCS/SCS 叢集上的基礎結構

您必須為第二個 SAP < SID > 準備現有 ASCS/SCS 叢集上的基礎結構:

  • 在 DNS 伺服器上建立叢集 SAP ASCS/SCS 實例的虛擬主機名稱。
  • 使用 PowerShell 將 IP 位址新增至現有的 Azure 內部負載平衡器。

這些步驟描述于 SAP 多重 SID 案例 的基礎結構準備中。

使用現有的 SAP 全域主機,在 SOFS 叢集上準備基礎結構

您可以重複使用第一個 SAP SID1 系統的現有 < SAPGlobalHost > < 和 Volume1 > 。

Figure 3: Multi-SID SOFS is the same as the SAP Global Host name

圖 3: 多重 SID SOFS 與 SAP 全域主機名稱相同

重要

針對第二個 SAP SID2 > 系統,會使用相同的 Volume1 和相同的 < SAPGlobalHost > 網路 < 名稱。 因為您已經將 SAPMNT 設定 為各種 SAP 系統的共用名稱稱,若要重複使用 < SAPGlobalHost > 網路名稱,您必須使用相同的 Volume1

SID2 > 全域主機的 < 檔案路徑為 C:\Cluster儲存體\ Volume1 \usr\sap < SID2 > \SYS。

<針對 SID2 > 系統,您必須準備 SAP 全域主機 。。\系統。。 SOFS 叢集上的資料夾。

若要準備 SID2 > 實例的 < SAP 全域主機,請執行下列 PowerShell 腳本:

##################
# SAP multi-SID
##################

$SAPSID2 = "PR2"
$DomainName2 = "SAPCLUSTER"
$SAPSIDGlobalAdminGroupName2 = "$DomainName2\SAP_" + $SAPSID2 + "_GlobalAdmin"

# SAP ASCS/SCS cluster nodes
$ASCSCluster2Node1 = "ja1-ascs-0"
$ASCSCluster2Node2 = "ja1-ascs-1"

# Define the SAP ASCS/SCS cluster node computer objects
$ASCSCluster2ObjectNode1 = "$DomainName2\$ASCSCluster2Node1$"
$ASCSCluster2ObjectNode2 = "$DomainName2\$ASCSCluster2Node2$"

# Create usr\sap\.. folders on CSV
$SAPGlobalFolder2 = "C:\ClusterStorage\Volume1\usr\sap\$SAPSID2\SYS"
New-Item -Path $SAPGlobalFolder2 -ItemType Directory

# Add permissions for the SAP SID2 system
Grant-SmbShareAccess -Name sapmnt -AccountName $SAPSIDGlobalAdminGroupName2, $ASCSCluster2ObjectNode1, $ASCSCluster2ObjectNode2 -AccessRight Full -Force


$UsrSAPFolder = "C:\ClusterStorage\Volume1\usr\sap\"

# Set file and folder security
$Acl = Get-Acl $UsrSAPFolder

# Add the security object of the SAP_<sid>_GlobalAdmin group
$Ar = New-Object  system.security.accesscontrol.filesystemaccessrule($SAPSIDGlobalAdminGroupName2,"FullControl", 'ContainerInherit,ObjectInherit', 'None', 'Allow')
$Acl.SetAccessRule($Ar)

# Add the security object of the clusternode1$ computer object
$Ar = New-Object  system.security.accesscontrol.filesystemaccessrule($ASCSCluster2ObjectNode1,"FullControl",'ContainerInherit,ObjectInherit', 'None', 'Allow')
$Acl.SetAccessRule($Ar)

# Add the security object of the clusternode2$ computer object
$Ar = New-Object  system.security.accesscontrol.filesystemaccessrule($ASCSCluster2ObjectNode2,"FullControl",'ContainerInherit,ObjectInherit', 'None', 'Allow')
$Acl.SetAccessRule($Ar)

# Set security
Set-Acl $UsrSAPFolder $Acl -Verbose

使用不同的 SAP 全域主機,在 SOFS 叢集上準備基礎結構

您可以設定第二個 SOFS(例如,使用 SAPGlobalHost2 > 的第二個 SOFS 叢集角色,以及第二 < 個 SID2 的不同 Volume2 > )。 <

Figure 4: Multi-SID SOFS is the same as the SAP GLOBAL host name 2

圖 4: 多重 SID SOFS 與 SAP GLOBAL 主機名稱 2 相同

若要使用 < SAPGlobalHost2 > 建立第二個 SOFS 角色,請執行此 PowerShell 腳本:

# Create SOFS with SAP Global Host Name 2
$SAPGlobalHostName = "sapglobal2"
Add-ClusterScaleOutFileServerRole -Name $SAPGlobalHostName

建立第二 個 Volume2 。 執行此 PowerShell 腳本:

New-Volume -StoragePoolFriendlyName S2D* -FriendlyName SAPPR2 -FileSystem CSVFS_ReFS -Size 5GB -ResiliencySettingName Mirror

Figure 5: Second Volume2 in Failover Cluster Manager

圖 5: 容錯移轉叢集管理員中的第二個磁片區

建立第二 < 個 SID2 > 的 SAP 通用檔案夾,並設定檔案安全性。

執行此 PowerShell 腳本:

# Create a folder for <SID2> on a second Volume2 and set file security
$SAPSID = "PR2"
$DomainName = "SAPCLUSTER"
$SAPSIDGlobalAdminGroupName = "$DomainName\SAP_" + $SAPSID + "_GlobalAdmin"

# SAP ASCS/SCS cluster nodes
$ASCSClusterNode1 = "ascs-1"
$ASCSClusterNode2 = "ascs-2"

# Define SAP ASCS/SCS cluster node computer objects
$ASCSClusterObjectNode1 = "$DomainName\$ASCSClusterNode1$"
$ASCSClusterObjectNode2 = "$DomainName\$ASCSClusterNode2$"

# Create usr\sap\.. folders on CSV
$SAPGlobalFolder = "C:\ClusterStorage\Volume2\usr\sap\$SAPSID\SYS"
New-Item -Path $SAPGlobalFOlder -ItemType Directory

$UsrSAPFolder = "C:\ClusterStorage\Volume2\usr\sap\"

# Set file and folder security
$Acl = Get-Acl $UsrSAPFolder

# Add the file security object of the SAP_<sid>_GlobalAdmin group
$Ar = New-Object  system.security.accesscontrol.filesystemaccessrule($SAPSIDGlobalAdminGroupName,"FullControl", 'ContainerInherit,ObjectInherit', 'None', 'Allow')
$Acl.SetAccessRule($Ar)

# Add the security object of the clusternode1$ computer object
$Ar = New-Object  system.security.accesscontrol.filesystemaccessrule($ASCSClusterObjectNode1,"FullControl",'ContainerInherit,ObjectInherit', 'None', 'Allow')
$Acl.SetAccessRule($Ar)

# Add the security object of the clusternode2$ computer object
$Ar = New-Object  system.security.accesscontrol.filesystemaccessrule($ASCSClusterObjectNode2,"FullControl",'ContainerInherit,ObjectInherit', 'None', 'Allow')
$Acl.SetAccessRule($Ar)

# Set security
Set-Acl $UsrSAPFolder $Acl -Verbose

若要使用第二個 SAP SID2 的 < SAPGlobalHost2 主機名稱在 Volume2 > > 上建立 SAPMNT 檔案共用,請在容錯移轉叢集管理員中啟動 [新增檔案共用 精靈]。 <

以滑鼠右鍵按一下 saoglobal2 SOFS 叢集群組,然後選取 [ 新增檔案共用 ]。

Figure 6: Start the

圖 6: 啟動 [新增檔案共用] 精靈


Figure 7:

圖 7: 選取 [SMB 共用 – 快速]


Figure 8: Select

圖 8: 選取 「sapglobalhost2」,並在 Volume2 上指定路徑


Figure 9: Set file share name to

圖 9: 將檔案共用名稱稱設定為 「sapmnt」


Figure 10: Disable all settings

圖 10: 停用所有設定


針對下列專案將完整控制 許可權指派 給檔案和 sapmnt 共用:

  • SAP_ < SID > _Global管理員 網域使用者群組
  • ASCS/SCS 叢集節點 ascs-1$ ascs-2$ 的電腦物件

Figure 11: Assign Full control permissions to user group and computer accounts

圖 11: 將「完全控制」指派給使用者群組和電腦帳戶


Figure 12: Select

圖 12: 選取 [建立]


Figure 13: The second sapmnt bound to sapglobal2 host and Volume2 is created

圖 13: 已建立第二個系結至 sapglobal2 主機和 Volume2 的 sapmnt


安裝 SAP NetWeaver multi-SID

安裝 SAP < SID2 > ASCS/SCS 和 ERS 實例

依照先前針對一個 SAP < SID > 所述,遵循相同的安裝和設定步驟。

安裝 DBMS 和 SAP 應用程式伺服器

如先前所述安裝 DBMS 和 SAP 應用程式伺服器。

下一步