⭐ AWS/NLB (NerworkLoadBalancer) (5) 썸네일형 리스트형 NLB가 어떻게 동작하는지 정리 # NLB 동작 정리 이번 NLB 구성을 통해서 알게 된점을 정리하면 아래와 같다. 1. NLB 리스너? - 리스너(Listner)는 한국말로 번역하면 수신기 즉 출발지에서 보낸 트래픽을 받는 수신기 라고 이해하면 쉽다. 리스너 예시를 보면 아래와 같다. 해당 캡처 내용은 ALB의 리스너 정보를 나타낸다. (퍼옴) 리스너의 구성을 보면 위와 같이 되어 있다. 출발지 에서 트래픽을 보내면 ELB의 DNS 주소가 맵핑되어 있는 서브넷의 IP로 트래픽이 들어올 것이고 해당 트래픽의 헤더에는 목적지 정보와 Port정보를 달고 들어올 것이다. 그리고 받는 목적지의 Destination 리소스의 위치 즉 퍼블릭 서브넷에 존재 하느냐 프라이빗 서브넷에 존재하느냐에 따라서 퍼블릭 IP를 바라보고 들어올지 아니면 내부 .. NLB → ALB(타겟그룹)으로 정의시 확인 사항 # NLB 에서 ALB를 타겟그룹으로 잡고 ALB는 또 다른 타겟그룹으로 보낼 시 확인사항 1. 프로토콜 이해 NLB는 TCP/IP 즉 4계층 이므로 신뢰성이 보장되는 프로토콜이다. 그러므로 NLB와 ALB의 타겟그룹의 헬스체크가 모두 정상으로 되어 있어야 한다. ?? >> 확인 해봐야 함 그러면 HTTP는 괜찮은감??? 2. 테스트 케이스 구성 TCP/IP 프로그램을 만들어서 테스트 케이스를 구성해보고 결과를 기록한다. ... - 끝 - EKS 환경에서 argocd를 NLB에 등록하여 사용하기 # argocd를 NLB에 등록하여 사용하는 방법 - 일단 argocd는 https만 지원하므로 80으로 세팅하여 붙이면 443으로 리다이렉트를 하기 때문에 서비스 자체에 접근이 안된다. 그래서 리스너쪽에서 80으로 세팅을 해주면안되고 443으로 세팅을 해주어야 한다. - 그리고 NLB에서 사용을 하려면 타겟그룹바인딩을 해주면 된다. 현재는 도메인 및 인증서가 없어서 https를 사용하여 서비스를 접속하기에는 제한이 있으나, 일단 현재 환경으로 접속을 해보면 아래와 같다. 1. EKS에 TargetGroupBinding을 활용하여 서비스를 구성하는 방법은 아래를 참고한다. https://may9noy.tistory.com/1161 EKS에 NLB 적용시 리스너 여러개 등록하기 # EKS에서 NLB 적용시.. EKS에 NLB 적용시 리스너 여러개 등록하기 # EKS에서 NLB 적용시 리스너를 여러개 등록하는 과정을 알아보자. 1. TargetGroupBinding을 활용한 구현 - 설치하기 kubectl apply -k "github.com/aws/eks-charts/stable/aws-load-balancer-controller//crds?ref=master" kubectl get crd - 설치 완료 kubectl apply -k "github.com/aws/eks-charts/stable/aws-load-balancer-controller//crds?ref=master" customresourcedefinition.apiextensions.k8s.io/ingressclassparams.elbv2.k8s.aws configured customresou.. ALB VS NLB # ALB와 NLB를 비교해보자 - 일단 CLB가 TCP부터 HTTPS 까지 지원한다는것에 놀랐고, 근데 안쓰는 추세이고 여기서 주의깊게 봐야하는건 ALB는 HTTP, HTTPS 등 L7 계층에서 동작함 그래서 레다이렉트도 가능하고 헤더기반 라이팅도 가능하다. 보통 HTTP 서비스를 해주는 서비스를 ALB로 올린다. - NLB는 TCP, UDP, TLS 통신에 국한된다. 대신 속도가 빠르다. L4 계층에서 동작한다고 볼 수 있다. - 추가로 ingress에서 alb 어노테이션으로 서비스를 생성 시 alb와 리스너 타겟그룹까지 모두 생성을 자동으로 해준다. nlb는 ingress가 아니라서 그런가... 하긴 ingress 자체가 L7에서 동작 하능하게끔 되어 있으니... 그래서 nlb로 서비스를 만들면, .. 이전 1 다음