我正在使用 AWS CDK 創建一個ApplicationLoadBalancer埠 80 接受外部連接。
我想將目標的8080埠用于健康檢查埠。
const lb = new elb.ApplicationLoadBalancer(this, "LB", {
vpc: cluster.vpc,
loadBalancerName : loadBalancerName,
internetFacing: true,
vpcSubnets: { subnetType: ec2.SubnetType.PUBLIC },
});
const listener = lb.addListener("Listener", { port: 80 });
const targetGroup = listener.addTargets("ECS", {
protocol: elb.ApplicationProtocol.HTTP,
port: 80,
targets: [ecsAdminService]
});
targetGroup.configureHealthCheck({
path: "/",
port: "8080"
})
在這種情況下ApplicationLoadBalancer會自動創建安全組。
但是,它只有一個出站規則port 80。我要添加出站規則port 8080
如何更改安全組以使其自動生成?
uj5u.com熱心網友回復:
當您使用 CDK 創建負載均衡器時,如果未提供安全組,CDK 將自動為您創建一個安全組。
因此,如果要管理安全組規則,您可以使用您需要的規則創建一個安全組并附加到創建的 ALB:
const securityGroup1 = new ec2.SecurityGroup(this, 'SecurityGroup1', { vpc });
securityGroup1.addIngressRule(
ec2.Peer.anyIpv4(),
ec2.Port.tcp(80),
'allow HTTP traffic from anywhere',
);
const lb = new elbv2.ApplicationLoadBalancer(this, 'LB', {
vpc,
internetFacing: true,
securityGroup: securityGroup1, // Optional - will be automatically created otherwise
});
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/430413.html
標籤:亚马逊网络服务 亚马逊云形成 aws-cdk aws-安全组
