SGP(Security Group for Pod)

728x90

SGP

VPC CNI 는 노드(instance)의 ENI 와 연결된 보안 그룹을 사용한다.

 

즉, Node 에 띄워지는 모든 Pod 들은 Node 의 보안 그룹을 사용하게 된다.

 

이 말은 Node 보안 그룹을 Pod 가 사용하기 때문에 불필요한 리소스에 접근을 할 수 있게 된다.

 

그러나 Security Group for Pods 를 사용하면 개별 Pod 에 Security Group 을 사용할 수 있게 된다.

 

VPC CNI 에서 ENABLE_POD_ENI=true 를 설정하면 vpc cni 애드온이 각 클러스터의 노드에 vpc.amazonaws.com/has-trunk-attached=true Lable 을 추가한다.

 

“aws-k8s-trunk-eni” 라는 trunk interface 를 생성하여 노드에 연결한다. 노드의 인스턴스 타입에 따라 브랜치 네트워크 인터페이스 갯수와 IP capacity 가 달라진다.

 

m5.large 타입의 경우 ENI 를 최대 29개 사용할 수 있다. 즉, 최대 29개의 Pod 가 뜰 수 있다는 것이다. 노드의 최대 파드 수를 조정할 수 있기는 하다.

 

Amazon EC2 노드에 사용 가능한 IP 주소 증량 - Amazon EKS

관리형 노드 그룹은 maxPods의 값에 최대 수를 적용합니다. vCPU가 30개 미만인 인스턴스의 경우 최대 수는 110이고 다른 모든 인스턴스의 경우 최대 수는 250입니다. 이 최대 수는 접두사 위임의 활성

docs.aws.amazon.com

 

SGP 를 할당받은 pod 가 node의 kubelet 에서 probe(startup 이나 readiness) 통신이 안 될 경우, DISABLE_TCP_EARLY_DEMUX=true 로 변경해야 한다.(initContainer 섹션에서 DISABLE_TCP_EARLY_DEMUX의 값을 true로 변경)

728x90