Guest Introspection 精簡型代理程式會隨著 VMware Tools™ 在每個客體虛擬機器上一起安裝。
疑難排解 Linux 上的精簡型代理程式
如果虛擬機器在讀取和寫入作業時,以及在解壓縮或儲存檔案時緩慢,則精簡型代理程式可能發生問題。
- 檢查所涉及所有元件的相容性。您需要所選取的 ESXi、vCenter Server、NSX Manager,以及您已選取安全性解決方案 (例如,Trend Micro、McAfee、Kaspersky 或 Symantec) 的組建編號。收集此資料後,請比較 vSphere 元件的相容性。如需詳細資訊,請參閱 VMware 產品互通性對照表。
- 確保已在系統上安裝檔案自我檢查。
- 使用 systemctl status vsepd.service 命令,驗證精簡型代理程式是否正在執行。
- 如果您懷疑精簡型代理程式導致系統發生效能問題,請執行 service vsepd stop 命令來停止該服務。
- 然後執行測試以取得基準。接著,您可以執行 service vsepd start 命令來啟動 vsep 服務,並執行其他測試。
- 對於採用網路事件的部署,還需要執行 systemctcl status vmw_conn_notifyd.service,以檢查
vmw_conn_notify
。 - 啟用 Linux 精簡型代理程式的偵錯:
- 執行 /etc/vsep/vsep
refresh-logging
。 - 用法:
/etc/vsep/vsepd refresh-logging <dest> <<level> sub-component-name>
其中,<dest>:[1-2] 1 - 記錄到虛擬機器,2 - 記錄到 ESX 主機。
<level>:[1-7],其中 4 表示記錄層級 INFO,7 表示記錄層級 DEBUG。
<sub-component-name>:一或多個傳輸、計時器、檔案、網路、程序、系統
啟用記錄到主機後,這些記錄將儲存在 ESXi 主機上虛擬機器各自 vmfs 目錄的 vmware.log 中。
備註: 啟用完整記錄可能會導致大量記錄活動湧入 vmware.log 檔案。請盡快停用完整記錄。
- 執行 /etc/vsep/vsep
根據內容 (檔案、程序、網路或系統) 來啟用偵錯
增強的記錄支援允許的精簡型代理程式將特定功能的模組偵錯層級資訊,記錄到主機上的 vmware.log 或虛擬機器中的 syslog。
如果未在個別的檔案中產生偵錯記錄,則需要重新啟動精簡型代理程式服務。請注意,如果記錄數量龐大,則可能會控制記錄到主機 vmware.log 的流速。已將 refresh-logging 輸入參數新增到 /etc/vsep/vsepd。可藉由執行以下命令來顯示其用法:
偵錯:
# /etc/vsep/vsepd refresh-logging用法:/etc/vsep/vsepd refresh-logging <dest> <<level> sub-component-name>
其中,<dest>:[1-2]:1 表示記錄到虛擬機器,2 表示記錄到 ESX 主機。啟用記錄到虛擬機器後,則會根據 Linux 發行版軟體,將記錄儲存在以下位置。
在 Ubuntu 虛擬機器上:/var/log/syslog
在 CentOS、RHEL 和 SLES 上:/var/log/messages
啟用記錄到主機後,這些記錄將儲存在 ESXi 主機上虛擬機器各自 vmfs 目錄的 vmware.log 中。
<level>:[1-7],其中 4 表示記錄層級 INFO,7 表示記錄層級 DEBUG。
<sub-component-name>:一或多個傳輸、計時器、檔案、網路、程序、系統
範例:
啟用以下命令時,則只會列印該內容中的記錄。
可以使用以下命令,來啟用網路自我檢查的偵錯記錄。
/etc/vsep/vsepd refresh-logging 1 7 network程序自我檢查的除錯記錄:
/etc/vsep/vsepd refresh-logging 1 7 process
防毒使用案例的偵錯記錄:
/etc/vsep/vsepd refresh-logging 1 7 file對於計時器內容中的命令處理 (所有使用案例):
/etc/vsep/vsepd refresh-logging 1 7 timer
對於使用者監控:
/etc/vsep/vsepd refresh-logging 1 7 system
對於 SVM 與內容 Mux 之間的架構通訊 (所有使用案例):
/etc/vsep/vsepd refresh-logging 1 7 transport對 Linux 上的精簡型代理程式當機進行疑難排解
精簡型代理程式當機時會傾印核心。但是,這相依於核心傾印的作業系統組態。在系統當機時,每個 Linux 發行版會採用不同的方法和組態來產生核心傾印。
例如,您可以使用 apport 讓應用程式在當機時傾印核心,而在 Red Hat 中,您可以使用 abrtd。但是,精簡型代理程式會在虛擬機器上的 /var/log/syslog (Ubuntu) 或 /var/log/messages (CentOS、RHEL 和 SLES) 中,傾印反向追蹤,或者如果在主機上啟用了記錄,則會在 vmware.log 中傾印反向追蹤,具體取決於記錄目的地。
反向追蹤範例:
localhost systemd: Started Session 4 of user root. localhost vsep: EMERG: 0: sig_handler(): Received signal: 11 localhost vsep: EMERG: 0: sig_handler(): backtrace returned 7 pointers localhost vsep: EMERG: 0: sig_handler(): /usr/sbin/vsep(+0x1d35e) [0x7fa2e4c9135e] localhost vsep: EMERG: 0: sig_handler(): /lib64/libc.so.6(+0x35a00) [0x7fa2e3d76a00] localhost vsep: EMERG: 0: sig_handler(): /usr/sbin/vsep(+0x3f789) [0x7fa2e4cb3789] localhost vsep: EMERG: 0: sig_handler(): /lib64/libglib-2.0.so.0(+0x6e0fc) [0x7fa2e47960fc] localhost vsep: EMERG: 0: sig_handler(): /lib64/libglib-2.0.so.0(+0x6d745) [0x7fa2e4795745] localhost vsep: EMERG: 0: sig_handler(): /lib64/libpthread.so.0(+0x7df3) [0x7fa2e4109df3] localhost vsep: EMERG: 0: sig_handler(): /lib64/libc.so.6(clone+0x6d) [0x7fa2e3e373dd] localhost vsep: EMERG: 0: sig_handler(): Unmarking all fanotify marked mount points