brunch

You can make anything
by writing

C.S.Lewis

by Master Seo Nov 09. 2023

39탄-2. EKS 기초-네트워크 이론 - 2023

EKS는  컨트롤 플레인 +  데이터 플래인이다.



<1> 컨트롤 플레인

<2> 데이터 플래인

<3> 외부에서 파드 접속

<4> K8S 서비스





<1> 컨트롤 플레인


직접 접속 불가

AWS에서 관리하는 VPC


API 서버  - 외부에서 명령을 내리는 서버

가용성 보장 필요


 etcd   - 데이터 저장

가용성 보장 필요



<2> 데이터 플래인


Customer VPC - 사용자가 관리하는 VPC


EKS ENI를 통해 내부로 통신한다.

API 서버 > kubelet으로 통신한다.


1

Public로  구축 시

API ->  ENI 통해 > Kubelet  통신한다.

 Kubelet 은  IGW를 통해  통신한다.



2

Public + Private로  구축 시

Kubelet 은 ENI 통해  통신한다.



3

 Private로 구축 시


인터넷으로 차단된 상태.

NAT가 없으면   S3, DynamoDB는 통신이 안된다.

이럴 경우 VPC END Point를 사용하라.




<3> 외부에서 파드 접속


1

서비스나 인그레스를 사용한다.



2

EKS 네트워크 알아보자.


EKS VPC CNI 네트워킹 사용한다.


Primary IP

Secondary IP

Secondary IP


Overlay 가  아닌 일반 VPC 네트워킹을 사용한다.



<4> K8S 서비스


1

Cluster IP  = 클러스터 내부에서 서버스에서 접속

외부에서 접속 불가

파드간의 통신에 사용한다.

ip-tables rule을 사용한다.



2

Node Port  = 노드의 포트를 외부에 오픈

노드 포트의 범위 = 30000~32767  포트 사용.

외부에서 노드 포트를 통해 접속.

노드에 대한 ip와 포트를 클라이언트가 알고 있어야 하는 단점이 있다.(단점)

ip-tables rule을 사용한다.



3

Load Balancer = 클라우드 공급 사업자의 로드밸런서 사용해 외부노출



서브넷 자동 탐색 방법은?


서브넷에 할당된 태그가 있다.

EKS 클러스터 만들어질 때 자동으로 할당된다.

로드밸런서는 서브넷에 할당된 태그룰 기반으로 서브넷에 배치됩니다.



서비스 만들 때는?

로드밸런서는 nlb 또는 Classic을 사용한다.

어노테이션으로 지정한다.   참고사항으로 들어간다.  스펙에 추가하지 않는다.



ingress 사용?

ingress를 통해 L7영역에 대한 트래픽처리를 한다.

ingress는  Application Load Balancer를 만든다. (nginx 도 있다)





다음

https://brunch.co.kr/@topasvga/3520


매거진의 이전글 39탄-1. EKS 기초- 보안 - 2023
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari