Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Assistance/Explanation of the VPC CNI IP address consummation. #502

Open
rrachev opened this issue Apr 29, 2024 · 0 comments
Open

Assistance/Explanation of the VPC CNI IP address consummation. #502

rrachev opened this issue Apr 29, 2024 · 0 comments
Labels
correction Data is inaccurate

Comments

@rrachev
Copy link

rrachev commented Apr 29, 2024

Describe the problem
I am looking through the https://aws.github.io/aws-eks-best-practices/networking/vpc-cni/ documentation and I am curious regarding following example which is mentioned:

As an example, on a cluster with 3 c5.large nodes (3 ENIs and max 10 IPs per ENI), when the cluster starts up and has 2 CoreDNS pods, the CNI will consume 49 IP addresses and keeps them in warm pool. The warm pool enables faster Pod launches when the application is deployed.

Node 1 (with CoreDNS pod): 2 ENIs, 20 IPs assigned

Node 2 (with CoreDNS pod): 2 ENIs, 20 IPs assigned

Node 3 (no Pod): 1 ENI. 10 IPs assigned.


How these 49 IP addresses will be consumed and keeps them in the warm pool?
We have node1 which is started. It will have 1 ENI and 1 primary IP address will be consumed and 9 will be kept in the warm pool, but because there will be for example CoreDNS pod (which will consume another 1 IP address) warm pool will have 8 IPs. VPC CNI will allocate the second ENI with another primary IP and 9 IPs in the warm because of the CoreDNS pod. This mean that we will have 20 IPs occupied/taken from our primary subnet.
Situation for the second node is same, which means another 20 IPs from the primary subnet.
The 3rd node after its creation will consume 1 ENI with 1 Primary IP and 9 IPs in the warm pool, even that there aren't any workload on it.

Could someone explain how this calculation is done to receive 49 IPs mentioned in the example, even that below in the documentation is provided information for the nodes, their ENIs and IPs assigned to them?
What I am missing?

References
Please include a link to the lines where the error appears.
Screenshot 2024-04-29 at 17 15 38

@rrachev rrachev added the correction Data is inaccurate label Apr 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
correction Data is inaccurate
Projects
None yet
Development

No branches or pull requests

1 participant