Automation controller custom resources
The automation controller operator provides custom resources for deploying, configuring, and protecting a standalone automation controller instance on OpenShift Container Platform.
The AutomationController custom resource deploys and configures automation controller independently of the full Ansible Automation Platform deployment. Use this custom resource when you need to manage automation controller as a standalone component rather than through the AnsibleAutomationPlatform resource.
The AutomationControllerMeshIngress custom resource creates a mesh ingress hop node inside the OpenShift cluster. This enables remote execution nodes outside the cluster to connect to automation controller through the automation mesh network.
The AutomationControllerBackup and AutomationControllerRestore custom resources manage data protection for standalone automation controller deployments. A backup captures the controller database and configuration. A restore recreates the controller from a previously created backup.
AutomationController and AutomationControllerMeshIngress [automationcontroller.ansible.com]
The AutomationController custom resource deploys and configures a standalone automation controller instance. The AutomationControllerMeshIngress custom resource creates a mesh ingress hop node inside the OpenShift cluster for automation mesh connectivity.
AutomationController
| API Group | automationcontroller.ansible.com |
| API Version | v1beta1 |
| Kind | AutomationController |
| Scope | Namespaced |
AutomationController spec
The spec fields for the AutomationController custom resource.
| Field | Type | Description | Default |
|---|---|---|---|
image_pull_policy |
String | Image pull policy for automation controller pods. Options: Always, Never, IfNotPresent. |
IfNotPresent |
postgres_configuration_secret |
String | Name of a Kubernetes secret containing external PostgreSQL connection details for the automation controller database. | - |
route_tls_termination_mechanism |
String | TLS termination mechanism for the automation controller route. | - |
uwsgi_processes |
Integer | Number of uWSGI worker processes for the web pod. | 2 |
termination_grace_period_seconds |
Integer | Grace period in seconds for running jobs to complete before the pod terminates. | - |
ee_extra_env |
String | Extra environment variables to pass to execution environment pods. | - |
extra_settings |
Array | List of additional automation controller settings as name-value pairs. | - |
task_affinity |
Object | Kubernetes pod affinity rules for the task pod. | - |
web_affinity |
Object | Kubernetes pod affinity rules for the web pod. | - |
task_resource_requirements |
Object | Kubernetes resource requests and limits for the task pod. | cpu: 100m/1000m, memory: 150Mi/1200Mi |
web_resource_requirements |
Object | Kubernetes resource requests and limits for the web pod. | cpu: 100m/200m, memory: 200Mi/1600Mi |
ee_resource_requirements |
Object | Kubernetes resource requests and limits for execution environment pods. | cpu: 100m/1000m, memory: 64Mi/500Mi |
redis_resource_requirements |
Object | Kubernetes resource requests and limits for the automation controller Redis pod. | cpu: 50m/100m, memory: 64Mi/200Mi |
rsyslog_resource_requirements |
Object | Kubernetes resource requests and limits for the rsyslog pod. | cpu: 100m/500m, memory: 128Mi/250Mi |
init_container_resource_requirements |
Object | Kubernetes resource requests and limits for init containers. | cpu: 100m/500m, memory: 128Mi/200Mi |
Example AutomationController custom resource
apiVersion: automationcontroller.ansible.com/v1beta1
kind: AutomationController
metadata:
name: my-controller
spec:
uwsgi_processes: 4
task_resource_requirements:
requests:
cpu: 200m
memory: 512Mi
limits:
cpu: 2000m
memory: 2Gi
web_resource_requirements:
requests:
cpu: 200m
memory: 512Mi
limits:
cpu: 1000m
memory: 2GiAutomationControllerMeshIngress
| API Group | automationcontroller.ansible.com |
| API Version | v1alpha1 |
| Kind | AutomationControllerMeshIngress |
| Scope | Namespaced |
AutomationControllerMeshIngress spec
The spec fields for the AutomationControllerMeshIngress custom resource.
| Field | Type | Description | Default |
|---|---|---|---|
deployment_name |
String | Name of the AutomationController instance to attach the mesh ingress to. Required. Must be in the same namespace as the mesh ingress resource. |
- |
Example AutomationControllerMeshIngress custom resource
apiVersion: automationcontroller.ansible.com/v1alpha1
kind: AutomationControllerMeshIngress
metadata:
name: my-mesh-ingress
namespace: aap
spec:
deployment_name: my-controllerAutomationControllerBackup and AutomationControllerRestore [automationcontroller.ansible.com]
The AutomationControllerBackup and AutomationControllerRestore custom resources manage backup and restore operations for standalone automation controller deployments.
AutomationControllerBackup
| API Group | automationcontroller.ansible.com |
| API Version | v1beta1 |
| Kind | AutomationControllerBackup |
| Scope | Namespaced |
AutomationControllerBackup spec
| Field | Type | Description | Default |
|---|---|---|---|
deployment_name |
String | Name of the AutomationController instance to back up. Required. |
- |
no_log |
Boolean | Suppress logging of sensitive data during the backup process. | true |
backup_pvc |
String | Name of the persistent volume claim (PVC) to use for backup storage. | - |
backup_storage_class |
String | Kubernetes storage class for the backup PVC. | - |
backup_storage_requirements |
String | Storage size for the backup PVC, for example 15Gi. |
- |
create_backup_pvc |
Boolean | Set to true to have the operator create the PVC automatically. |
false |
Example AutomationControllerBackup custom resource
apiVersion: automationcontroller.ansible.com/v1beta1
kind: AutomationControllerBackup
metadata:
name: controller-backup
spec:
deployment_name: my-controller
backup_pvc: controller-backup-pvc
backup_storage_requirements: 15Gi
create_backup_pvc: trueAutomationControllerRestore
| API Group | automationcontroller.ansible.com |
| API Version | v1beta1 |
| Kind | AutomationControllerRestore |
| Scope | Namespaced |
AutomationControllerRestore spec
| Field | Type | Description | Default |
|---|---|---|---|
deployment_name |
String | Name of the AutomationController instance to restore. Required. |
- |
backup_name |
String | Name of the AutomationControllerBackup resource to restore from. Required. |
- |
no_log |
Boolean | Suppress logging of sensitive data during the restore process. | true |
Example AutomationControllerRestore custom resource
apiVersion: automationcontroller.ansible.com/v1beta1
kind: AutomationControllerRestore
metadata:
name: controller-restore
spec:
deployment_name: my-controller
backup_name: controller-backup