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

ASG跨账号使用加密AMI启动实例报Client.InternalError问题排查

问题排查与解决方案

针对跨账号加密AMI创建ASG实例启动失败的问题,结合你提供的配置,以下是关键排查点及修复方案:

1. KMS密钥策略存在JSON语法错误

你的账号111中的KMS密钥策略有一处明显的格式问题:

{
    "Version": "2012-10-17",
    "Id": "key-default-1",
    "Statement": [
        {
            "Sid": "Enable IAM User Permissions",
            "Effect": "Allow",
            "Principal": {
                "AWS": [
                    "arn:aws:iam::222:role/instances_profile", // 此处存在多余的尾逗号
                ]
            },
            "Action": "kms:*",
            "Resource": "*"
        }
    ]
}

JSON数组的最后一个元素不允许带有尾逗号,这个错误会导致密钥策略无法正常生效,直接引发权限验证失败。修复方法:删除该多余逗号后重新保存密钥策略。

2. 确认实例配置文件与IAM角色的关联有效性

你提到的arn:aws:iam::222:role/instances_profile是IAM角色,而EC2实例实际依赖的是实例配置文件(Instance Profile)。需确认该实例配置文件已正确绑定目标IAM角色,若绑定关系缺失,实例将无法获取预设的KMS权限。

3. 补充实例角色的必要KMS权限

虽然你的Grant中包含kms:DescribeKey权限,但实例关联的IAM策略仅授予了kms:Decrypt。启动加密AMI实例时,EC2服务需要kms:DescribeKey权限来识别密钥信息,建议将该权限补充到实例角色的IAM策略中:

{
    "Effect": "Allow",
    "Action": [
        "kms:Decrypt",
        "kms:DescribeKey"
    ],
    "Resource": "arn:aws:kms:us-east-1:111:key/84848484"
}

4. 查看EC2实例详细日志定位问题

Client.InternalError属于通用启动错误,建议通过EC2控制台查看实例的系统日志(System Log)或启动日志(Launch Log),日志中会包含更具体的失败原因(比如明确的KMS权限缺失提示),帮助精准定位问题。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 07:53:14