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

Expose resources for awx-controller-manager in chart #14

Closed
labmonkey42 opened this issue Sep 4, 2024 · 4 comments · Fixed by #20
Closed

Expose resources for awx-controller-manager in chart #14

labmonkey42 opened this issue Sep 4, 2024 · 4 comments · Fixed by #20
Assignees

Comments

@labmonkey42
Copy link

labmonkey42 commented Sep 4, 2024

Migrating from ansible/awx-operator#1919

Summary

As noted in ansible/awx-operator#1115, GKE Autopilot automatically changes pod resource requests and/or limits. The specific defect described in that issue occurs because Autopilot clusters with the bursting feature disabled automatically (and transparently) change pod resources to set limits equal to the requests value when both values are defined. This means that awx-operator-controller-manager is left with insufficient memory, and will always be OOMKilled.

In my case, I deploy the awx-operator helm chart with an Ansible playbook, and thus I can use a kubernetes.core.k8s_json_patch task on the Deployment to set the requests value equal to the limits value immediately after the helm chart is deployed, effectively working around the problem. However, this does introduce the issue that any change that redeploys the chart will also have to re-patch the Deployment.

What ansible/awx-operator#1115 didn't spell out, and I'm specifically requesting here, is the ability to adjust the resources requests and limits for the awx-manager pod in the Deployment from the helm chart values directly. This would allow us to handle this issue before deploying the chart, and prevent the play from repeatedly adjusting these values in subsequent runs.

Basically, as D1StrX notes there, the CRD AWX should include a section for awx_manager_resource_requirements.

@oraNod
Copy link
Contributor

oraNod commented Sep 4, 2024

Thanks for migrating the issue to this repo @labmonkey42

@miles-w-3
Copy link
Collaborator

miles-w-3 commented Sep 4, 2024

I believe it is possible to do this by writing the deployment code to a tpl file, and then parsing from a macro before it lands on the cluster. This will allow the use of helm values to modify the kustomize output for the controller deployment, as opposed to how it is currently used now, which is simply just to create manifests

@ChrisLee-JackHenry
Copy link

Any ETA on a release with these changes?

@oraNod
Copy link
Contributor

oraNod commented Dec 13, 2024

Any ETA on a release with these changes?

I'd like to get a release cut next week. No promises though. We can use this issue to figure out the process and track the effort: #30

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 a pull request may close this issue.

4 participants