EKS VPC CNI

xlwdn·2023년 8월 28일
0

Amazon VPC CNI plugin for kubernetes


EKS의 각 EC2에 배포되어 추가적인 ENI를 attach 함으로써각 Pod 및 서비스에 할당한다.

즉 EKS에서 실행시킨 pod의 내부 IP 주소(ex. 10.0.0.4)를 할당하기 위해 ENI를 추가한다는 것이다.

장점

기존에 사용하던 overlay network처럼 IP를 할당하는 데에 캡슐화하는 overhead가 발생하지 않는다.

단점

instance 유형에 따라 ENI를 attach 할 수 있는 상한선이 정해져있으므로 각 instance에 대해서 이를 극복하는 추가적인 할당이 불가능하다.

Terraform에서 구성 방법

module "vpc_cni_irsa" {
  source  = "terraform-aws-modules/iam/aws//modules/iam-role-for-service-accounts-eks"
  version = "~> 5.0"

  role_name_prefix      = "VPC-CNI-IRSA"
  attach_vpc_cni_policy = true
  vpc_cni_enable_ipv6   = true

  oidc_providers = {
    main = {
      provider_arn               = module.eks.oidc_provider_arn
      namespace_service_accounts = ["kube-system:aws-node"]
    }
  }

  tags = local.tags
}

eks module을 생성할 때 아래에 vpc_cni_irsa module을 추가하여 구성할 수 있다.

https://docs.aws.amazon.com/ko_kr/eks/latest/userguide/managing-vpc-cni.html

https://ikcoo.tistory.com/160

https://docs.aws.amazon.com/ko_kr/eks/latest/userguide/cni-iam-role.html

0개의 댓글