diff --git a/deploy/crds/awx_v1beta1_cr.yaml b/deploy/crds/awx_v1beta1_cr.yaml index 206ccf3e..c242695b 100644 --- a/deploy/crds/awx_v1beta1_cr.yaml +++ b/deploy/crds/awx_v1beta1_cr.yaml @@ -16,17 +16,10 @@ spec: tower_image: ansible/awx:15.0.0 - tower_task_mem_request: 1Gi - tower_task_cpu_request: 500m - - tower_web_mem_request: 2Gi - tower_web_cpu_request: 1000m - tower_create_preload_data: true tower_memcached_image: memcached:alpine tower_redis_image: redis:latest - tower_postgres_storage_request: 8Gi tower_postgres_storage_class: '' diff --git a/deploy/crds/awx_v1beta1_molecule.yaml b/deploy/crds/awx_v1beta1_molecule.yaml index b09a4f51..60cf6d1e 100644 --- a/deploy/crds/awx_v1beta1_molecule.yaml +++ b/deploy/crds/awx_v1beta1_molecule.yaml @@ -15,11 +15,15 @@ spec: tower_image: ansible/awx:15.0.0 - tower_task_mem_request: 128M - tower_task_cpu_request: 500m + tower_web_resource_requirements: + requests: + cpu: 500m + memory: 128M - tower_web_mem_request: 128M - tower_web_cpu_request: 500m + tower_task_resource_requirements: + requests: + cpu: 500m + memory: 128M tower_create_preload_data: true @@ -29,5 +33,4 @@ spec: tower_postgres_pass: awxpass tower_postgres_image: postgres:12 - tower_postgres_storage_request: 8Gi tower_postgres_storage_class: '' diff --git a/deploy/olm-catalog/awx-operator/manifests/awx-operator.clusterserviceversion.yaml b/deploy/olm-catalog/awx-operator/manifests/awx-operator.clusterserviceversion.yaml index 39b20c14..7bc13038 100644 --- a/deploy/olm-catalog/awx-operator/manifests/awx-operator.clusterserviceversion.yaml +++ b/deploy/olm-catalog/awx-operator/manifests/awx-operator.clusterserviceversion.yaml @@ -132,6 +132,16 @@ spec: x-descriptors: - urn:alm:descriptor:com.tectonic.ui:advanced - urn:alm:descriptor:com.tectonic.ui:imagePullPolicy + - displayName: Web container resource requirements + path: tower_web_resource_requirements + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:advanced + - urn:alm:descriptor:com.tectonic.ui:resourceRequirements + - displayName: Task container resource requirements + path: tower_task_resource_requirements + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:advanced + - urn:alm:descriptor:com.tectonic.ui:resourceRequirements - displayName: Replicas path: tower_replicas x-descriptors: diff --git a/deploy/olm-catalog/awx-operator/manifests/awx.ansible.com_awxs_crd.yaml b/deploy/olm-catalog/awx-operator/manifests/awx.ansible.com_awxs_crd.yaml index 8fddc73e..5984c9d0 100644 --- a/deploy/olm-catalog/awx-operator/manifests/awx.ansible.com_awxs_crd.yaml +++ b/deploy/olm-catalog/awx-operator/manifests/awx.ansible.com_awxs_crd.yaml @@ -61,6 +61,12 @@ spec: - Always - Never - IfNotPresent + tower_task_resource_requirements: + description: Resource requirements for the task container + type: object + tower_web_resource_requirements: + description: Resource requirements for the web container + type: object tower_replicas: description: Number of instance replicas type: integer diff --git a/roles/installer/defaults/main.yml b/roles/installer/defaults/main.yml index b8576237..d5e40abe 100644 --- a/roles/installer/defaults/main.yml +++ b/roles/installer/defaults/main.yml @@ -66,11 +66,15 @@ tower_task_command: [] tower_web_args: [] tower_web_command: [] -tower_task_mem_request: 1Gi -tower_task_cpu_request: 500m +tower_task_resource_requirements: + requests: + cpu: 500m + memory: 1Gi -tower_web_mem_request: 2Gi -tower_web_cpu_request: 1000m +tower_web_resource_requirements: + requests: + cpu: 1000m + memory: 2Gi # Add extra environment variables to the AWX task/web containers. Specify as # literal block. E.g.: @@ -93,7 +97,9 @@ tower_web_extra_volume_mounts: '' tower_redis_image: redis:latest tower_postgres_image: postgres:12 -tower_postgres_storage_request: 8Gi +tower_postgres_resource_requirements: + requests: + storage: 8Gi tower_postgres_storage_class: '' tower_postgres_data_path: '/var/lib/postgresql/data/pgdata' diff --git a/roles/installer/templates/tower.yaml.j2 b/roles/installer/templates/tower.yaml.j2 index 3000b040..ddbaf937 100644 --- a/roles/installer/templates/tower.yaml.j2 +++ b/roles/installer/templates/tower.yaml.j2 @@ -99,10 +99,7 @@ spec: {% if tower_task_extra_env %} {{ tower_web_extra_env | indent(width=12, indentfirst=True) }} {% endif %} - resources: - requests: - memory: '{{ tower_web_mem_request }}' - cpu: '{{ tower_web_cpu_request }}' + resources: {{ tower_web_resource_requirements }} - image: '{{ tower_image }}' name: '{{ meta.name }}-task' imagePullPolicy: '{{ tower_image_pull_policy }}' @@ -163,10 +160,7 @@ spec: {% if tower_task_extra_env -%} {{ tower_task_extra_env | indent(width=12, indentfirst=True) }} {% endif %} - resources: - requests: - memory: '{{ tower_task_mem_request }}' - cpu: '{{ tower_task_cpu_request }}' + resources: {{ tower_task_resource_requirements }} volumes: {% if tower_ingress_type | lower == 'route' and tower_route_tls_termination_mechanism | lower == 'passthrough' %} - name: "{{ meta.name }}-nginx-certs" diff --git a/roles/installer/templates/tower_postgres.yaml.j2 b/roles/installer/templates/tower_postgres.yaml.j2 index 824a9057..cdfc3d5e 100644 --- a/roles/installer/templates/tower_postgres.yaml.j2 +++ b/roles/installer/templates/tower_postgres.yaml.j2 @@ -57,9 +57,7 @@ spec: {% if tower_postgres_storage_class != '' %} storageClassName: '{{ tower_postgres_storage_class }}' {% endif %} - resources: - requests: - storage: '{{ tower_postgres_storage_request }}' + resources: {{ tower_postgres_resource_requirements }} # Postgres Service. ---