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

Add flags to configure controller parameters #492

Merged
merged 2 commits into from
Nov 21, 2024

Conversation

sushrk
Copy link
Contributor

@sushrk sushrk commented Nov 14, 2024

Issue #, if available:
#451 partly

Description of changes:

  1. Add support to configure controller parameters via flags, flags added
nodeWorkerCount: The number of node workers, default 10
userClientQPS: The EC2 user client QPS rate, default 12
userClientBurst: The EC2 user client burst limit, default 18
instanceClientQPS: The EC2 instance client QPS rate, default 12
instanceClientBurst: The instance client burst limit, default 18
apiServerQPS: The API server client QPS rate, default 20
apiServerBurst: The API server client burst limit, default 30
maxPodConcurrentReconciles: The maximum number of concurrent reconciles for pod controller, default 20
maxNodeConcurrentReconciles: The maximum number of concurrent reconciles for node controller, default 10

Customers can configure these values via controller flags eg here when running the controller on dataplane or non-EKS CP. Controller on EKS will use the defaults defined above.

- --node-mgr-workers=xx
- --user-client-qps=xx
- --user-client-burst=xx
- --instance-client-qps=xx
- --instance-client-burst=xx
- --apiserver-qps=xx
- --apiserver-burst=xx
- --max-pod-reconcile=xx
- --max-node-reconcile=xx

Verified controller is able to run, SGPP tests passed:

Ran 18 of 22 Specs in 1190.175 seconds
SUCCESS! -- 18 Passed | 0 Failed | 0 Pending | 4 Skipped
PASS
  1. Changed to r.Log.Info("branch ENI cool down period not configured in amazon-vpc-cni configmap, will retain the current cooldown period", "cool down period", curCoolDownPeriod) to avoid logging benign errors in the controller and make it easier to parse error logs.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

@sushrk sushrk requested a review from a team as a code owner November 14, 2024 08:15
@sushrk sushrk force-pushed the add-controller-flags branch from 4182561 to 06fa8a9 Compare November 14, 2024 21:35
Copy link
Contributor

@yash97 yash97 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm 🚀

@sushrk sushrk merged commit 79ae371 into aws:master Nov 21, 2024
4 checks passed
@sushrk sushrk deleted the add-controller-flags branch November 21, 2024 23:11
yash97 pushed a commit to yash97/amazon-vpc-resource-controller-k8s that referenced this pull request Dec 13, 2024
* Add flags to configure controller parameters

* update flag names
yash97 added a commit that referenced this pull request Dec 17, 2024
* Add flags to configure controller parameters (#492)

* Add flags to configure controller parameters

* update flag names

* Bump github.com/onsi/ginkgo/v2 from 2.19.0 to 2.22.0 (#497)

Bumps [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo) from 2.19.0 to 2.22.0.
- [Release notes](https://github.com/onsi/ginkgo/releases)
- [Changelog](https://github.com/onsi/ginkgo/blob/master/CHANGELOG.md)
- [Commits](onsi/ginkgo@v2.19.0...v2.22.0)

---
updated-dependencies:
- dependency-name: github.com/onsi/ginkgo/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* skip leaked ENIs cleanup on unmanaged nodes

* Updating api-machinery, client-go (#493)

* Bump k8s.io/apimachinery from 0.30.2 to 0.31.1

Bumps [k8s.io/apimachinery](https://github.com/kubernetes/apimachinery) from 0.30.2 to 0.31.1.
- [Commits](kubernetes/apimachinery@v0.30.2...v0.31.1)

---
updated-dependencies:
- dependency-name: k8s.io/apimachinery
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* upgrading client-go, controller-runtime versions too

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* updating limits go bt not deleting g3 instances (#501)

* Bump github.com/aws/amazon-vpc-cni-k8s from 1.18.1 to 1.18.3 (#446)

* Bump github.com/aws/amazon-vpc-cni-k8s from 1.18.1 to 1.18.3

Bumps [github.com/aws/amazon-vpc-cni-k8s](https://github.com/aws/amazon-vpc-cni-k8s) from 1.18.1 to 1.18.3.
- [Release notes](https://github.com/aws/amazon-vpc-cni-k8s/releases)
- [Changelog](https://github.com/aws/amazon-vpc-cni-k8s/blob/v1.18.3/CHANGELOG.md)
- [Commits](aws/amazon-vpc-cni-k8s@v1.18.1...v1.18.3)

---
updated-dependencies:
- dependency-name: github.com/aws/amazon-vpc-cni-k8s
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* update decoder type to fix presubmit failures

* update auto-generated CRD file

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: sushrk <[email protected]>

* use protobuf content type instead of json for k8s client (#484)

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: Sushmitha Ravikumar <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: sushrk <[email protected]>
Co-authored-by: Bhavitha <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants