為 Azure Monitor for SAP 解決方案設定 SAP NetWeaver
在本操作指南中,了解如何設定 SAP NetWeaver 提供者,以與 Azure Monitor for SAP 解決方案搭配使用。
若為了收集 SAP 系統的資訊而設定 SAP Netweaver 提供者,使用者有兩種連線類型可選。 我們使用以下工具收集計量:
- SAP 控制 - SAP 啟動服務提供多種服務,包括監視 SAP 系統。 Azure Monitor for SAP 解決方案的兩個版本都使用 SAP Control,SAP Control 是展示這些功能的 SOAP Web 服務介面。 SAP 控制項介面將受保護和未受保護的 Web 服務方法區隔開來。 您必須解除某些方法的保護,才能讓 Azure Monitor for SAP 解決方案與 NetWeaver 搭配使用。
- SAP RFC - Azure Monitor for SAP 解決方案也提供使用標準 SAP RFC,從 SAP 系統收集其他資訊的功能。 它只能作為 Azure Monitor for SAP 解決方案的一部分使用。
您可使用 SAP NetWeaver 提供者收集以下計量:
- SAP 系統和應用程式伺服器可用性(例如發送器、ICM、閘道、訊息伺服器、加入佇列伺服器、IGS 看門狗的執行個體流程可用性)(SAP 控制項)
- 工作流程使用方式統計資料和趨勢(SAP 控制項)
- 加入佇列鎖定統計資料和趨勢(SAP 控制項)
- 佇列使用方式統計資料和趨勢(SAP 控制項)
- SMON 計量(交易代碼 - /SDF/SMON)(RFC)
- SWNC 工作負載、記憶體、交易、使用者、RFC 使用方式(交易代碼 - St03n)(RFC)
- 短傾印(交易代碼 - ST22)(RFC)
- 物件鎖定(交易代碼 - SM12)(RFC)
- 更新失敗(交易代碼 - SM13)(RFC)
- 系統記錄檔分析 (交易代碼 - SM21)(RFC)
- 批次工作統計資料(交易代碼 - SM37)(RFC)
- 輸出佇列(交易代碼 - SMQ1)(RFC)
- 輸入佇列(交易代碼 - SMQ2)(RFC)
- 交易 RFC (交易代碼 - SM59)(RFC)
- STMS 變更傳輸系統計量(交易代碼 - STMS)(RFC)
必要條件
- Azure 訂用帳戶。
- 現有的 Azure Monitor for SAP Solutions 資源。 若要建立 Azure Monitor for SAP 解決方案資源,請參閱 Azure 入口網站快速入門或 PowerShell 快速入門。
為 Azure Monitor for SAP 解決方案設定 NetWeaver
若要為目前的 Azure Monitor for SAP 解決方案版本設定 NetWeaver 提供者,您需要執行下列各項:
新增 SAP NetWeaver 提供者時若遇到問題,請參閱疑難排解一節。
必要條件未受保護的計量方法
若設定了 SAP NetWeaver 提供者,必須執行這個步驟。 若要擷取特定計量,您必須在各 SAP 執行個體中,解除某些方法的保護:
開啟 SAP 伺服器的 SAP GUI 連線。
使用系統管理帳戶登入。
執行交易 RZ10。
選取適當的設定檔 (建議的執行個體設定檔)。
選取 [擴充維護]>[變更]。
選取設定檔參數
service/protectedwebmethods
。將 值變更為:
SDEFAULT -GetQueueStatistic -ABAPGetWPTable -EnqGetStatistic -GetProcessList -GetEnvironment -ABAPGetSystemWPTable
請選取複製。
選取 [設定檔] > [儲存] 以儲存變更。
重新啟動 SAP 系統中每個執行個體上的 SAPStartSRV 服務。 重新啟動服務不會重新啟動整個系統。 此程序只會重新啟動 SAPStartSRV (Windows 上) 或精靈程序 (Unix 或 Linux 中)。
SAP 系統的每個執行個體都必須重新啟動 SAPStartSRV,才能為 SAP 控制項 Web 方法取消保護。 NetWeaver 提供者需要這些唯讀 SOAP API,才能從 SAP 系統擷取計量資料。 若未能解除這些方法的保護,將導致 NetWeaver 計量活頁簿上的視覺效果空白或遺漏。
在 Windows 系統上,使用 SAP Microsoft Management Console (MMC) 或 SAP Management Console (MC) 重新啟動服務。 以滑鼠右鍵按一下每個執行個體。 然後,選擇 [所有工作] > [重新啟動服務]。
在 Linux 系統上,使用下列命令重新啟動主機。 以 SAP 系統的執行個體號碼取代
<instance number>
。
sapcontrol -nr <instance number> -function RestartService
- 針對每個執行個體設定檔重複上述步驟,而另一個選項是您可以重新啟動較低環境中的 SAP 系統。
用以解除保護 Web 方法的 PowerShell 指令碼
您可以參考連結,以解除保護 SAP Windows 虛擬機器中的 Web 方法。
啟用 RFC 計量的必要條件
RFC 計量僅支援 AS ABAP 應用程式,且不適用於 SAP JAVA 系統。 若選取的連線類型是 SOAP+RFC,您必須執行這個步驟。 為了啟用 RFC,您必須執行以下步驟
在 SAP NW ABAP 系統中,建立或上傳角色。 Azure Monitor for SAP 解決方案需要這個角色才能與 SAP 連線。 此角色會使用最低權限存取權。 下載並解壓縮 Z_AMS_NETWEAVER_MONITORING.zip
- 登入 SAP 系統。
- 使用交易代碼 PFCG> 選取功能表中的角色上傳。
- 從 ZIP 檔案上傳 Z_AMS_NETWEAVER_MONITORING.SAP 檔案。
- 選取 [執行] 以產生角色。 (確認角色上傳時也產生了設定檔)
SAP 系統中傳輸至匯入角色
您也可以參考連結,在 PFCG 中匯入角色並產生設定檔,以便成功設定 SAP 系統的 Netweaver 提供者。
建立並授權新的 RFC 使用者。
- 建立 RFC 使用者。
- 將 Z_AMS_NETWEAVER_MONITORING 角色指派給使用者。 這是您在上一節上傳的角色。
啟用 SICF 服務 以透過 SAP 網際網路通訊架構(ICF)存取 RFC
- 移至交易代碼 SICF。
- 移至服務路徑
/default_host/sap/bc/soap/
。 - 啟動服務 wsdl、**wsdl11 和 RFC。
建議您檢查您是否已啟用 ICF 連接埠。
SMON - 啟用 SMON 以監視系統效能。 請確定 ST-PI 的版本是 SAPK-74005INSTPI。
若未設定活頁簿,活頁簿的視覺效果會空白。- 為您的系統啟用 SDF/SMON 快照集服務。 開啟每日監視。 如需指示,請參閱 SAP 附註 2651881。
- 設定每分鐘彙總 SDF/SMON 計量。
- 建議每分鐘都排程 SDF/SMON 在目標 SAP 用戶端以背景作業形式出現。
- 如果您在活頁簿索引標籤 [系統效能 - CPU 和記憶體 (/SDF/SMON)] 中注意到空白視覺效果,請套用下列 SAP 註解:
- 版本 740 SAPKB74006-SAPKB74025 - 版本 755 Until SAPK-75502INSAPBASIS. 如需特定支援套件版本,請參閱 SAP 註解 - SAP 註解 2246160。
- 如果計量集合無法與前一個註解搭配運作,請嘗試 - SAP 註解 3268727
若要啟用安全通訊
若要透過 SAP NetWeaver 提供者啟用 TLS 1.2 或更新版本,請執行 SAP 文件中所述的步驟
檢查 SAP 系統是否設定為使用 TLS 1.2 或更高版本進行安全通訊
- 移至交易 RZ10。
- 開啟預設設定檔,選取 [擴充維護],然後選取 [變更]。
- 下列組態適用於 TLS1.2,位元遮罩會是 544:PFS。 如果 TLS 版本較高,位元遮罩將會大於 544。
在建立提供程序期間檢查要提供的 HTTPS 連接埠
- 移至交易 SMICM。
- 從 [GOTO -> 服務] 功能表選擇。
- 確認 HTTPS 通訊協定是否處於作用中狀態。
新增 NetWeaver 提供者
確定已成功完成所有必要條件。 若要新增 NetWeaver 提供者:
登入 Azure 入口網站。
前往 Azure Monitor for SAP 解決方案服務頁面。
選取 [建立] 以開啟資源建立頁面。
輸入 [基本] 索引標籤的資訊。
選取提供者索引標籤。然後選取新增提供者。
設定新的提供者:
針對 [類型],選取 [SAP NetWeaver]。
在名稱中,為提供者提供唯一的名稱
針對 [系統識別碼 (SID)],輸入三個字元的 SAP 系統識別碼。
針對 [應用程式伺服器],輸入要監視之 SAP NetWeaver 系統的 IP 位址或完整網域名稱 (FQDN)。 例如,
sapservername.contoso.com
,其中sapservername
是主機名稱,而contoso.com
是網域。 如果使用主機名稱,請確認用於建立 Azure Monitor for SAP 解決方案資源的虛擬網路,具有連線能力。針對 [執行個體號碼],指定 SAP NetWeaver (00-99) 的執行個體號碼
針對 [SAP 用戶端識別碼],請提供 SAP 用戶端識別碼。
在 SAP ICM HTTP 連接埠中 ,輸入 ICM 正在使用的連接埠,例如 80(NN)((NN) 是執行個體號碼)。
針對 [SAP 使用者名稱],輸入您建立以連線到 SAP 系統的使用者名稱。
針對 [SAP 密碼],輸入使用者的密碼。
在主機檔案項目中,提供與 SID 關聯的所有 SAP VM 的 DNS 對應 在主機檔案項目中,輸入所有 SAP 應用程式伺服器和 ASCS 主機檔案項目。 輸入以逗號分隔格式的主機檔案對應。 每個項目的預期格式為 IP 位址, FQDN, 主機名稱。 例如:192.X.X.X sapservername.contoso.com sapservername,192.X.X.X sapservername2.contoso.com sapservername2。 若要確認所有主機名稱都與 SID 相關聯,請使用
sidadm
使用者登入 SAP 系統。 然後,執行下列指令,或可使用下列指令碼來產生主機檔案項目。用以尋找與指定 SID 相關聯的執行個體清單的命令
/usr/sap/hostctrl/exe/sapcontrol -nr <instancenumber> -function GetSystemInstanceList
用以產生主機檔案項目的指令碼
強烈建議遵循連結中產生主機檔案項目的詳細指示。 這些項目對於成功為 SAP 系統建立 Netweaver 提供者至關重要。
SAP Netweaver 提供者疑難排解
新增 Netweaver 提供者時的常見問題。
無法連上 SAP 主機名稱。 ErrorCode: SOAPApiConnectionError
檢查未受保護的更新規則。 ErrorCode: SOAPWebMethodsValidationFailed
重新啟動 SAP 服務之後,請檢查已更新的規則是否已套用至每個執行個體。
以
sidadm
身分登入 SAP 系統時。 執行下列命令。 以系統的執行個體號碼取代<instance number>
。sapcontrol -nr <instance number> -function ParameterValue service/protectedwebmethods
以非 SIDADM 使用者身分登入時。 執行以下命令,將
<instance number>
取代成系統的執行個體號碼、將<admin user>
取代成管理員使用者名稱,並將<admin password>
取代成密碼。sapcontrol -nr <instance number> -function ParameterValue service/protectedwebmethods -user "<admin user>" "<admin password>"
檢閱輸出。 確定在輸出中看到的方法名稱是 GetQueueStatistic ABAPGetWPTable EnqGetStatistic GetProcessList GetEnvironment ABAPGetSystemWPTable
針對每個執行個體設定檔重複上述步驟。
若要驗證規則,請對 Web 方法執行測試查詢。 以您的主機名稱取代
<hostname>
,以您的 SAP 執行個體號碼取代<instance number>
,並且以適當方法取代方法名稱。$SAPHostName = "<hostname>" $InstanceNumber = "<instance number>" $Function = "ABAPGetWPTable" [System.Net.ServicePointManager]::ServerCertificateValidationCallback = {$true} $sapcntrluri = "https://" + $SAPHostName + ":5" + $InstanceNumber + "14/?wsdl" $sapcntrl = New-WebServiceProxy -uri $sapcntrluri -namespace WebServiceProxy -class sapcntrl $FunctionObject = New-Object ($sapcntrl.GetType().NameSpace + ".$Function") $sapcntrl.$Function($FunctionObject)
確定網際網路通訊架構連接埠已開啟。 ErrorCode: RFCSoapApiNotEnabled
登入 SAP 系統
移至交易代碼 SICF。
瀏覽到服務路徑
/default_host/sap/bc/soap/
。以滑鼠右鍵按一下 Ping 服務,然後選擇 [測試服務]。 SAP 會啟動您的預設瀏覽器。
如果無法連線到連接埠或測試失敗,請在 SAP VM 中開啟連接埠。
針對 Linux,請執行下列命令。 將
<your port>
取代為您設定的連接埠。sudo firewall-cmd --permanent --zone=public --add-port=<your port>/TCP
sudo firewall-cmd --reload
針對 Windows,從 [開始] 功能表開啟 [Windows Defender 防火牆]。 選取側邊功能表中的 [進階設定],然後選取 [輸入規則]。 若要開啟連接埠,請選取 [新增規則]。 新增您的連接埠,並將通訊協定設定為 TCP。
計量集合和可能解決方案的常見問題
SMON 計量
請參閱必要條件中的 SMON 一節
批次工作計量
如果您在活頁簿索引標籤 [應用程式效能 - 批次工作 (SM37)] 中注意到空白視覺效果,請在 SAP 系統中套用下列 SAP 註解 SAP 註解 2469926。
套用 OSS 註解後,您必須使用下列參數來執行 RFC 函式模組 - BAPI_XMI_LOGON_WS:
此函式模組的參數與 BAPI_XMI_LOGON 相同,但將它們儲存在 BTCOPTIONS 資料表中。
INTERFACE = XBP VERSION = 3.0 EXTCOMPANY = TESTC EXTPRODUCT = TESTP
SWNC 計量
若要確保成功擷取 SWNC 計量,您必須確認 SAP 系統和作業系統 (OS) 已同步處理時間。