Windows Server下AWS CloudWatch Agent无法启动 配置报错排查
问题根因
两个核心问题导致Agent启动失败:
- 执行配置拉取命令时,未对包含空格的Windows路径加引号包裹,PowerShell将
C:\Program Files\...路径从空格处截断,仅识别到C:\Program,因此报路径不存在错误,配置无法被正常加载到Agent运行目录。 - 配置拉取流程执行失败后,Agent默认读取的运行配置路径
C:\ProgramData\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent.json未被写入有效配置,因此启动时提示无可用配置文件,退出码99。
注:当前实例的IAM角色、网络连通性、Agent安装流程、配置文件JSON语法均无问题,无需调整这部分配置。
解决步骤
- 方案1:修正配置拉取命令,对含空格的路径加双引号包裹,执行后自动完成配置写入和Agent启动:
& $env:ProgramFiles\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent-ctl.ps1 -a fetch-config -m ec2 -c file:"$env:ProgramFiles\Amazon\AmazonCloudWatchAgent\config.json" -s
- 方案2:跳过fetch-config流程,手动将你准备好的config.json重命名为
amazon-cloudwatch-agent.json,直接复制到C:\ProgramData\Amazon\AmazonCloudWatchAgent\目录下,覆盖后执行启动命令:
& $env:ProgramFiles\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent-ctl.ps1 -a start -m ec2
- 操作完成后执行状态检查命令,确认Agent正常运行:
& $env:ProgramFiles\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent-ctl.ps1 -a status
返回状态显示running即代表故障修复,不会再出现配置找不到的报错。
避坑说明
- Windows环境下执行涉及路径的PowerShell命令,只要路径包含空格(比如系统默认的
Program Files目录),必须用双引号将完整路径包裹,否则会出现参数截断、路径识别错误的问题。 - CloudWatch Agent的安装目录(
C:\Program Files\Amazon\AmazonCloudWatchAgent\)仅存放程序二进制文件,运行时实际读取的配置文件存放在C:\ProgramData\Amazon\AmazonCloudWatchAgent\目录下,不要混淆两个路径。
内容的提问来源于stack exchange,提问作者AnkitsIaaC
相关产品推荐
相关产品推荐

