本指南將說明在 Compute Engine VM 和裸機解決方案伺服器上,執行 SAP NetWeaver 監控代理程式的作業考量和程序。
瞭解監控代理程式生命週期
管理監控作業時,瞭解 SAP NetWeaver 的監控代理程式所執行的作業是有幫助的。一般而言,監控代理程式的運作方式如下:
- 您必須在每個代管 SAP 系統的 Compute Engine VM 或 Bare Metal 解決方案伺服器上,安裝 SAP NetWeaver 的監控代理程式。監控代理程式會以 Windows 服務或 Linux 服務執行。
- 在 Compute Engine VM 上,Cloud Monitoring 有本機代理程式,可收集Google Cloud的指標、事件和中繼資料。Compute Engine 也會提供具備監控功能的 API。
- 在 Compute Engine VM 上,SAP NetWeaver 的監控代理程式會結合 Monitoring 和 Compute Engine API 的監控資料。在 Bare Metal 解決方案伺服器上,代理程式不會存取Google Cloud API。
- 透過 HTTP,SAP Host Agent 會輪詢 SAP NetWeaver 的監控代理程式,以取得快取資料。此代理程式會匯總及回報指標,然後將指標儲存在 SAP NetWeaver 資料庫中。
- SAP 的交易
ST06
或saposcol
指令列介面會顯示匯總的指標。 - 您可以在終端機視窗中執行指令,查看 SAP NetWeaver 監控代理程式的資料。
SAP NetWeaver 監控代理程式的 Cloud API 存取權
當 SAP NetWeaver 的監控代理程式在 Compute Engine VM 上執行時,會從 Monitoring 讀取資料。
您可以透過授予主機 VM 服務帳戶的 IAM 權限,以及授予 VM 的Google Cloud API 存取範圍,控制 Monitoring API 的存取權。
Compute Engine 建議您只使用 VM 服務帳戶的 IAM 權限來控管對 Google Cloud 資源的存取權,並設定 VM 存取範圍,允許對所有 Cloud API 的完整存取權。詳情請參閱「最佳做法」。
SAP NetWeaver 的監控代理程式會使用主機 VM 的服務帳戶,擷取 Cloud Monitoring 指標。因此,監控代理程式會要求主機 VM 具備服務帳戶,且服務帳戶具備 monitoring.timeSeries.list
權限,該權限包含在預先定義的監控檢視者角色中。
如果您限制 Cloud API 存取權,SAP NetWeaver 的監控代理程式就需要在主機 VM 執行個體上設定下列最低 Cloud API 存取範圍:
- Compute Engine:唯讀
- Stackdriver Monitoring API:唯讀
如果您在沒有外部 IP 位址的 VM 上執行 SAP NetWeaver,就必須啟用 SAP NetWeaver 監控代理程式的 API 和服務存取權。 Google Cloud
如要在子網路中的 Compute Engine VM 啟用私人 Google 存取權,請參閱「設定私人 Google 存取權」。
如果您在 Bare Metal 解決方案區域擴充功能中的伺服器上執行 SAP NetWeaver,SAP NetWeaver 的監控代理程式就不需要存取 Google Cloud API。
確認 SAP NetWeaver 的監控代理程式是否正在執行
SAP NetWeaver 的監控代理程式為本機 HTTP 伺服器。
如要確認監控代理程式是否正在運作,請按照下列步驟操作:
Linux
建立與主機 VM 執行個體的 SSH 連線。
請執行下列指令:
sudo systemctl status google-sapnetweavermonitoring-agent
如果 SAP NetWeaver 的監控代理程式正常運作,輸出內容就會包含
active (running)
。例如:google-sapnetweavermonitoring-agent.service - Google Cloud monitoring agent for SAP NetWeaver Loaded: loaded (/usr/lib/systemd/system/google-sapnetweavermonitoring-agent.service; enabled; vendor preset: disabled) Active: active (running) since Thu 2021-09-02 07:21:42 UTC; 742ms ago Main PID: 10723 (java) Tasks: 26 (limit: 512) CGroup: /system.slice/google-sapnetweavermonitoring-agent.service └─10723 /usr/sap/google-sapnetweavermonitoring-agent/jre/bin/java -Xms32m -Xmx64m -cp /usr/sap/google-sapnetweavermonitoring-age...
Windows
使用遠端桌面協定連線到您要監控的 VM 執行個體。
請執行下列指令:
Get-Service -Name google-sapnetweavermonitoring-agent
如果 SAP NetWeaver 的監控代理程式正常運作,
Status
欄就會顯示Running
。例如:Status Name DisplayName ------ ---- ----------- Running google-sapnetwe... Google Cloud monitoring agent for S...
如要查看收集的指標,請參閱「查看監控指標」。
如果 SAP NetWeaver 的監控代理程式未執行,請參閱「重新啟動 SAP NetWeaver 的監控代理程式」。
確認 SAP Host Agent 正在接收指標
如要確認Google Cloud的 Agent for SAP 是否收集基礎架構指標,並正確傳送至 SAP Host Agent,請按照下列步驟操作:
- 在 SAP 系統中輸入交易
ST06
。 在「Overview」(總覽) 窗格中,查看以下欄位的可用性和內容,確認 SAP 和 Google 監控基礎架構已做好正確的端對端設定:
- 雲端服務供應商:
Google Cloud Platform
- Enhanced Monitoring Access (強化版監控功能存取權):
TRUE
- Enhanced Monitoring Details (強化版監控功能詳細資料):
ACTIVE
- 雲端服務供應商:
查看受監控的指標
您可以透過輪詢伺服器的方式查看監控指標。步驟如下:
Linux
- 使用 SSH 連線至需要監控的主機。
在命令提示字元中,輸入下列指令:
curl http://localhost:18181
Windows
- 使用 RDP 連線至您需要監控的主機。
在網路瀏覽器中,造訪下列網址:
http://localhost:18181
以下範例顯示 SAP NetWeaver 監控代理程式前幾行 XML 輸出內容。
Compute Engine VM
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <metrics> <metric category="config" context="vm" type="string" unit="none" last-refresh="1614389614" refresh-interval="0"><name>Data Provider Version</name><value>1.1.1.0</value> </metric> <metric category="config" context="host" type="string" unit="none" last-refresh="1614389614" refresh-interval="0"> <name>Cloud Provider</name><value>Google Cloud Platform</value> </metric> <metric category="config" context="vm" type="string" unit="none" last-refresh="1614389614" refresh-interval="0"> <name>Instance Type</name><value>n2-standard-16</value> </metric> <metric category="config" context="host" type="string" unit="none" last-refresh="1614389614" refresh-interval="0"> <name>Virtualization Solution</name><value>KVM</value> </metric> ... </metrics>
Bare Metal 解決方案伺服器
如果 Instance Type
值顯示 bms-nn
,而 Hardware Model
值為 Google Cloud Bare Metal
,表示 SAP NetWeaver 的監控代理程式已正確設定為 Bare Metal 解決方案主機,如以下範例所示。
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <metrics> <metric category="config" context="vm" type="string" unit="none" last-refresh="1614391024" refresh-interval="0"><name>Data Provider Version</name><value>1.1.1.0</value> </metric><metric category="config" context="host" type="string" unit="none" last-refresh="1614391024" refresh-interval="0"> <name>Cloud Provider</name><value>Google Cloud Platform</value></metric><metric category="config" context="vm" type="string" unit="none" last-refresh="1614391024" refresh-interval="0"><name>Instance Type</name> <value>bms-16.0</value></metric><metric category="config" context="host" type="string" unit="none" last-refresh="1614391024" refresh-interval="0"><name>Virtualization Solution</name><value>N/A</value></metric><metric category="config" context="host" type="string" unit="none" last-refresh="1614391024" refresh-interval="0"><name>Hardware Manufacturer</name><value>Google</value></metric> <metric category="config" context="host" type="string" unit="none" last-refresh="1614391024" refresh-interval="0"><name>Hardware Model</name><value>Google Cloud Bare Metal</value> </metric> ... </metrics>
重新啟動 SAP NetWeaver 的監控代理程式
如果 SAP NetWeaver 的監控代理程式停止運作,請重新啟動監控代理程式。
選取作業系統:
Linux
與主機 VM 建立 SSH 連線。
發出以下指令:
systemctl restart google-sapnetweavermonitoring-agent
Windows
與主機 VM 建立遠端桌面協定連線。
發出以下指令:
Restart-Service -Force google-sapnetweavermonitoring-agent
更新 SAP NetWeaver 的監控代理程式
為確保您擁有最新版的 SAP NetWeaver 監控代理程式,請定期檢查更新。
檢查更新
選取作業系統:
RHEL
如何使用套件管理工具檢查 Monitoring 代理程式更新:
與主機 VM 建立 SSH 連線。
發出以下指令:
sudo yum check-update google-sapnetweavermonitoring-agent
SLES
如何使用套件管理工具檢查 Monitoring 代理程式更新:
與主機 VM 建立 SSH 連線。
發出以下指令:
sudo zypper list-updates -r google-sapnetweavermonitoring-agent
Windows
如何檢查 Monitoring 代理程式更新:
與主機 VM 建立遠端桌面協定連線。
以管理員身分,從 PowerShell 發出下列指令:
C:\Program Files\Google\google-sapnetweavermonitoring-agent\bin\updatecheck.ps1
安裝更新
選取作業系統:
RHEL
如要使用套件管理工具安裝監控代理程式,請按照下列步驟操作:
與主機 VM 建立 SSH 連線。
發出以下指令:
sudo yum --nogpgcheck update google-sapnetweavermonitoring-agent
SLES
如要使用套件管理工具安裝監控代理程式,請按照下列步驟操作:
與主機 VM 建立 SSH 連線。
發出以下指令:
sudo zypper --no-gpg-checks update google-sapnetweavermonitoring-agent
Windows
如要安裝監控代理程式,請按照下列步驟操作:
與主機 VM 建立遠端桌面協定連線。
以管理員身分,從 PowerShell 發出下列指令:
. { Invoke-WebRequest -useb https://storage.googleapis.com/cloudsapdeploy/netweaver-agent-windows/install.ps1 } | iex