當 CPU 未受到限流時,如何診斷 EC2 Windows 執行個體上的高 CPU 使用率?
我的 Amazon Elastic Compute Cloud (Amazon EC2) Windows 執行個體出現高 CPU 使用率的情況,但執行個體的 CPU 並未受到限流。我想診斷高 CPU 使用率的原因。
解決方法
若要判斷高 CPU 使用率的情況,請執行 AWSSupport-TroubleshootWindowsPerformance 執行手冊,或手動識別具有高 CPU 使用率的程序。
確定導致高 CPU 使用率的具體程序後,對該特定應用程式進行疑難排解。
執行 AWSSupport-TroubleshootWindowsPerformance 執行手冊
先決條件:在啟動執行手冊之前,請確定您的 AWS Identity and Access Management (IAM) 使用者或角色具有所需的權限。如需詳細資訊,請參閱 AWSSupport-TroubleshootWindowsPerformance 中的所需的 IAM 權限。
請完成下列步驟:
- 開啟 AWS Systems Manager console (AWS Systems Manager 主控台)。
- 在 Regions (區域) 清單中,選取您的 AWS 區域。
- 在導覽窗格中,展開 Shared Resources (共用資源),然後選擇 Documents (文件)。
- 在搜尋列中,輸入 AWSSupport-TroubleshootElasticBeanstalk,然後選取執行手冊。
- 選擇 Execute automation (執行自動化)。
- 選擇 Execute (執行)。如需執行手冊所執行操作的清單,請參閱 AWSSupport-TroubleshootWindowsPerformance 中的文件步驟。
- 查看 Output (輸出) 以了解執行的詳細結果。
手動疑難排解
使用「任務管理員」來識別高 CPU 使用率的來源
請完成下列步驟:
- 使用遠端桌面協定 (RDP) 連線至執行個體。
- 若要依 CPU 排序,請開啟任務管理員,然後選擇 CPU 欄。
- 識別高 CPU 使用率的程序,以判斷程序是否使用預期數量的 CPU。
- 對 CPU 使用率超出預期的應用程式進行疑難排解。
如果應用程式使用了預期的 CPU 數量,請變更執行個體類型。如需詳細資訊,請參閱如何調整 EC2 Windows 執行個體的大小或變更 EC2 Windows 執行個體類型?
使用 Process Explorer 來識別高 CPU 使用率的來源
Process Explorer 是 Sysinternals Microsoft 公用程式。如需詳細資訊,請參閱 Microsoft Learn 網站上的 Sysinternals。
請完成下列步驟:
- 將 Process Explorer 下載到您的執行個體。若要下載,請參閱 Microsoft Ignite 網站上的 Process Explorer。
- 以管理員身分啟動該應用程式。
- 選取 CPU 欄,依使用排序程序。
- 選擇 View (檢視)、Show Process Tree (顯示程序樹狀目錄) 以檢視程序之間的父子關係。
**注意:**選取 Threads (執行緒) 索引標籤,以更詳細地了解導致高 CPU 使用率的程序具體操作。
如果仍然無法確定高 CPU 使用率的原因,請使用 Performance Monitor 和 Performance Analysis of Logs (PAL) 工具。Performance Monitor 是一個內建的 Windows 工具。
(選用) 使用 Performance Monitor 識別高 CPU 使用率的來源
請完成下列步驟:
- 使用 RDP 連線到您的執行個體。
- 開啟 Performance Monitor,然後展開 Data Collector Sets (資料收集器集)。
- 開啟 User Defined (使用者定義) 的內容功能表,然後選擇 New (新)、Data Collector Set (資料收集器集)。
在 Name (名稱) 中,輸入新資料收集器集的名稱,然後選擇 Create manually (Advanced) (手動建立 (進階))。 - 選擇 Next (下一步)。
- 在 Create data logs (建立資料日誌),選取 Performance Counter (效能計數器),然後選擇 Next (下一步)。
- 選擇 Add (新增)。
在 Available counters (可用計數器),選擇 Process (程序)、% Processor Time (% 處理器時間)。
在 Instances of selected object (所選物件的執行個體),選擇 All instances (所有執行個體)。
選擇 Add (新增)。
對您要新增的任何其他效能計數器重複此步驟。 - 選擇 Ok (確定)。
- (選用) 將 Sample interval (取樣間隔) 和 Units (單位) 設定為您偏好的值。
- 選擇 Next (下一步)。
- 選擇至少有 1 GB 可用空間的位置來儲存資料,然後選擇 Next (下一步)。
- 選擇 Save and close (儲存並關閉),然後選擇 Finish (完成)。
注意: 如果 CPU 出現峰值,請選擇 Start this data collector set now (立即啟動此資料收集器集)。然後,選擇 Finish (完成)。
效能監視器工具完成資料收集後,您可以開啟並查看報告,以確定哪些程序使用了執行個體 CPU。然後,使用該資訊對使用 CPU 的特定應用程式進行疑難排解。
(選用) 使用 Performance Analysis of Logs (PAL) 產生報告以供分析
**注意:**以下步驟包括使用託管在 GitHub 上的開放原始碼軟體。
PAL 是一個第三方工具,可用於從效能監視器檔案產生報告,以進行更詳細的分析。若要使用 PAL,請完成以下步驟:
- 安裝 PAL,然後啟動 PAL 精靈並選擇 Next (下一步)。
- 在 Performance Counter Log (效能計數器日誌),輸入效能監視器檔案的路徑,然後選擇 Next (下一步)。
- 在 Title (標題)中,選擇 System Overview (系統概觀),然後選擇 Next (下一步)。
注意: 系統概觀提供一般作業系統效能分析。 - 查看並回答 Questions (問題) 區段中每個項目的問題。在 OS (作業系統) 中,請從清單中選擇與您的執行個體位元版本相符的最新作業系統版本。選擇 Next (下一步)。
- 選取 Process all of the counters in the counter log (處理計數器記錄中的所有計數器),然後選擇 Next (下一步)。
注意: 處理所有計數器執行個體可能會耗用大量資源。 - 在 Output Folder (輸出資料夾),選取 PAL 報告的輸出目錄。
- 在 HTML Report (HTML 報告),選取 HTML Report (HTML 報告),然後選擇Next (下一步)。
- 選擇 Next (下一步),然後選擇 Finish (完成)。
- 查看 PAL 報告的 Process (程序) 和 Processor (處理器) 區段,以確定哪些程序使用了執行個體的 CPU。
相關資訊
如何得知我的 T2 或 T3 EC2 Windows 執行個體上的 CPU 是否受到限流?
- 語言
- 中文 (繁體)

相關內容
- 已提問 3 年前
- 已提問 2 年前