Как я могу получить существующие экземпляры EC2 через имя экземпляра и добавить их в качестве целей в ALB, используя AWS CDK в Python - PullRequest
0 голосов
/ 01 августа 2020

Как я могу получить существующие экземпляры EC2 через имя экземпляра и добавить их в качестве целей в ALB, используя AWS CDK в Python. Пожалуйста, найдите мой пример кода ниже, чтобы создать ALB, используя AWS -CDK- Python Язык

    core,
    aws_ec2,
    aws_elasticloadbalancingv2,
)

class WebsiteStack(core.Stack):

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

        self.vpc = aws_ec2.Vpc.from_lookup(self, 'default_vpc', is_default=True)

        self.sg_ssh = aws_ec2.SecurityGroup(
            self,
            'ssh',
            vpc=self.vpc,
            description="Allow SSH from anywhere",
            security_group_name="SSH from anywhere"
        )
        self.sg_ssh.add_ingress_rule(aws_ec2.Peer.any_ipv4(), aws_ec2.Port.tcp(22))

        tg = aws_elasticloadbalancingv2.ApplicationTargetGroup(
            self,
            'website-target-group',
            protocol=aws_elasticloadbalancingv2.ApplicationProtocol.HTTP,
            port=80,
            vpc=self.vpc,
            # target_type=aws_elasticloadbalancingv2.TargetType.INSTANCE,
            # targets=[ec2],  # FIXME
        )
        tg.add_target(ec2)  # FIXME```

Ответы [ 2 ]

0 голосов
/ 02 сентября 2020

Используя метод InstanceTarget, доступный в CDK, мы можем получить детали экземпляра EC2 и сохранить их в объекте; при использовании метода add_targets в модуле cdk я могу предоставить объект, в котором хранились данные экземпляра ec2.

0 голосов
/ 02 августа 2020

Я не уверен, как это сделать с помощью CDK, но обычно вы можете использовать команду register_targets():

Регистрирует указанные цели с указанной целью group.

Если целевой объект является экземпляром EC2, он должен быть в состоянии running при регистрации.

По умолчанию балансировщик нагрузки направляет запросы зарегистрированным целевым объектам с использованием протокола и порт для целевой группы. Кроме того, вы можете переопределить порт для цели при ее регистрации. Вы можете зарегистрировать каждый экземпляр EC2 или IP-адрес в одной целевой группе несколько раз, используя разные порты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...