<p>I am trying to implement CI/CD pipeline for my set of microservices by using Kubernetes HA cluster and Jenkins. </p>

<p>When I am exploring, I found that usage of load balancer for making a HA kubernetes cluster. I am planning to host my application in AWS. So I want to create and use an AWS elastic load balancer for my application by supporting HA kubernetes cluster. </p>

<p>My doubt here that, When I am exploring AWS load balancer, I am seeing that "Application Loadbalancer - http/https" and "Network Loadbalancer-TCP". </p>

<p>So here I am confused about which load balancer AWS resources I need to create? <br> In my exploration, I understood that to create a network load balancer. </p>

<p>So my confusion is this. Can anyone clear that I am going in correct direction?<br> Means creating network load balancer. </p>

<p>Can anyone correct me if I am going in wrong direction? </p>

<p>Let me know that should network load balancer will solve HA kubernetes cluster formation or not?</p>

Mr.DevEng
<p>There isn't a right answer to your question, it really depends what you need to do. <strong>You can achieve HA with a network load balancer, a classic load balancer (even though this is the old generation and is not suggested) or an application load balancer.</strong></p>

<p>The advantages of network load balancers are certainly related to performance and the possibility to attach elastic IPs and are ideal for balancing TPC traffic (level 4 routing).</p>

<p>On the other side, application load balancers are ideal for advanced load balancing of HTTP and HTTPS traffic (level 7 routing), with the possibility to do advanced request routing, suitable for complex application architectures (such as microservices)</p>

<p>This link might be useful <a href="https://aws.amazon.com/elasticloadbalancing/details/#details" rel="nofollow noreferrer">https://aws.amazon.com/elasticloadbalancing/details/#details</a></p>
