4.4. 自定义资源要求
自定义 Ansible Automation Platform 组件的资源要求,以优化特定环境中的性能和资源分配。
以下部分提供了一个完整的代码块,其中包含每个组件的默认资源要求。自定义资源要求的主要原因包括:
- 性能调优:提高执行繁重工作负载的组件的资源限值。
-
遵守集群管理员强制执行的
ResourceQuota。 - 资源 Constrained 环境:减少资源请求以在开发或测试环境中节省集群资源。
- 环境特定:使用 OpenShift 或 Kubernetes 集群节点的容量来连接资源分配。
您可以使用此引用作为起点。复制 Ansible Automation Platform 实例的完整代码块,并修改您要更改的组件值。此方法有助于确保正确应用所有默认设置,从而减少部署错误的风险。
注意
在添加 参数时,您只能将其添加到 Ansible Automation Platform 自定义资源(CR)中,这些参数将处理它们到嵌套 CR 的方法。
在删除 参数时,您必须从 Ansible Automation Platform CR 和 嵌套 CR 中删除它们,如 Automation Controller CR。
Example of defining custom resource requirements for all components This can be useful for clusters with a ResourceQuote in the AAP namespaceapiVersion: aap.ansible.com/v1alpha1 End state: * Controller deployed and named: myaap-controller * EDA deployed and named: myaap-eda * Hub deployed and named: myaap-hub
# Example of defining custom resource requirements for all components
# This can be useful for clusters with a ResourceQuote in the AAP namespaceapiVersion: aap.ansible.com/v1alpha1
kind: AnsibleAutomationPlatform
metadata:
name: aap
spec:
# Platform
api:
replicas: 1
resource_requirements:
requests:
cpu: 100m
memory: 256Mi
limits:
cpu: 500m
memory: 1000Mi
redis:
replicas: 1
resource_requirements:
requests:
cpu: 100m
memory: 256Mi
limits:
cpu: 500m
memory: 500Mi
database:
resource_requirements:
requests:
cpu: 100m
memory: 256Mi
limits:
cpu: 500m
memory: 800Mi
# Components
controller:
disabled: false
uwsgi_processes: 2
task_resource_requirements:
requests:
cpu: 100m
memory: 150Mi
limits:
cpu: 1000m
memory: 1200Mi
web_resource_requirements:
requests:
cpu: 100m
memory: 200Mi
limits:
cpu: 200m
memory: 1600Mi
ee_resource_requirements:
requests:
cpu: 100m
memory: 64Mi
limits:
cpu: 1000m
memory: 500Mi
redis_resource_requirements:
requests:
cpu: 50m
memory: 64Mi
limits:
cpu: 100m
memory: 200Mi
rsyslog_resource_requirements:
requests:
cpu: 100m
memory: 128Mi
limits:
cpu: 500m
memory: 250Mi
init_container_resource_requirements:
requests:
cpu: 100m
memory: 128Mi
limits:
cpu: 500m
memory: 200Mi
eda:
disabled: false
api:
replicas: 1
resource_requirements:
requests:
cpu: 50m
memory: 350Mi
limits:
cpu: 500m
memory: 400Mi
ui:
replicas: 1
resource_requirements:
requests:
cpu: 25m
memory: 64Mi
limits:
cpu: 500m
memory: 150Mi
scheduler:
replicas: 1
resource_requirements:
requests:
cpu: 50m
memory: 200Mi
limits:
cpu: 500m
memory: 250Mi
worker:
replicas: 2
resource_requirements:
requests:
cpu: 25m
memory: 200Mi
limits:
cpu: 250m
memory: 250Mi
default_worker:
replicas: 1
resource_requirements:
requests:
cpu: 25m
memory: 200Mi
limits:
cpu: 500m
memory: 400Mi
activation_worker:
replicas: 1
resource_requirements:
requests:
cpu: 25m
memory: 150Mi
limits:
cpu: 500m
memory: 400Mi
event_stream:
replicas: 1
resource_requirements:
requests:
cpu: 25m
memory: 150Mi
limits:
cpu: 100m
memory: 300Mi
hub:
disabled: false
## uncomment if using file storage for Content pod
storage_type: file
file_storage_storage_class: nfs-local-rwx # replace with the rwx storage class for your cluster
file_storage_size: 50Gi
## uncomment if using S3 storage for Content pod
# storage_type: S3
# object_storage_s3_secret: example-galaxy-object-storage
## uncomment if using Azure storage for Content pod
# storage_type: azure
# object_storage_azure_secret: azure-secret-name
api:
replicas: 1
resource_requirements:
requests:
cpu: 150m
memory: 256Mi
limits:
cpu: 800m
memory: 500Mi
content:
replicas: 1
resource_requirements:
requests:
cpu: 150m
memory: 256Mi
limits:
cpu: 800m
memory: 1200Mi
worker:
replicas: 1
resource_requirements:
requests:
cpu: 150m
memory: 256Mi
limits:
cpu: 800m
memory: 400Mi
web:
replicas: 1
resource_requirements:
requests:
cpu: 100m
memory: 256Mi
limits:
cpu: 500m
memory: 300Mi
redis:
replicas: 1
resource_requirements:
requests:
cpu: 100m
memory: 250Mi
limits:
cpu: 300m
memory: 400Mi
# lightspeed:
# disabled: true
# End state:
# * Controller deployed and named: myaap-controller
# * EDA deployed and named: myaap-eda
# * Hub deployed and named: myaap-hub