Tạo Network Load Balancer

Tạo Network Load Balancer stack

  1. 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

Architect

  1. Để 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
){}

Architect

  1. 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;

Architect

  1. 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;
}

Architect

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

Architect

Tạo network load balancer

  1. 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());

Architect

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

Architect

  1. 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())

Architect