CDK elbv2.ApplicationLoadBalancer.add\u security\u组不工作

2024-05-23 19:30:52 发布

您现在位置:Python中文网/ 问答频道 /正文

CDK-Python最新版本

我正在做一个:

something = elbv2.ApplicationLoadBalancer(
...
)

something.add_security_group(securitygroupid)

我得到一个错误:

AttributeError:'ApplicationLoadBalancer'对象没有属性'add_security_group',当在CDK文档中,它说有一个方法?bug


Tags: 对象方法文档版本add属性错误group
1条回答
网友
1楼 · 发布于 2024-05-23 19:30:52

我能够运行cdk synth,它没有抱怨添加安全组

您使用的是哪个版本的CDK

请参见下面的虚拟示例。我使用的是aws cdk版本1.64.1

from aws_cdk import core

import aws_cdk.aws_ec2 as ec2
import aws_cdk.aws_elasticloadbalancingv2 as elbv2
import aws_cdk.aws_elasticloadbalancingv2_targets as targets


class CdkPythonStack(core.Stack):

  def __init__(self, scope: core.Construct, id: str, **kwargs) -> None:
    super().__init__(scope, id, **kwargs)

    vpc = ec2.Vpc(self, 'vpc')

    instance = ec2.Instance(self, 'instance', vpc=vpc, instance_type=ec2.InstanceType(
      't3.nano'), machine_image=ec2.MachineImage.latest_amazon_linux())

    alb = elbv2.ApplicationLoadBalancer(self, 'alb', vpc=vpc)

    alb.add_security_group(ec2.SecurityGroup(self, 'sg', vpc=vpc))

    listener = alb.add_listener('listener', port=80)

    listener.add_targets('ec2_instance', port=8080, targets=[
                         targets.InstanceIdTarget(instance_id=instance.instance_id, port=8080)])

相关问题 更多 >