-
Notifications
You must be signed in to change notification settings - Fork 637
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 priority class options to high priority pods #862
Add priority class options to high priority pods #862
Conversation
@@ -223,7 +226,12 @@ postgres_storage_requirements: | |||
requests: | |||
storage: 8Gi | |||
postgres_init_container_resource_requirements: {} | |||
postgres_resource_requirements: {} | |||
postgres_resource_requirements: |
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.
@fosterseth I noticed this PR after putting up this other PR that makes a similar change: #876
I think your default request values may be a little too high (requests are guaranteed resources, it doesn't prevent the container from using more when needed).
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.
Let's sync up next week on how to merge these. Proposal: if you fold in my changes in #876 and fix the conflicts, we can just merge this and close the other.
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.
I pulled your commit into this PR
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.
Thank you @fosterseth
I will pull this down and test it out again.
af58394
to
7156cc4
Compare
- Add postgres_priority_class - Add control_plane_priority_class - Add default requests for postgres pod to ensure at a "Burstable" QoS
7156cc4
to
21062f0
Compare
@shanemcd do you mind giving this a review when you get chance, please? |
Here are a couple relevant snippets from my deployment: AWX Deployment
Postgres StatefulSet
|
@@ -41,6 +41,9 @@ spec: | |||
{% for secret in image_pull_secrets %} | |||
- name: {{ secret }} | |||
{% endfor %} | |||
{% endif %} | |||
{% if control_plane_priorityclass is defined %} |
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.
There is a typo here: control_plane_priority_class
It would be nice to have a section about setting these priority classes in the README.md. |
@fosterseth This commit adds some info to the readme and fixes the typo noted above if you want to just cherry-pick it in (dd3aa99, and here is the branch: https://github.com/ansible/awx-operator/compare/devel...rooftopcellist:add-to-priorityclass-option?expand=1).
|
Hmm... looks like CI is failing because the pod to run the job template is timing out:
This may be because of that typo. fwiw, with the commit I linked earlier, I am able to launch jobs on my deployment of awx without issue. |
Looks like CI still failed, it is because the environment that GitHub workflows runs ion does not have a lot of resources. The new defaults the pg init container that were added were enough to make it so that the pods never got scheduled. I also reduced the requests for the other containers to avoid running into something like this in the future. Changes are in this commit - 4b6f052 |
* GitHub Workflows run in a resource constrained environment, we were asking too much of it, so pods never got scheduled.
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.
Thank you for this contribution!
Adds options for setting the priority class to the control plane and postgres pods
the priorityclasses are presumed to already exist
e.g.
also sets default requests for the postgres pod to ensure a Burstable QoS