Replacing AWS VPC-CNI with Calico on AWS EKS cluster

submited by
Style Pass
2020-06-28 18:00:36

EKS clusters come with default AWS VPC CNI plugin that provides some excellent features like getting an address within the VPC subnet range. One limitation of AWS CNI that comes from the number of IP addresses and ENI that you can assign to the single instance. Refer to the official page which shows that limit. As you can see,

For t3.large, you can assign 3×12 = 36 IP addresses to a single EC2 instance. Which severely limits the number of pods that can we can schedule in a single node.

For example, if you have a t3.large instance which supports max three ethernet and 12 IPs per interface. You can create only 35 pods, including the Kubernetes internal Pods, Because One IP is reserve for nodes itself.

We can replace VPC-CNI with calico in the EKS cluster, no matter how we created a cluster in the first place. But I see some problems while trying to increase the number of pods we can deploy in each machine if cluster created using `aws eks` command. Please follow the “eksctl way” method mentioned below to create a cluster.

Now wait for sometimes before you create a node-groups, it will approximately take 10min to create it. After that, you can apply the following scripts.

Leave a Comment