-
Notifications
You must be signed in to change notification settings - Fork 20
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 ResourceLimits for test pods #253
base: main
Are you sure you want to change the base?
Add ResourceLimits for test pods #253
Conversation
Skipping CI for Draft Pull Request. |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: lpiwowar The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@eshulman2, @eduolivares, @ashu-011: I would be really grateful ❤️ for your input here. This PR is about setting sane default resource limits [1] for the test pods. The limits are going to be different for each framework therefore I need an estimation from each of you, if possible:).
[1] https://pkg.go.dev/k8s.io/api/core/v1#ResourceRequirements
// The desired amount of resources that should be assigned to each test pod | ||
// spawned using the HorizonTest CR. https://pkg.go.dev/k8s.io/api/core/v1#ResourceRequirements | ||
// +kubebuilder:default:={limits: {cpu: "2000m", memory: "4Gi"}, requests: {cpu: "1000m", memory: "2Gi"}} | ||
Resources corev1.ResourceRequirements `json:"resources,omitempty"` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@ashu-011, can you please 🙏 suggest the correct Resource Limits for the horizon test pods? It will be possible to override the default value in the HorizonTest CR.
8827409
to
5147c15
Compare
This PR exposes the resources parameter in for all test-operator related CRs (Tempest, Tobiko, AnsibleTest, HorizonTest). This parameter can be used to specify amount of resources the test pods spawned by the test-operator should consume [1]. This commit intentionally unsets the value for Tempest test pods as the propagation of the fix for Tempest memory leak bug [1] did not reach the upstream openstack-tempest-all image yet. Once the fix is in place the default value of cifmw_test_operator_tempest_resources can be changed to {}. [1] openstack-k8s-operators/test-operator#253
5147c15
to
8e66c54
Compare
This change depends on a change that failed to merge. Change openstack-k8s-operators/ci-framework#2617 is needed. |
recheck |
This PR exposes the resources parameter in for all test-operator related CRs (Tempest, Tobiko, AnsibleTest, HorizonTest). This parameter can be used to specify amount of resources the test pods spawned by the test-operator should consume [1]. This commit intentionally unsets the value for Tempest test pods as the propagation of the fix for Tempest memory leak bug [1] did not reach the upstream openstack-tempest-all image yet. Once the fix is in place the default value of cifmw_test_operator_tempest_resources can be changed to {}. [1] openstack-k8s-operators/test-operator#253
/test all |
@lpiwowar: The following test failed, say
Full PR test history. Your PR dashboard. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |
8e66c54
to
9a14c77
Compare
The test pods spawned by the test operator prior to this change were executed without any resource limits. This ultimately meant that the pods could consume an unlimited amount of resources until the limit for a worker node was reached. This commit introduces default resource limits for each test pod spawned by the test operator (tempest, tobiko, ansibletest, horizontest pod). The default value can be overridden using .Spec.Resources parameter which is introduced as part of this commit as well [1]: spec: resources: requests: memory: 1Gi cpu: 250m limits: memory: 2Gi cpu: 500M [1] https://pkg.go.dev/k8s.io/api/core/v1#ResourceRequirements Depends-On: openstack-k8s-operators/ci-framework#2617
9a14c77
to
b157f44
Compare
The test pods spawned by the test operator prior to this change were
executed without any resource limits. This ultimately meant that the
pods could consume an unlimited amount of resources until the limit for
a worker node was reached.
This commit introduces default resource limits for each test pod
spawned by the test operator (tempest, tobiko, ansibletest, horizontest
pod). The default value can be overridden using .Spec.Resources
parameter which is introduced as part of this commit as well [1]:
[1] https://pkg.go.dev/k8s.io/api/core/v1#ResourceRequirements
Depends-On: openstack-k8s-operators/ci-framework#2617