我的 Amazon Elastic Compute Cloud (Amazon EC2) Windows 实例的 CPU 利用率很高。但是,Amazon EC2 并没有限制我的 EC2 实例的 CPU。
简短描述
要自动识别 EC2 实例上 CPU 使用率高的原因,请运行 AWSSupport-TroubleshootWindowsPerformance 运行手册。或者,手动识别 CPU 使用率高的进程。
解决方法
运行 AWSSupport-TroubleshootWindowsPerformance 运行手册
先决条件: 确保您的 AWS Identity and Access Management (IAM) 用户或角色拥有运行该运行手册所需的权限。有关更多信息,请参阅 AWSSupport-TroubleshootWindowsPerformance 中所需的 IAM 权限。
要运行该运行手册,请参阅 AWSSupport-TroubleshootWindowsPerformance 中的说明。
手动识别高 CPU 使用率
使用任务管理器识别占用高 CPU 的进程
完成以下步骤:
- 使用远程桌面协议 (RDP) 连接到您的实例。
- 选择 Start(开始)菜单,然后打开 Task Manager(任务管理器)。
- 要按 CPU 对进程排序,请选择 CPU 列。
- 检查 CPU 使用率最高的进程,以确定它们是否使用了预期的 CPU 量。如果您的应用程序使用的 CPU 持续超过预期,则更改您的实例类型为具有更多 CPU 的实例类型。
- 对 CPU 使用量超出预期的应用程序进行故障排除。
使用进程资源管理器识别占用高 CPU 的进程
完成以下步骤:
- 要将进程资源管理器下载到您的实例上,请参阅 Microsoft 网站上的 Process Explorer v17.11(进程资源管理器 v17.11)。
- 以管理员身份启动进程资源管理器。
- 选择 CPU 列以按 CPU 使用率对进程排序。
- 要查看进程之间的父子关系,请选择 View(查看),然后选择 Show Process Tree(显示进程树)。
- 要更详细地了解进程如何导致高 CPU 使用率,请选择 Threads(线程)选项卡。
(可选)使用性能监测仪识别占用高 CPU 的进程
完成以下步骤:
- 使用 RDP 连接到实例。
- 选择 Start(开始)菜单,然后打开 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(添加)。
- (可选)重复步骤 9-10 以添加其他性能计数器。
- 选择 Ok(确定)。
- (可选)配置 Sample interval(采样间隔)和 Units(单位)。
- 选择 Next(下一步)。
- 在 Where would you like the data to be saved(您希望将数据保存到哪里)中,选择一个至少有 1GB 可用空间的位置。
- 选择 Next(下一步),然后选择 Save and close(保存并关闭)。
- 选择 Finish(完成)。
- 当 CPU 达到峰值时,打开 User defined(用户定义)下所列数据收集器集的上下文(右键单击)菜单。然后,选择 Start(启动)。
- 等待一分钟,然后打开数据收集器集的上下文(右键单击)菜单。然后,选择 Stop(停止)。
性能监控工具完成数据收集后,打开并查看报告,以识别占用高 CPU 的进程。
(可选)使用 PAL 工具生成报告以进行分析
注意: 日志性能分析 (PAL) 是一个第三方工具,可从您的性能监测仪文件生成报告,以便进行更详细的分析。
要使用 PAL,请完成以下步骤:
-
要安装 PAL,请参阅 GitHub 网站上的 Performance Analysis of Logs (PAL) Tool(日志性能分析 (PAL) 工具)。
-
启动 PAL 向导,然后选择 Next(下一步)。
-
对于 Performance Counter Log(性能计数器日志),输入性能监视器文件的路径,然后选择 Next(下一步)。
-
对于 Title(标题),选择 System Overview(系统概述),然后选择 Next(下一步)。
注意: 系统概述提供一般的操作系统 (OS) 性能分析。
-
完成 Questions(问题)部分。对于 OS(操作系统),选择与您的实例位版本相匹配的最新操作系统版本。
-
选择 Next(下一步)。
-
选择 Process all of the counters in the counter log(处理计数器日志中的所有计数器),然后选择 Next(下一步)。
注意: PAL 可能需要大量资源来处理所有计数器实例。
-
对于 Output Folder(输出文件夹),选择 PAL 报告的输出目录。
-
对于 HTML Report(HTML 报告),选择 HTML Report(HTML 报告),然后选择 Next(下一步)。
-
选择 Next(下一步),然后选择 Finish(完成)。
-
查看 PAL 报告的 **Process(进程)**和 Processor(处理器)部分,以识别占用高 CPU 的进程。
排查高 CPU 问题
要对高 CPU 使用率问题进行故障排除,请参阅如何对 Amazon EC2 Windows 实例的高 CPU 使用率问题进行故障排除?
相关信息
我怎样才能知道我的 T2 或 T3 EC2 Windows 实例上的 CPU 是否遭遇节流?