我正在用CDK(TypeScript)替换控制台中定义的基础设施。
我需要知道如何将通信转发到端口80到ECS任务。
在控制台中,我在目标组中设置ECS任务的IP地址。
同样,如何将负载均衡器与CDK中的ECS相关联?
也许这样做的唯一方法是用L1代码编写它?(CfnTargetGroup类?)
const lb = new elbv2.ApplicationLoadBalancer(this, 'LB', {
vpc,
internetFacing: true
})
lb.addListener('Listener', {
port: 80,
defaultTargetGroups: [] // pass something here?
})发布于 2022-07-01 09:36:06
选项1:向ALB添加一个侦听器。将ECS服务添加为侦听器目标。完整的示例这里。
const listener = lb.addListener('PublicListener', { port: 80, open: true });
listener.addTargets('ECS', {
port: 80,
targets: [
service.loadBalancerTarget({
containerName: 'web',
containerPort: 80,
}),
],
});选项2:使用L3 ApplicationLoadBalancedFargateService或模式的EC2近亲来创建ALB后面的ECS服务。
https://stackoverflow.com/questions/72809346
复制相似问题