適用於 Azure 的 SAP LaMa 連接器

許多客戶都會使用 SAP 橫向管理 (LaMa) 來操作和監視其 SAP 環境。 自 3.0 版 SP05 起,SAP LaMa 預設會包含 Azure 的連接器。 您可以使用此連接器來解除分配和啟動虛擬機(VM)、複製和重新放置受控磁碟,以及刪除受控磁碟。 透過這些基本作業,您可以使用 SAP LaMa 來重新配置、複製、複製和重新整理 SAP 系統。

本指南說明如何設定適用於 Azure 的 SAP LaMa 連接器。 它也會說明如何建立及設定可用來安裝自適性 SAP 系統的虛擬機。

注意

連接器僅適用於 SAP LaMa Enterprise Edition。

資源

下列 SAP 附註與 Azure 上的 SAP LaMa 主題相關:

附注編號 標題
2343511 適用於 SAP 橫向管理的 Microsoft Azure 連接器 (LaMa)
2350235 SAP Landscape Management 3.0 - Enterprise Edition

您可以在 SAP Help Portal for SAP LaMa 中找到詳細資訊。

注意

如果您需要 SAP LaMa 或 Azure 連接器的支援,請在元件 BC-VCM-LVM-HYPERV 上使用 SAP 開啟事件。

一般備註

  • 請務必在安裝程式>啟用自動裝入點建立 設定> Engine。

    如果 SAP LaMa 在虛擬機上使用 SAP Adaptive Extensions (SAPACEXT) 掛接磁碟區,則如果未啟用此設定,則裝入點必須存在。

  • 使用個別的子網,而且當您部署新的 VM 和 SAP 實例時,請勿使用動態 IP 位址來防止 IP 位址「竊取」。

    如果您在 SAP LaMa 也使用的子網中使用動態 IP 位址配置,則準備具有 SAP LaMa 的 SAP 系統可能會失敗。 如果 SAP 系統尚未準備,則不會保留 IP 位址,而且可能會配置給其他虛擬機。

  • 如果您登入受管理的主機,請勿封鎖文件系統被卸除。

    如果您登入 Linux 虛擬機,並將工作目錄變更為裝入點中的目錄(例如 /usr/sap/AH1/ASCS00/exe),則無法卸除磁碟區,且重新配置或未準備作業失敗。

  • 請務必在 SUSE SLES Linux 虛擬機上停用 CLOUD_NETCONFIG_MANAGE 。 如需詳細資訊,請參閱 SUSE KB 7023633

設定適用於 Azure 的 SAP LaMa 連接器

從 3.0 SP05 版起,Azure 的連接器包含在 SAP LaMa 中。 我們建議一律安裝 SAP LaMa 3.0 的最新記錄套件和修補檔。

Azure 的連接器會使用 Azure Resource Manager API 來管理 Azure 資源。 SAP LaMa 可以使用服務主體或受控識別來針對此 API 進行驗證。 如果您的 SAP LaMa 實例正在 Azure VM 上執行,建議您使用受控識別。

使用服務主體取得 Azure API 的存取權

請遵循下列步驟,為適用於 Azure 的 SAP LaMa 連接器建立服務主體:

  1. 前往 Azure 入口網站
  2. 開啟 [ Microsoft Entra ID ] 窗格。
  3. 選取 應用程式註冊
  4. 選取新增註冊
  5. 輸入名稱,然後選取 [ 註冊]。
  6. 選取新的應用程式,然後在 [設定] 索引標籤上,選取 [憑證與秘密]。
  7. 建立新的客戶端密碼、輸入新密鑰的描述、選取密碼到期的時間,然後選取 [ 儲存]。
  8. 記下值。 您將使用它作為服務主體的密碼。
  9. 記下應用程式識別碼。 您將使用它作為服務主體的用戶名稱。

根據預設,服務主體沒有存取 Azure 資源的許可權。 針對包含 SAP LaMa 應該管理的 SAP 系統的所有資源群組,將參與者角色指派給資源群組範圍中的服務主體。 如需詳細步驟,請參閱使用 Azure 入口網站指派 Azure 角色

使用受控識別來取得 Azure API 的存取權

若要能夠使用受控識別,您的 SAP LaMa 實例必須在具有系統指派或使用者指派身分識別的 Azure VM 上執行。 如需受控識別的詳細資訊,請參閱什麼是適用於 Azure 資源的受控識別?和使用 Azure 入口網站 在 VM 上設定 Azure 資源的受控識別。

根據預設,受控識別沒有存取 Azure 資源的許可權。 針對包含 SAP LaMa 應該管理的 SAP 系統的所有資源群組,將參與者角色指派給資源群組範圍中的 VM 身分識別。 如需詳細步驟,請參閱使用 Azure 入口網站指派 Azure 角色

在 Azure 的 SAP LaMa 連接器設定中,選取 [ 使用受控識別 ] 來啟用受控識別的使用。 如果您想要使用系統指派的身分識別,請將 [ 用戶名稱 ] 字段保留空白。 如果您想要使用使用者指派的身分識別,請在 [用戶名稱] 字段中輸入標識符

在 SAP LaMa 中建立新的連接器

開啟 SAP LaMa 網站並移至 [基礎結構]。 在 [ 雲端管理員] 索引標籤上,選取 [ 新增]。 選取 [Microsoft Azure 雲端配接器],然後選取 [ 下一步]。 輸入下列資訊:

  • 標籤:選擇連接器實例的名稱。

  • 使用者名稱:輸入服務主體應用程式識別碼或虛擬機使用者指派身分識別的標識碼。

  • 密碼:輸入服務主體金鑰/密碼。 如果您使用系統指派或使用者指派的身分識別,您可以將此欄位保留空白。

  • URL:保留預設 https://management.azure.com/

  • 監視間隔 (秒):輸入至少 300 的間隔。

  • 使用受控識別:選取即可讓 SAP LaMa 使用系統指派或使用者指派的身分識別,對 Azure API 進行驗證。

  • 訂用帳戶標識碼:輸入 Azure 訂用帳戶標識碼。

  • Microsoft Entra 租使用者標識碼:輸入 Active Directory 租使用者的識別碼。

  • Proxy 主機:如果 SAP LaMa 需要 Proxy 才能連線到因特網,請輸入 Proxy 的主機名。

  • Proxy 埠:輸入 Proxy 的 TCP 連接埠。

  • 變更 儲存體 類型以節省成本:如果 Azure 配接器應該變更受控磁碟的儲存類型,以節省未使用磁碟時的成本,請啟用此設定。

    針對 SAP 實例組態中所參考的數據磁碟,配接器會在實例未準備作業期間,將磁碟類型變更為 Standard 儲存體,並在實例準備作業期間回到原始記憶體類型。

    如果您在 SAP LaMa 中停止虛擬機,配接器會將所有連結磁碟的儲存類型,包括 OS 磁碟,變更為標準 儲存體。 如果您在 SAP LaMa 中啟動虛擬機,配接器會將記憶體類型變更回原始記憶體類型。

選取 [測試設定] 以驗證輸入。 您應該會在網站底部看到下列訊息:

「連線 成功:對 Microsoft 雲端 連線 成功。 找到 7 個資源群組(只要求 10 個群組)。

布建新的調適型 SAP 系統

您可以手動部署新的虛擬機,或使用快速入門存放庫中的其中一個 Azure 範本。 存放庫包含 SAP NetWeaver ASCSSAP NetWeaver 應用程式伺服器資料庫的範本。 您也可以使用這些範本來布建新的主機,作為系統複製、複製或類似活動的一部分。

建議您針對您想要使用 SAP LaMa 管理的所有虛擬機使用個別的子網。 我們也建議您不要在部署新的虛擬機和 SAP 實例時,使用動態 IP 位址來防止 IP 位址「竊取」。

注意

可能的話,請移除所有虛擬機擴充功能。 它們可能會導致長時間的運行時間中斷連結磁碟與虛擬機。

請確定使用者 <hanasid>adm、user< sapsid>adm,以及目標計算機上具有相同標識碼和群組標識符的群組 sapsys,或使用 LDAP。 在應該用來執行 SAP NetWeaver ABAP 中央服務 (ASCS) 或 SAP 中央服務 (SCS) 的虛擬機上啟用和啟動網路檔案共用 (NFS) 伺服器。

手動部署

SAP LaMa 會使用 SAP 主機代理程式與虛擬機通訊。 如果您手動部署虛擬機,或未使用快速入門存放庫中的 Azure Resource Manager 範本,請務必安裝最新的 SAP 主機代理程式和 SAP 調適型擴充功能。 如需 Azure 所需修補程式層級的詳細資訊,請參閱 SAP 附注 2343511

手動部署Linux虛擬機

使用 SAP 附註 2343511中列出的其中一個支援的作業系統,建立新的虛擬機。 為 SAP 實例新增更多 IP 組態。 每個實例至少需要一個IP位址,而且必須使用虛擬主機名來安裝。

SAP NetWeaver ASCS 實例需要 /sapmnt/SAPSID、/usr/<sap/<SAPSID>>、/usr/sap/trans/usr/sap/<sapsid>adm 的磁碟。 SAP NetWeaver 應用程式伺服器不需要更多磁碟。 與 SAP 實例相關的所有專案都必須儲存在 ASCS 上,並透過 NFS 匯出。 否則,您目前無法使用 SAP LaMa 新增更多應用程式伺服器。

Diagram that shows SAP NetWeaver ASCS on Linux.

SAP HANA 的手動部署

使用 SAP HANA 支援的其中一個作業系統建立新的虛擬機,如 SAP 附注 2343511所示。 為 SAP HANA 新增一個額外的 IP 組態,以及每個 HANA 租使用者一個。

SAP HANA 需要 /hana/shared、/hana/backup、/hana/data/hana/log 的磁碟

Diagram that shows SAP HANA on Linux.

Linux 上的 Oracle 資料庫手動部署

使用 Oracle 資料庫的其中一個支援作業系統建立新的虛擬機,如 SAP 附注 2343511所述。 為 Oracle 資料庫新增一個額外的 IP 組態。

Oracle 資料庫需要 /oracle、/home/oraod1/home/oracle 的磁碟

Diagram that shows an Oracle database on Linux and the disks it needs.

Microsoft SQL Server 的手動部署

使用其中一個 Microsoft SQL Server 支援的作業系統建立新的虛擬機,如 SAP 附註 2343511所述。 為 SQL Server 實例新增一個額外的 IP 組態。

SQL Server 資料庫伺服器需要資料庫數據和記錄檔的磁碟。 它也需要 c:\usr\sap磁碟。

Diagram that shows an Oracle database on Linux.

請務必在您要作為重新放置 SAP NetWeaver 應用程式伺服器或系統複製/複製目標的虛擬機上安裝支援的 Microsoft ODBC Driver for SQL Server。 SAP LaMa 無法重新配置 SQL Server 本身,因此您想要用於這些用途的虛擬機需要預安裝 SQL Server。

使用 Azure 範本部署虛擬機

虛擬機器作業系統的 SAP 軟體下載中心 下載下列最新的可用封存:

  • SAPCAR 7.21
  • SAP 主機代理程式 7.21
  • SAP Adaptive Extension 1.0 EXT

另請從 Microsoft 下載中心下載下列元件:

  • Microsoft Visual C++ 2010 可轉散發套件 (x64) (僅限 Windows)
  • Microsoft ODBC Driver for SQL Server (僅限 SQL Server)

範本部署需要元件。 讓範本使用它們最簡單的方式,就是將它們上傳至 Azure 記憶體帳戶,並建立共用存取簽章(SAS)。

樣本具有下列參數:

  • sapSystemId:SAP 系統識別碼 (SID)。 它用來建立磁碟配置(例如 /usr/sap/<sapsid>)。

  • computerName:新虛擬機的計算機名稱。 SAP LaMa 也會使用此參數。 當您使用此範本布建新的虛擬機做為系統複本的一部分時,SAP LaMa 會等到可連線到具有此電腦名稱的主機為止。

  • osType:您要部署的作業系統類型。

  • dbtype:資料庫的型別。 此參數可用來判斷需要新增多少額外的IP組態,以及磁碟配置的外觀。

  • sapSystemSize:您要部署的 SAP 系統大小。 它用來判斷虛擬機實例的類型和大小。

  • adminUsername:虛擬機的用戶名稱。

  • adminPassword:虛擬機的密碼。 您也可以提供 SSH 的公鑰。

  • sshKeyData:虛擬機的公鑰。 它只支援Linux作業系統。

  • subnetId:您想要使用的子網標識符。

  • deployEmptyTarget:如果您想要使用虛擬機做為實例重新配置的目標或類似專案,則可以部署的空白目標。 在此情況下,不會連結其他磁碟或IP組態。

  • sapcarLocation:符合您所部署作業系統的 SAPCAR 應用程式位置。 SAPCAR 可用來擷取您在其他參數中提供的封存。

  • sapHostAgentArchiveLocation:SAP 主機代理程式封存的位置。 SAP 主機代理程式會部署為此範本部署的一部分。

  • sapacExtLocation:SAP Adaptive Extensions 的位置。 SAP 附注 2343511 列出 Azure 所需的最低修補程式層級。

  • vcRedistLocation:安裝 SAP Adaptive Extensions 所需的 Variant 組態運行時間位置。 只有 Windows 才需要此參數。

  • odbcDriverLocation:您要安裝的 ODBC 驅動程式位置。 僅支援 Microsoft ODBC Driver for SQL Server。

  • sapadmPassword:sapadm 使用者的密碼

  • sapadmId:sapadm 使用者的 Linux 用戶識別碼。 Windows 不需要它。

  • sapsysGid:sapsys 群組的Linux群組標識碼。 Windows 不需要它。

  • _artifactsLocation:基底 URI,其中包含此範本所需的成品。 當您使用隨附的腳本部署範本時,會使用訂用帳戶中的私人位置,並自動產生此值。 只有在您未從 GitHub 部署範本時,才需要此 URI。

  • _artifactsLocationSasToken:存取 _artifactsLocation所需的 SAS 令牌。 當您使用隨附的腳本部署範本時,系統會自動產生SAS令牌。 只有在您未從 GitHub 部署範本時,才需要此令牌。

SAP HANA

下列範例假設您使用SID HN1 安裝 SAP HANA 系統,並使用 SID AH1 安裝 SAP NetWeaver 系統。 虛擬主機名如下:

  • HANA 實例的 hn1-db
  • ah1-db 適用於 SAP NetWeaver 系統所使用的 HANA 租使用者
  • ah1-ascs for SAP NetWeaver ASCS
  • 第一部 SAP NetWeaver 應用程式伺服器的 ah1-di-0

使用 Azure 受控磁碟安裝 SAP NetWeaver ASCS for SAP HANA

開始 SAP 軟體佈建管理員 (SWPM) 之前,您必須掛接 ASCS 虛擬主機名的 IP 位址。 建議的方法是使用 SAPACEXT。 如果您使用 SAPACEXT 掛接 IP 位址,請務必在重新啟動後重新掛接 IP 位址。

Linux logo. Linux

# /usr/sap/hostctrl/exe/sapacext -a ifup -i <network interface> -h <virtual hostname or IP address> -n <subnet mask>
/usr/sap/hostctrl/exe/sapacext -a ifup -i eth0 -h ah1-ascs -n 255.255.255.128

Windows logo. 窗戶

# C:\Program Files\SAP\hostctrl\exe\sapacext.exe -a ifup -i <network interface> -h <virtual hostname or IP address> -n <subnet mask>
C:\Program Files\SAP\hostctrl\exe\sapacext.exe -a ifup -i "Ethernet 3" -h ah1-ascs -n 255.255.255.128

執行 SWPM。 針對 ASCS 實例主機名,請使用 ah1-ascs

Linux logo. Linux

將下列配置文件參數新增至位於 /usr/sap/hostctrl/exe/host_profile 的 SAP 主機代理程式配置檔。 如需詳細資訊,請參閱 SAP 附注 2628497

acosprep/nfs_paths=/home/ah1adm,/usr/sap/trans,/sapmnt/AH1,/usr/sap/AH1

在 Azure NetApp Files 上安裝 SAP NetWeaver ASCS for SAP HANA

Azure NetApp Files 提供適用於 Azure 的 NFS。 在 SAP LaMa 的內容中,這可簡化 ASCS 實例的建立,以及後續的應用程式伺服器安裝。 先前,ASCS 實例也必須做為 NFS 伺服器,而且參數 acosprep/nfs_paths 必須新增至 SAP 主機代理程式的主機配置檔。

網路需求

Azure NetApp Files 需要委派的子網,這必須是與 SAP 伺服器相同的虛擬網路的一部分。 以下是這類設定的範例:

  1. 建立虛擬網路和第一個子網。

    Screenshot that shows selections for creating a virtual network for Azure NetApp Files.

  2. 建立 Microsoft.NetApp/volumes 的委派子網。

    Screenshot that shows selections for adding a delegated subnet.

    Screenshot that shows a list of subnets.

  3. 在 Azure 入口網站 中建立 NetApp 帳戶。

    Screenshot that shows selections for creating a NetApp account.

    Screenshot that shows a created LaMa NetApp account.

    在 NetApp 帳戶中,容量集區會指定每個集區的大小和磁碟類型。

    Screenshot that shows selections for creating a NetApp capacity pool.

    Screenshot that shows a created NetApp capacity pool.

  4. 定義NFS磁碟區。

    因為一個集區可能包含多個系統的磁碟區,請選擇自我解釋的命名配置。 新增 SID 有助於將相關磁碟區群組在一起。

    針對 ASCS 和 AS 實例,您需要下列掛接:/sapmnt/<SID>、/usr/sap/<SID> 和 /home/<sid>adm。 您可以選擇性地針對中央傳輸目錄使用 /usr/sap/trans ,這至少由一個橫向的所有系統使用。

    Screenshot that shows basic details for creating a volume.

    Screenshot that shows protocol details for creating a volume.

    Screenshot that shows the tab for reviewing details before creating a volume.

  5. 針對其他磁碟區重複上述步驟。

    Screenshot that shows a list of created volumes.

  6. 將磁碟區掛接至執行 SAP SWPM 初始安裝的系統:

    1. 建立裝入點。 在此情況下,SID 是 AN1,因此您可以執行下列命令:

      mkdir -p /home/an1adm
      mkdir -p /sapmnt/AN1
      mkdir -p /usr/sap/AN1
      mkdir -p /usr/sap/trans
      
    2. 使用下列命令掛接 Azure NetApp Files 磁碟區:

      # sudo mount -t nfs -o rw,hard,rsize=65536,wsize=65536,vers=3,tcp 9.9.9.132:/an1-home-sidadm /home/an1adm
      # sudo mount -t nfs -o rw,hard,rsize=65536,wsize=65536,vers=3,tcp 9.9.9.132:/an1-sapmnt-sid /sapmnt/AN1
      # sudo mount -t nfs -o rw,hard,rsize=65536,wsize=65536,vers=3,tcp 9.9.9.132:/an1-usr-sap-sid /usr/sap/AN1
      # sudo mount -t nfs -o rw,hard,rsize=65536,wsize=65536,vers=3,tcp 9.9.9.132:/global-usr-sap-trans /usr/sap/trans
      

      您也可以從入口網站查閱掛接命令。 必須調整本機裝入點。

    3. 執行 df -h 命令。 檢查輸出以確認您已正確掛接磁碟區。

      Screenshot of OS-level mount points in output.

  7. 使用 SWPM 執行安裝。 至少必須針對一個 AS 實例執行相同的步驟。

    安裝成功之後,必須在 SAP LaMa 內探索系統。 裝入點看起來應該類似 ASCS 和 AS 實例的下列螢幕快照。

    Screenshot that shows SAP LaMa mount points.

    注意

    這是範例。 IP 位址和匯出路徑與您先前使用的IP位址和匯出路徑不同。

安裝 SAP Hana

如果您使用 SAP HANA 資料庫生命週期管理員 (HDBLCM) 命令行工具來安裝 SAP HANA,請使用 --hostname 參數來提供虛擬主機名。

將資料庫虛擬主機名的IP位址新增至網路介面。 建議的方法是使用 SAPACEXT。 如果您使用 SAPACEXT 掛接 IP 位址,請務必在重新啟動後重新掛接 IP 位址。

針對應用程式伺服器用來連線到 HANA 租使用者的名稱,新增另一個虛擬主機名和 IP 位址:

# /usr/sap/hostctrl/exe/sapacext -a ifup -i <network interface> -h <virtual hostname or IP address> -n <subnet mask>
/usr/sap/hostctrl/exe/sapacext -a ifup -i eth0 -h hn1-db -n 255.255.255.128
/usr/sap/hostctrl/exe/sapacext -a ifup -i eth0 -h ah1-db -n 255.255.255.128

在應用程式伺服器 VM 上執行 SWPM 的資料庫實例安裝,而不是在 HANA VM 上執行。 在 [ 適用於 SAP 系統 的資料庫] 對話框中,針對 [資料庫主機] 使用 ah1-db

安裝 SAP NetWeaver Application Server for SAP HANA

啟動 SWPM 之前,您必須掛接應用程式伺服器虛擬主機名的 IP 位址。 建議的方法是使用 SAPACEXT。 如果您使用 SAPACEXT 掛接 IP 位址,請務必在重新啟動後重新掛接 IP 位址。

Linux logo. Linux

# /usr/sap/hostctrl/exe/sapacext -a ifup -i <network interface> -h <virtual hostname or IP address> -n <subnet mask>
/usr/sap/hostctrl/exe/sapacext -a ifup -i eth0 -h ah1-di-0 -n 255.255.255.128

Windows logo. 窗戶

# C:\Program Files\SAP\hostctrl\exe\sapacext.exe -a ifup -i <network interface> -h <virtual hostname or IP address> -n <subnet mask>
C:\Program Files\SAP\hostctrl\exe\sapacext.exe -a ifup -i "Ethernet 3" -h ah1-di-0 -n 255.255.255.128

建議您使用 SAP NetWeaver 設定檔參數 dbs/hdb/hdb_use_ident 來設定用來在 SAP HANA 使用者存放區 (hdbuserstore) 中尋找金鑰的身分識別。 您可以使用 SWPM 在資料庫實體安裝之後手動新增此參數,或使用下列程式代碼執行 SWPM:

# from https://blogs.sap.com/2015/04/14/sap-hana-client-software-different-ways-to-set-the-connectivity-data/
/sapdb/DVDs/IM_LINUX_X86_64/sapinst HDB_USE_IDENT=SYSTEM_COO

如果您手動設定它,您也需要建立新的 hdbuserstore 專案:

# run as <sapsid>adm
/usr/sap/AH1/hdbclient/hdbuserstore LIST
# reuse the port that was listed from the command above, in this example 35041
/usr/sap/AH1/hdbclient/hdbuserstore SET DEFAULT ah1-db:35041@AH1 SAPABAP1 <password>

在 [主要應用程式伺服器實例] 對話框中,針對 PAS 實例主機名,使用 ah1-di-0

SAP HANA 的安裝後步驟

在您嘗試複製租用戶、移動租使用者或建立系統複寫之前,請先備份 SYSTEMDB 和所有租用戶資料庫。

Microsoft SQL Server

下列範例假設您使用 SID AS1 安裝 SAP NetWeaver 系統。 虛擬主機名如下:

  • 適用於 SAP NetWeaver 系統使用的 SQL Server 實例 as1-db
  • 適用於 SAP NetWeaver ASCS 的 as1-ascs
  • 適用於第一部 SAP NetWeaver 應用程式伺服器的 as1-di-0

安裝 SAP NetWeaver ASCS for SQL Server

啟動 SWPM 之前,您必須掛接 ASCS 虛擬主機名的 IP 位址。 建議的方法是使用 SAPACEXT。 如果您使用 SAPACEXT 掛接 IP 位址,請務必在重新啟動後重新掛接 IP 位址。

# C:\Program Files\SAP\hostctrl\exe\sapacext.exe -a ifup -i <network interface> -h <virtual hostname or IP address> -n <subnet mask>
C:\Program Files\SAP\hostctrl\exe\sapacext.exe -a ifup -i "Ethernet 3" -h as1-ascs -n 255.255.255.128

執行 SWPM。 針對 ASCS 實例主機名,請使用 as1-ascs

安裝 SQL Server

開始 SWPM 之前,您必須將資料庫虛擬主機名的 IP 位址新增至網路介面。 建議的方法是使用 SAPACEXT。 如果您使用 SAPACEXT 掛接 IP 位址,請務必在重新啟動後重新掛接 IP 位址。

# C:\Program Files\SAP\hostctrl\exe\sapacext.exe -a ifup -i <network interface> -h <virtual hostname or IP address> -n <subnet mask>
C:\Program Files\SAP\hostctrl\exe\sapacext.exe -a ifup -i "Ethernet 3" -h as1-db -n 255.255.255.128

在 SQL Server 虛擬機上執行 SWPM 的資料庫實例安裝。 使用 SAPINST_USE_HOSTNAME=as1-db 來覆寫用來連線到 SQL Server 的主機名。 如果您使用 Azure Resource Manager 範本部署虛擬機,請將資料庫數據檔所使用的目錄設定為 C:\sql\data,並將資料庫記錄檔設定為 C:\sql\log

請確定使用者 NT AUTHORITY\SYSTEM 可以存取 SQL Server 實例,並具有伺服器角色 sysadmin。 如需詳細資訊,請參閱 SAP 附注 18777272562184

安裝SAP NetWeaver 應用程式伺服器

啟動 SWPM 之前,您必須掛接應用程式伺服器虛擬主機名的 IP 位址。 建議的方法是使用 SAPACEXT。 如果您使用 SAPACEXT 掛接 IP 位址,請務必在重新啟動後重新掛接 IP 位址。

# C:\Program Files\SAP\hostctrl\exe\sapacext.exe -a ifup -i <network interface> -h <virtual hostname or IP address> -n <subnet mask>
C:\Program Files\SAP\hostctrl\exe\sapacext.exe -a ifup -i "Ethernet 3" -h as1-di-0 -n 255.255.255.128

在 [主要應用程式伺服器實例] 對話框中,針對 PAS 實例主機名,使用 as1-di-0

疑難排解

探索期間的錯誤和警告

  • SELECT 許可權遭到拒絕。
    • 錯誤:

      [Microsoft][ODBC SQL Server Driver][SQL Server]The SELECT permission was denied on the object 'log_shipping_primary_databases', database 'msdb', schema 'dbo'. [SOAPFaultException] The SELECT permission was denied on the object 'log_shipping_primary_databases', database 'msdb', schema 'dbo'.

    • 解決方案:請確定 NT AUTHORITY\SYSTEM 可以存取 SQL Server 實例。 請參閱 SAP 附註 2562184

實例驗證期間的錯誤和警告

  • hdbuserstore 驗證中引發例外狀況。 請參閱記錄查看器。
    • 原因如下com.sap.nw.lm.aci.monitor.api.validation

    • 錯誤:

      RuntimeValidationException

      Exception in validator with ID 'RuntimeHDBConnectionValidator' (Validation: 'VALIDATION_HDB_USERSTORE'): Could not retrieve the hdbuserstore
      HANA userstore is not in the correct location

    • 解決方案:請確定 /usr/sap/AH1/hdbclient/install/installation.ini 正確。

系統復本期間的錯誤和警告

  • 驗證系統布建步驟時發生錯誤。

    • 原因如下com.sap.nw.lm.aci.engine.base.api.util.exception

    • 錯誤:

      HAOperationException

      Calling '/usr/sap/hostctrl/exe/sapacext -a ShowHanaBackups -m HN1 -f 50 -h hn1-db -o level=0\;status=5\;port=35013 pf=/usr/sap/hostctrl/exe/host_profile -R -T dev_lvminfo -u SYSTEM -p hook -r' | /usr/sap/hostctrl/exe/sapacext -a ShowHanaBackups -m HN1 -f 50 -h hn1-db -o level=0\;status=5\;port=35013 pf=/usr/sap/hostctrl/exe/host_profile -R -T dev_lvminfo -u SYSTEM -p hook -r

    • 解決方案:備份來源 HANA 系統中的所有資料庫。

  • 在資料庫實例的系統複製 [開始 ] 步驟中發生錯誤。

    • 錯誤:

      Host Agent Operation '000D3A282BC91EE8A1D76CF1F92E2944' failed (OperationException. FaultCode: '127', Message: 'Command execution failed. : [Microsoft][ODBC SQL Server Driver][SQL Server]User does not have permission to alter database 'AS2', the database does not exist, or the database is not in a state that allows access checks.')

    • 解決方案:請確定 NT AUTHORITY\SYSTEM 可以存取 SQL Server 實例。 請參閱 SAP 附註 2562184

系統複製期間的錯誤和警告

  • 嘗試在應用程式伺服器或 ASCS 的 強制註冊和啟動實例代理程式步驟中註冊實例代理 程式時發生錯誤。

    • 錯誤:

      Error occurred when trying to register instance agent. (RemoteException: 'Failed to load instance data from profile '\\as1-ascs\sapmnt\AS1\SYS\profile\AS1_D00_as1-di-0': Cannot access profile '\\as1-ascs\sapmnt\AS1\SYS\profile\AS1_D00_as1-di-0': No such file or directory.')

    • 解決方案:請確定 ASCS/SCS 上的 sapmnt 共用具有SAP_AS1_Global管理員的完整存取權。

  • 啟用複製的啟動保護步驟中發生錯誤。

    • 錯誤:

      Failed to open file '\\as1-ascs\sapmnt\AS1\SYS\profile\AS1_D00_as1-di-0' Cause: No such file or directory

    • 解決方案:應用程式伺服器的電腦帳戶需要配置檔的寫入許可權。

建立系統復寫期間的錯誤和警告

  • 選取 [建立系統複寫] 時引發例外狀況。

    • 原因如下com.sap.nw.lm.aci.engine.base.api.util.exception

    • 錯誤:

      HAOperationException

      Calling '/usr/sap/hostctrl/exe/sapacext -a ShowHanaBackups -m HN1 -f 50 -h hn1-db -o level=0\;status=5\;port=35013 pf=/usr/sap/hostctrl/exe/host_profile -R -T dev_lvminfo -u SYSTEM -p hook -r' | /usr/sap/hostctrl/exe/sapacext -a ShowHanaBackups -m HN1 -f 50 -h hn1-db -o level=0\;status=5\;port=35013 pf=/usr/sap/hostctrl/exe/host_profile -R -T dev_lvminfo -u SYSTEM -p hook -r

    • 解決方案:測試 SAPACEXT 是否可以以 hanasid>adm 的形式<執行。

  • 記憶體步驟中未啟用完整複本時發生錯誤。

    • 錯誤:

      An error occurred when reporting a context attribute message for path IStorageCopyData.storageVolumeCopyList:1 and field targetStorageSystemId

    • 解決方案:忽略步驟中的警告,然後再試一次。 此問題已在 SAP LaMa 的支援套件/修補程式中修正。

重新配置期間的錯誤和警告

  • NFS 重新匯出不允許路徑 /usr/sap/AH1

    • 解決方案:將 ASCS 匯出新增至 ASCS 主機代理程式設定檔。 請參閱 SAP 附註 2628497
  • 在重新放置 ASCS 時不會實作函式。

    • 指令輸出

      exportfs: host:/usr/sap/AX1: Function not implemented

    • 解決方案:請確定目標虛擬機上已啟用 NFS 伺服器服務以進行重新配置。

應用程式伺服器安裝期間的錯誤和警告

  • 執行 SAPinst getProfileDir 步驟時發生錯誤。

    • 錯誤:

      Last error reported by the step: Caught ESAPinstException in module call: Validator of step '|NW_DI|ind|ind|ind|ind|0|0|NW_GetSidFromProfiles|ind|ind|ind|ind|getSid|0|NW_readProfileDir|ind|ind|ind|ind|readProfile|0|getProfileDir' reported an error: Node \\\as1-ascs\sapmnt\AS1\SYS\profile does not exist. Start SAPinst in interactive mode to solve this problem

    • 解決方案:請確定 SWPM 正在與可存取設定檔的使用者一起執行。 您可以在 [應用程式伺服器安裝精靈] 中設定此使用者。

  • 執行 SAPinst askUnicode 步驟時發生錯誤。

    • 錯誤:

      Last error reported by the step: Caught ESAPinstException in module call: Validator of step '|NW_DI|ind|ind|ind|ind|0|0|NW_GetSidFromProfiles|ind|ind|ind|ind|getSid|0|NW_getUnicode|ind|ind|ind|ind|unicode|0|askUnicode' reported an error: Start SAPinst in interactive mode to solve this problem

    • 解決方案:如果您使用最近的 SAP 核心,SWPM 就無法再使用 ASCS 的訊息伺服器來判斷系統是否為 Unicode 系統。 請參閱 SAP 附註 2445033

      在 SAP LaMa 的新支援套件/修補程式中修正此問題之前,請在 SAP 系統的預設設定檔中設定設定檔參數 OS_UNICODE=uc 來解決此問題。

  • 執行 SAPinst dCheckGivenServer" version="1.0" 步驟時發生錯誤。

    • 錯誤:

      Last error reported by the step: Installation was canceled by user.

    • 解決方案:請確定 SWPM 正在與可存取設定檔的使用者一起執行。 您可以在 [應用程式伺服器安裝精靈] 中設定此使用者。

  • 執行 SAPinst checkClient" version="1.0" 步驟時發生錯誤。

    • 錯誤:

      Last error reported by the step: Installation was canceled by user.

    • 解決方案:請確定 Microsoft ODBC Driver for SQL Server 已安裝在您要安裝應用程式伺服器的虛擬機上。

  • 執行 SAPinst copyScripts 步驟時發生錯誤。

    • 錯誤:

      Last error reported by the step: System call failed. DETAILS: Error 13 (0x0000000d) (Permission denied) in execution of system call 'fopenU' with parameter (\\\as1-ascs/sapmnt/AS1/SYS/exe/uc/NTAMD64/strdbs.cmd, w), line (494) in file (\bas/bas/749_REL/bc_749_REL/src/ins/SAPINST/impl/src/syslib/filesystem/syxxcfstrm2.cpp), stack trace: CThrThread.cpp: 85: CThrThread::threadFunction() CSiServiceSet.cpp: 63: CSiServiceSet::executeService() CSiStepExecute.cpp: 913: CSiStepExecute::execute() EJSController.cpp: 179: EJSControllerImpl::executeScript() JSExtension.hpp: 1136: CallFunctionBase::call() iaxxcfile.cpp: 183: iastring CIaOsFileConnect::callMemberFunction(iastring const& name, args_t const& args) iaxxcfile.cpp: 1849: iastring CIaOsFileConnect::newFileStream(args_t const& _args) iaxxbfile.cpp: 773: CIaOsFile::newFileStream_impl(4) syxxcfile.cpp: 233: CSyFileImpl::openStream(ISyFile::eFileOpenMode) syxxcfstrm.cpp: 29: CSyFileStreamImpl::CSyFileStreamImpl(CSyFileStream*,iastring,ISyFile::eFileOpenMode) syxxcfstrm.cpp: 265: CSyFileStreamImpl::open() syxxcfstrm2.cpp: 58: CSyFileStream2Impl::CSyFileStream2Impl(const CSyPath & \\\aw1-ascs/sapmnt/AW1/SYS/exe/uc/NTAMD64/strdbs.cmd, 0x4) syxxcfstrm2.cpp: 456: CSyFileStream2Impl::open()

    • 解決方案:請確定 SWPM 正在與可存取設定檔的使用者一起執行。 您可以在 [應用程式伺服器安裝精靈] 中設定此使用者。

  • 執行 SAPinst askPasswords 步驟時發生錯誤。

    • 錯誤:

      Last error reported by the step: System call failed. DETAILS: Error 5 (0x00000005) (Access is denied.) in execution of system call 'NetValidatePasswordPolicy' with parameter (...), line (359) in file (\bas/bas/749_REL/bc_749_REL/src/ins/SAPINST/impl/src/syslib/account/synxcaccmg.cpp), stack trace: CThrThread.cpp: 85: CThrThread::threadFunction() CSiServiceSet.cpp: 63: CSiServiceSet::executeService() CSiStepExecute.cpp: 913: CSiStepExecute::execute() EJSController.cpp: 179: EJSControllerImpl::executeScript() JSExtension.hpp: 1136: CallFunctionBase::call() CSiStepExecute.cpp: 764: CSiStepExecute::invokeDialog() DarkModeGuiEngine.cpp: 56: DarkModeGuiEngine::showDialogCalledByJs() DarkModeDialog.cpp: 85: DarkModeDialog::submit() EJSController.cpp: 179: EJSControllerImpl::executeScript() JSExtension.hpp: 1136: CallFunctionBase::call() iaxxcaccount.cpp: 107: iastring CIaOsAccountConnect::callMemberFunction(iastring const& name, args_t const& args) iaxxcaccount.cpp: 1186: iastring CIaOsAccountConnect::validatePasswordPolicy(args_t const& _args) iaxxbaccount.cpp: 430: CIaOsAccount::validatePasswordPolicy_impl() synxcaccmg.cpp: 297: ISyAccountMgt::PasswordValidationMessage CSyAccountMgtImpl::validatePasswordPolicy(saponazure,*****) const

    • 解決方案:在隔離步驟中新增主機規則,以允許從 VM 到域控制器的通訊。

下一步