Files
awx-operator/docs/user-guide/advanced-configuration/containers-resource-requirements.md
Christian Adams a5211fe511 Add postgres init container to resolve permissions for some k3s deployments (#1805)
Add postgres init container if
postgres_data_volume_init is true

This is aimed to solve the issue where users may
need to chmod or chown the postgres
data volume for user 26, which is the user
that is running postgres in the sclorg image.

For example, one can now set the follow on the AWX spec:
spec:
  postgres_init_container_commands: |
    chown 26:0 /var/lib/pgsql/data
    chmod 700 /var/lib/pgsql/data

Deprecate postgres_init_container_resource_requirements param in favor
of postgres_resource_requirements param.

Signed-off-by: Seth Foster <fosterbseth@gmail.com>
Co-authored-by: craph <14820052+craph@users.noreply.github.com>
Co-authored-by: kurokobo <kuro664@gmail.com>
Co-authored-by: Christian M. Adams <chadams@redhat.com>
2024-04-03 13:19:57 -04:00

3.2 KiB

Containers HostAliases Requirements

Sometimes you might need to use HostAliases in web/task containers.

Name Description Default
host_aliases A list of HostAliases None

Example of customization could be:

---
spec:
  ...
  host_aliases:
    - ip: <name-of-your-ip>
      hostnames:
        - <name-of-your-domain>

Containers Resource Requirements

The resource requirements for both, the task and the web containers are configurable - both the lower end (requests) and the upper end (limits).

Name Description Default
web_resource_requirements Web container resource requirements requests: {cpu: 100m, memory: 128Mi}
task_resource_requirements Task container resource requirements requests: {cpu: 100m, memory: 128Mi}
ee_resource_requirements EE control plane container resource requirements requests: {cpu: 50m, memory: 64Mi}
redis_resource_requirements Redis container resource requirements requests: {cpu: 100m, memory: 128Mi}
postgres_resource_requirements Postgres container (and initContainer) resource requirements requests: {cpu: 10m, memory: 64Mi}
rsyslog_resource_requirements Rsyslog container resource requirements requests: {cpu: 100m, memory: 128Mi}
init_container_resource_requirements Init Container resource requirements requests: {cpu: 100m, memory: 128Mi}

Example of customization could be:

---
spec:
  ...

  task_resource_requirements:
    requests:
      cpu: 100m
      memory: 128Mi
      ephemeral-storage: 100M
    limits:
      cpu: 2000m
      memory: 4Gi
      ephemeral-storage: 500M
  web_resource_requirements:
    requests:
      cpu: 100m
      memory: 128Mi
    limits:
      cpu: 1000m
      memory: 4Gi
  ee_resource_requirements:
    requests:
      cpu: 100m
      memory: 64Mi
    limits:
      cpu: 1000m
      memory: 4Gi
  redis_resource_requirements:
    requests:
      cpu: 50m
      memory: 64Mi
    limits:
      cpu: 1000m
      memory: 4Gi
  rsyslog_resource_requirements:
    requests:
      cpu: 100m
      memory: 128Mi
    limits:
      cpu: 1000m
      memory: 2Gi
  init_container_resource_requirements:
    requests:
      cpu: 100m
      memory: 128Mi
    limits:
      cpu: 1000m
      memory: 2Gi

Limits and ResourceQuotas

If the cluster you are deploying in has a ResoruceQuota, you will need to configure resource limits for all of the pods deployed in that cluster. This can be done for AWX pods on the AWX spec in the manner shown above.

There is an example you can use in awx_v1beta1_awx_resource_limits.yaml.