您可以使用 OSProfiler 為 OpenStack 部署中的核心服務啟用追蹤。追蹤會擷取 OpenStack 作業中所有 API、RPC、驅動程式和資料庫呼叫的回應時間。
VMware Integrated OpenStack 支援剖析 Cinder、Glance、Heat、Neutron 和 Nova 命令。您可以儲存 Ceilometer 或 vRealize Log Insight 的 Profiler 追蹤資料。
程序
- 以
viouser
身分登入 OpenStack 管理伺服器。
- 如果您的部署未使用 custom.yml 檔案,請將範本 custom.yml 檔案複製到 /opt/vmware/vio/custom 目錄。
sudo mkdir -p /opt/vmware/vio/custom
sudo cp /var/lib/vio/ansible/custom/custom.yml.sample /opt/vmware/vio/custom/custom.yml
- 取消 os_profiler_enabled 參數的註解,並將其值設定為 True。
- 取消 os_profiler_hmac_keys 參數的註解,然後輸入 OSProfiler 的密碼。
- 如果您使用的是 vRealize Log Insight,請取消 os_profiler_connection_string 參數的註解並將其值設定為 vRealize Log Insight 伺服器的位置。
採用下列格式輸入 vRealize Log Insight 伺服器位址:"loginsight://username:password@loginsight-ip"
指定在 vRealize Log Insight 部署中具有 USER
角色之使用者的使用者名稱和密碼。
- 部署已更新的組態。
sudo viocli deployment configure
部署組態會暫時中斷 OpenStack 服務。
- 如果您使用的是 vRealize Log Insight,請登入控制器節點,並將
OSPROFILER_CONNECTION_STRING
環境變數設為您在步驟 5 中使用的 vRealize Log Insight 伺服器位址。
export OSPROFILER_CONNECTION_STRING="loginsight://username:password@loginsight-ip"
結果
您現在可以啟用對 OpenStack 命令的剖析。使用 --profile 參數執行所需的命令,並指定您的 OSProfiler 密碼。命令會輸出剖析追蹤 UUID。使用此 UUID 執行 OSProfiler,以產生報告。例如:
cinder list --profile osprofiler-password
osprofiler trace show --html profiling-uuid