Tạo Network Load Balancer
Tạo Network Load Balancer stack
- Trong CDK project tạo stack mới với tên là NlbStack.java và sau đó cho class NlbStack kế thừa lớp Stack cửa thư viện amazon.awscdk

- Để tạo NLB stack chúng ta cần VPC mà chúng ta đã tạo trước đó. Nên chúng ta cần tạo 1 record class tên là NlbStackProps để truyền VPC vào NLB Stack. Thêm đoạn code bên ngoài class ClusterStack
record NlbStackProps(
Vpc vpc
){}

- Trong NLB Stack chúng ta sẽ tạo Vpc Link, Network Load Balancer, Application Load Balancer nên trước tiên chúng ta cần tạo 3 thuộc tính ứng với chúng.
private final VpcLink vpcLink;
private final NetworkLoadBalancer networkLoadBalancer;
private final ApplicationLoadBalancer applicationLoadBalancer;

- Tiếp theo, chúng ta tạo các getter cho 3 thuộc tính trên
public VpcLink getVpcLink() {
return vpcLink;
}
public NetworkLoadBalancer getNetworkLoadBalancer() {
return networkLoadBalancer;
}
public ApplicationLoadBalancer getApplicationLoadBalancer() {
return applicationLoadBalancer;
}

- Tạo contructor cho class NlbStack
public NlbStack(final Construct scope, final String id,
final StackProps props, NlbStackProps nlbStackProps) {
super(scope, id, props);
}

Tạo network load balancer
- Trước tiên chúng ta sẽ tạo network load balancer (NLB). Để tạo NLB chúng ta cần khởi tạo đối tượng networkLoadBalancer trong contructor
this.networkLoadBalancer = new NetworkLoadBalancer(this, "Nlb",
NetworkLoadBalancerProps.builder()
.build());

- Tiếp theo đặt tên cho NLB là ECommerceNlb bằng cách
.loadBalancerName("ECommerceAlb")

- Như trong thiết kế trên diagram. Chúng ta sẽ khổng để NLB và ALB ngoài VPC nên chúng ta sẽ làm như sau
.internetFacing(false)
.vpc(nlbStackProps.vpc())
