是否可以在 运行 EC2 实例上启用 CloudWatch?

Is it possible to enable CloudWatch on a running EC2 instance?

亚马逊似乎有一个现成的 IAM 角色来授予实例 CloudWatch 写访问权限。 (一个更严格的could also be created if necessary

但看来你cannot attach an IAM role to a running instance.

我错过了什么吗?我真的必须重新实例化我的整个队列才能启用 CloudWatch 吗?出于安全原因,我不愿意在每台主机上保存明文凭据。

您是否考虑过简单地修改现有的 IAM 角色以启用对 CloudWatch 的写入?该更改应立即生效,不需要实例重启或重新启动。

我假设您在谈论自定义 CloudWatch 指标。您无需重新启动任何实例即可启用它们。您可以使用以下策略在 IAM 中创建一个组并将用户添加到该组:

{
"Version": "2012-10-17",
"Statement": [
    {
        "Sid": "****************",
        "Effect": "Allow",
        "Action": [
            "cloudwatch:PutMetricData"
        ],
        "Resource": [
            "*"
        ]
    }
]
}

然后您基本上将此用户的凭据复制到 awscred 文件并将 perl 脚本添加到 cron。是的,我必须将凭据复制到启用了自定义指标收集的每台计算机。