【以下的问题经过翻译处理】 我有一个包括Elastic Beanstalk环境的CDK部署。我想将Beanstalk ASG中的EC2实例移动到私有子网,同时允许通过EC2实例连接进行SSH。我知道这是可能的,基于此AWS博客条目和这个LinkedIn文章,但我很难正确配置事物。
我的VPC定义如下:
vpc = aws_ec2.Vpc(
self,
"Vpc",
vpc_name="vpc_name",
max_azs=4,
subnet_configuration=[
aws_ec2.SubnetConfiguration(
name="Public",
subnet_type=aws_ec2.SubnetType.PUBLIC,
),
aws_ec2.SubnetConfiguration(
name="Egress",
subnet_type=aws_ec2.SubnetType.PRIVATE_WITH_EGRESS,
),
aws_ec2.SubnetConfiguration(
name="Isolated",
subnet_type=aws_ec2.SubnetType.PRIVATE_ISOLATED,
),
],
)
我有一个安全组看起来像这样:
self.eb_security_group = aws_ec2.SecurityGroup(
scope,
"SecurityGroup",
vpc=self.vpc,
)
self.eb_security_group.add_ingress_rule(peer=aws_ec2.Peer.ipv4("0.0.0.0/0"), connection=aws_ec2.Port.tcp(22))
该安全组与Auto Scaling Group中的EC2实例关联。当我配置Elastic Beanstalk环境时,我包括以下内容:
"aws:autoscaling:launchconfiguration": {
"InstanceType": "t3.medium",
"IamInstanceProfile": instance_profile.ref,
"SecurityGroups": vpc_resources.eb_security_group.security_group_id,
},
"aws:ec2:vpc": {
"VPCId": vpc_resources.vpc.vpc_id,
"Subnets": ",".join([subnet.sub