使用托管策略在 Python Boto3 中创建 EC2 实例

时间:2021-01-28 22:22:53

标签: python amazon-web-services amazon-ec2 boto3

我想使用 boto3 创建一个 lambda 函数来创建一个 EC2 实例 - 这部分很简单。但我想通过附加策略 AmazonSSMManagedInstanceCore 为该实例分配一个角色。我最终使用此权限手动创建了一个角色“ec2_efs_role”,并尝试将该角色添加到 EC2 实例。

我已经尝试了几个小时,但一直无法添加这样的角色。我试过了:

    iam = boto3.client('iam')

    instance_profile = iam.create_instance_profile(
        InstanceProfileName ='testforecss' 
    )

    response = iam.add_role_to_instance_profile(
        InstanceProfileName = 'testforecss',
        RoleName            = 'ec2_efs_role'
        )


    
ec2 = boto3.resource('ec2', region_name=region)
vpc = ec2.Vpc(VPC_ID)
instances = ec2.create_instances(
     ImageId=AMI_ID,
     MinCount = 1,
     MaxCount = 1,
     InstanceType='t2.micro',
     IamInstanceProfile={
        'Name': 'testforecss'
    },
     NetworkInterfaces=[{
     'SubnetId': SUBNET_ID,
     'DeviceIndex': 0
     }],
 )

错误是:ClientError:调用 RunInstances 操作时发生错误 (InvalidParameterValue):参数 iamInstanceProfile.name 的值 (testforecss) 无效。 IAM 实例配置文件名称无效

0 个答案:

没有答案
相关问题