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

ENI allocation takes lots of time if i brough 100's of nodes at the same time. WARM_ENI_TARGET does not help. #405

Closed
Deepak1100 opened this issue Apr 22, 2019 · 4 comments

Comments

@Deepak1100
Copy link

Cluster autoscaler have brought 150 nodes at the same time as I have increased the pods replicas. which resulted in the various container being in container creating state. it took 15 mins for all container to starts.

in this case, WARM_ENI_TARGET does not help as its keep additional eni for individual nodes(over here its old node) and my new node doesn't have any eni. Can't we keep some flag from which vpc-cni create additional eni but unattached to any instance? incase new instance come up they will use that unattached enis

@Deepak1100 Deepak1100 changed the title ENI allocation takes lots of time if i brough 100's of nodes at the same time ENI allocation takes lots of time if i brough 100's of nodes at the same time. WARM_ENI_TARGET does not help. Apr 22, 2019
@nckturner
Copy link
Contributor

Agreed, this is important: #420. 15 minutes is exceptionally long though, were they actually scheduled that whole time? Do you have any logs from that time?

@nckturner
Copy link
Contributor

Its possible you were throttled by EC2 when the 150 nodes launched.

@Deepak1100
Copy link
Author

Deepak1100 commented Apr 30, 2019

yes, I have 5 of these metrics.

error="allocate ip address: failed to allocate a private IP address: RequestLimitExceeded: Request limit exceeded. status code: 503, request id: 5b028d54-4b1a-48de-b033-bbcf4749cdb2",fn="retryAllocENIIPAllocAllIPAddressFailed"

hence I requested the central warm pool of eni from where daemonset just pick them up insisted of creating new eni and assigning ip's. because . it will not work when u created 100s of instance at the same time

@jaypipes
Copy link
Contributor

jaypipes commented Oct 9, 2019

@Deepak1100 apologies for the delay in responding here. After chatting with @mogren, we are not going to attempt to add this feature to the 1.x series of the CNI plugin, and instead are targeting the 2.0 CNI plugin for this functionality. You can read here about the 2.0 CNI plugin design: aws/containers-roadmap#398

You will note that the new design uses a CIDR-allocation strategy instead of a one-by-one IP/ENI allocation strategy. This will essentially alleviate the rate-limiting issues that the original design has.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants