You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

创建AWS托管实例激活时提示“Not existing role”的问题咨询

解决AWS SSM托管实例激活时的角色不存在错误问题

我之前也碰到过一模一样的问题,其实核心就是报错里的那个IAM角色要么没正确创建,要么权限/信任关系配置不到位。下面给你梳理创建托管实例激活前必须完成的操作:

1. 确认并创建指定的IAM服务角色

报错里的AmazonEC2RunCommandRoleForManagedInstances是AWS为SSM托管实例提供的专属服务角色,如果你的账号里还没有这个角色,需要手动创建:

  • 登录IAM控制台,进入「角色」页面,点击「创建角色」
  • 选择受信任的实体类型为「AWS服务」,然后在服务列表里选「Systems Manager」,点击「下一步」
  • 搜索并附加AmazonEC2RoleforSSM托管策略(这是给角色赋予SSM所需权限的核心策略)
  • 角色名称填写AmazonEC2RunCommandRoleForManagedInstances,完成创建

2. 验证角色的信任关系是否正确

创建完角色后,一定要检查信任关系,确保SSM服务能正确扮演这个角色:

  • 进入该角色的「信任关系」标签页,点击「编辑信任策略」
  • 确认策略文档包含以下内容(如果没有就替换成这个):
    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Allow",
          "Principal": {
            "Service": [
              "ssm.amazonaws.com",
              "ec2messages.amazonaws.com"
            ]
          },
          "Action": "sts:AssumeRole"
        }
      ]
    }
    
    这一步很关键,要是信任关系不对,就算角色存在,SSM也没法使用它。

3. 确保操作账号有足够权限

你用来创建托管实例激活的IAM用户/角色,必须拥有两个核心权限:

  • ssm:CreateActivation:允许创建托管实例激活
  • iam:PassRole:允许将刚才创建的AmazonEC2RunCommandRoleForManagedInstances角色传递给SSM服务
    可以给账号附加AmazonSSMAutomationRole托管策略,或者自定义一个包含这两个权限的策略。

4. 准确填写角色ARN

创建激活的时候,一定要仔细核对输入的角色ARN,确保账号ID、角色名没有拼写错误,正确的ARN格式是:

arn:aws:iam::你的AWS账号ID:role/service-role/AmazonEC2RunCommandRoleForManagedInstances

如果用AWS CLI创建激活,命令示例如下:

aws ssm create-activation \
  --iam-role arn:aws:iam::123456789012:role/service-role/AmazonEC2RunCommandRoleForManagedInstances \
  --registration-limit 5 \
  --description "激活本地服务器用于SSM管理"

做完这些步骤,再去创建托管实例激活应该就不会报角色不存在的错误了。

内容的提问来源于stack exchange,提问作者Kimi Wu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 08:55:34