EC2 CloudWatch Agent报NoCredentialsError问题排查求助
CloudWatch Agent日志异常与
aws configure list结果疑问解答 1. aws configure list结果是否异常?
- 默认情况下,
aws configure list仅展示default配置文件的参数(区域、输出格式、访问密钥ID前缀、秘密访问密钥存在状态)。如果你的EC2通过IAM角色获取临时凭证,命令输出里的访问密钥和秘密密钥会显示为None,这是完全正常的——IAM角色的凭证由EC2元数据服务自动动态获取,不会写入本地CLI配置文件。 - 只要你已确认IAM角色权限合规、
/etc/awslogs/awscli.conf的区域配置正确,即便aws configure list未显示额外配置项,也不属于异常情况。
2. 是否应显示EC2_Cloudwatch_Profile配置文件?
aws configure list仅输出当前活跃配置文件的信息,除非你执行命令时显式指定--profile EC2_Cloudwatch_Profile参数,否则默认不会展示该自定义配置文件的内容。- CloudWatch Agent的优先级配置逻辑是:优先读取
/etc/awslogs/awscli.conf中的设置,而非本地AWS CLI的~/.aws/config或~/.aws/credentials文件。所以即便未在CLI配置中创建EC2_Cloudwatch_Profile,只要/etc/awslogs/awscli.conf配置正确,Agent仍可正常运行。
额外排查建议
- 校验
/etc/awslogs/awslogs.conf中的日志源路径、目标CloudWatch日志组/流的配置是否准确 - 在EC2实例上执行
aws logs describe-log-groups,测试IAM角色是否能正常调用CloudWatch Logs API - 验证EC2元数据服务可用性:执行
curl http://169.254.169.254/latest/meta-data/iam/security-credentials/,确认能返回关联的IAM角色名称
内容的提问来源于stack exchange,提问作者uniqueuser-programmer
相关产品推荐
相关产品推荐

