gpt4 book ai didi

python-2.7 - 创建 ec2 实例并添加新的和现有的安全组

转载 作者:行者123 更新时间:2023-12-03 07:45:34 27 4
gpt4 key购买 nike

我有一些对流层代码a) 使用 List 捕获安全组 ID 列表作为参数b) 创建一个新的安全组

groups = template.add_parameter(Parameter(
"securityGroups",
Type="List<AWS::EC2::SecurityGroup::Id>",
Description="Security Groups for EC2 Instance",
))


ec2_sg = template.add_resource(
ec2.SecurityGroup(
'sg',
GroupName = 'sg_test_app',
GroupDescription = 'Test SG',
VpcId = Ref(vpcid),
Tags=Tags( **tags )
)
)

如果我使用以下引用 (a) 创建 EC2,则此方法有效:

inst_ec2 = template.add_resource(
ec2.Instance(
"EC2Instance",
ImageId = 'ami-8b8c57f8',
InstanceType = Ref(Type),
IamInstanceProfile=Ref(instance_profile),
SubnetId = Ref(snid),
Tags=Tags(**tags),
SecurityGroupIds = [ GetAtt(csso_ec2_sg, "GroupId") ],
DependsOn = [
'EC2InstanceProfile',
'sg'
]
)
)

如果我引用(b),这有效:

inst_ec2 = template.add_resource(
ec2.Instance(
"EC2Instance",
ImageId = 'ami-8b8c57f8',
InstanceType = Ref(Type),
IamInstanceProfile=Ref(instance_profile),
SubnetId = Ref(snid),
Tags=Tags(**tags),
SecurityGroupIds = groups,
DependsOn = [
'EC2InstanceProfile',
'sg'
]
)
)

但是,我不知道如何添加两者 - 这不起作用:

inst_ec2 = template.add_resource(
ec2.Instance(
"EC2Instance",
ImageId = 'ami-8b8c57f8',
InstanceType = Ref(Type),
IamInstanceProfile=Ref(instance_profile),
SubnetId = Ref(snid),
Tags=Tags(**tags),
SecurityGroupIds = [ GetAtt(csso_ec2_sg, "GroupId"), groups ],
DependsOn = [
'EC2InstanceProfile',
'sg'
]
)
)

有人可以建议如何做到这一点吗?

最佳答案

您可以尝试加入然后拆分列表。像这样的东西可能会起作用:

SecurityGroupIds = Split(",", Join(",", [Join(",", groups), GetAtt(csso_ec2_sg, "GroupId")]))

关于python-2.7 - 创建 ec2 实例并添加新的和现有的安全组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47509528/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com