Decision runtime parameters
If a parameter is absent or has no value, then it means that the operator and Automation Decision Services pattern refer to the default value. You can overwrite the default value by entering a new value in your custom resource.
| Parameters | Description | Default/Example values |
|---|---|---|
| enabled | A flag to control whether the decision runtime must be deployed or not. |
The default value is When the enabled parameter for Decision Designer is set to If the enabled parameter for the decision runtime is |
| enable_access_logging | Toggle access logs entries into pod logs on standard output. | false |
| admin_secret_name | The name of the secret that encapsulates all the sensitive data of the decision runtime. | <instance>-ads-runtime-secret |
| allowed_origins | A comma-separated list of origins that are allowed to access the decision runtime domain. If
set to "*", the decision runtime domain is publicly accessible without any access
control checks. |
null (The decision runtime domain is NOT accessible.) |
| archive_storage_type | The type of decision archive storage. Possible values are:
Note: This value cannot be changed after decision archives have been deployed to the
runtime.
|
fs |
| authentication_mode | The authentication mode to access the runtime. Either basic or
zen. |
zen |
| decision_runtime_service.fs_group |
Sets the For more information, see the Kubernetes documentation. |
This parameter is optional. Type int (positive or null). |
| deployment_profile_size | A flag to control the default CPU/memory resources and replica count to be applied to
decision runtime services and pods. Possible values are: small, medium, large, and extra-large.
This parameter allows you to override the Cloud Pak
Note: The horizontal pod autoscaler is configured with an extra-large profile size.
|
small |
| event_emitter.allow_missing_events | Determines the behavior of the event emitter when its internal queue is full.
In all cases, failure to emit an event does not prevent a decision from running. |
true |
| event_emitter.enabled |
Enables the event emitter in the decision runtime to send events to an Apache Kafka cluster. |
The default value is false. You can change it to |
| event_emitter.dequeuer_threads |
Specifies how many threads are polling the events queue to send the events to the Kafka topic. If this parameter is not set, the number of threads is computed at the decision runtime start based on the number of CPU allocated to the runtime. |
null |
| event_emitter.kafka_bootstrap_servers |
A comma-separated list of host/port pairs that is used for establishing the initial connection to the Kafka cluster. For example: For more information, see the Kafka documentation. |
Mandatory if the event emitter is enabled. |
| event_emitter.kafka_connection_secret_name |
Name of a Kubernetes secret that contains the user credentials for authentication on the Kafka cluster. When the Optionally, the secret can contain a key In all cases, The TLS trust certificates configured with other parameters such as
|
Mandatory when the kafka_sasl_mechanism parameter is set to
PLAIN or SCRAM-SHA-512. |
| event_emitter.kafka_producers_count | The number of Kafka producers. Recommended value is 1. | 1 |
| event_emitter.kafka_properties_config_map_name |
Some custom Kafka client parameters can be added the same way as in https://kafka.apache.org/documentation/#producerconfigs. |
null |
| event_emitter.kafka_sasl_mechanism |
The SASL mechanism that is used for user authentication on the Kafka cluster when the parameter
Valid values:
|
PLAIN |
| event_emitter.kafka_security_protocol |
Protocol that is used to communicate with the Kafka cluster. Valid values:
|
SASL_SSL |
| event_emitter.kafka_topic | Name of the Kafka topic that is used to send events. | Mandatory if the event emitter is enabled. |
| event_emitter.queue_capacity | The decision runtime queues its events before it sends them asynchronously to the Kafka topic. This parameter controls how many events can be contained in the queue. | 50000 |
| resources.limits.ephemeral_storage | The ephemeral storage limit for the decision runtime container. | For details depending on profile size, see System requirements |
| resources.requests.ephemeral_storage | The ephemeral storage requested for the decision runtime container. | For details depending on profile size, see System requirements |
| s3.bucket_name | The name of the s3 bucket / container. | N/A |
| s3.region | The connection region depends on the storage platform and type (local, regional, or multi-regional) and on the connection type (public, private, or direct). | For example, for a public regional connection in Europe on IBM Cloud, you can choose
eu-de |
| s3.storage_region | On IBM Cloud, the storage region depends on the type of connection region and of bucket storage (standard, long-term, ...). | For example, for a standard bucket storage type and eu-de
connection region, the storage region is set to eu-de-standard.This parameter is optional with a MinIO server. |
| s3.server_url | The URL of the S3 storage system. The connection URL depends on the platform, the type of region (multi-region, unique region, or local region), and the type of endpoint ( public, private, direct). | For example, on IBM Cloud:
https://s3.eu-de.cloud-object-storage.appdomain.cloud |
| s3.secret_name | The name of the secret that contains the credentials to connect to the S3 storage system. | If the secret is not set, an anonymous connection is attempted. |
| s3.connection_timeout | The S3 connection timeout, in milliseconds. A value of 0 means an infinite
timeout and is not recommended. |
This setting is handled by the Amazon S3 SDK. For more information, see https://aws.amazon.com/sdk-for-java/. The default value is 10000. |
| s3.request_timeout | A zero value or negative value disables this feature. | This setting is handled by the Amazon S3 SDK. For more information, see https://aws.amazon.com/sdk-for-java/. The default value is 0. |
| storage_decision_check_status_interval |
The interval, in milliseconds, between checks and updates of the cached decisions. Type: integer |
The default value is 30000. |
| Parameters | Description | Default/Example values |
|---|---|---|
| autoscaling.enabled | Specifies whether horizontal pod autoscaling is enabled or not. | Default value is false, except in the case of an extra-large deployment profile size. |
| autoscaling.max_replicas | Maximum number of replicas. | 5 |
| autoscaling.min_replicas | Minimum number of replicas. | 2 |
| autoscaling.target_cpu_average_utilization | Determines when a new pod is created, based on the value of
resources.requests.cpu. |
Default value is 160, which means that a new pod is created when the CPU usage is more than
1.6 the value of resources.requests.cpu. |
| cache.config.expiry |
An optional XML fragment to configure how decision service archives expire in the cache. Three expiry types are supported:
For example, to configure a time-to-live expiry of 15 minutes:
The value of the unit attribute is one of "nanos", "micros", "millis", "seconds", "minutes", "hours", or "days". |
none |
| cache.config.resources | Specifies the maximum size of the decision service archives cache. The cache size can be
expressed as a number of entries, or as a memory size. When the maximum value is reached, one or
more entries are evicted from the cache. For example, to configure a cache with at most 100
entries:
To configure a
cache that cannot occupy more than 250 MB of
memory:
The value of the unit attribute is one of "entries", "B", "kB", "MB", "GB", "TB", "PB". |
|
| decision_selection.cache.config.expiry | Same as cache.config.expiry parameter. |
Same as cache.config.expiry parameter. |
| decision_selection.cache.config.resources | Same as cache.config.resources parameter. |
Same as cache.config.resources parameter. |
| decision_selection.threads | The maximum number of threads that perform updates of the decision selection results cache concurrently. | 1 |
| decision_selection.update_interval | The interval, in milliseconds, between decision selection results cache updates. | 120000 (2 minutes ) |
| decision_selection.query_interval | The interval, in milliseconds, between the execution of decision selection storage queries in the same thread. This delay is intended to reduce the possible bursts of MongoDB operations when the selection results cache has a large number of entries. | 1000 (1 second ) |
| image.digest | The image digest name of the container, if you prefer to use the digest instead of the tag. Digest has priority over tag. | |
| image.repository | The registry and namespace where the container images are located. | cp.icr.io/cp/cp4a/ads/ads-runtime |
| metadata.cache.config.check_interval | Integer. The interval, in milliseconds, between two metadata cache updates. | 30000 |
| metadata.cache.config.expiry | An optional XML fragment to configure how metadata expire in the cache. The syntax is
identical to cache.config.expiry. |
none |
| metadata.cache.config.manager.threads | Integer. The number of threads that perform metadata cache updates. | 1 |
| metadata.cache.config.resources | Specifies the maximum size of the metadata cache. The syntax is identical to
cache.config.resources. |
For more information about profile size values, see System requirements |
| persistence.resources.requests.storage |
The size of the Persistent Volume (PV) requested through a Persistent Value Claim (PVC) for the runtime instance. A string that represents a Kubernetes byte quantity. The PVC refers to the storage class that is defined by
Applicable only when S3 compatible storage is configured. |
|
| persistence.storage_class_name |
If Applicable only when S3 compatible storage is configured. |
|
| persistence.use_dynamic_provisioning |
Boolean. Controls the type of persistent storage claim that is created for the runtime. Applicable only when S3 compatible storage is configured. |
true |
| replica_count | The number of desired replicas of the container. Ignored if
autoscaling.enabled is set to true. |
Default value is 1 in starter mode, 2 in any other installation mode. |
| resources.limits.cpu | Specifies the CPU limit for the container. | 2 |
| resources.limits.memory | Specifies the memory limit for the container. | 2Gi |
| resources.requests.cpu | Specifies the CPU request for the container. | 1 |
| resources.requests.memory | Specifies the memory request for the container. | 512Mi |
| stack_trace_enabled | A flag that controls whether the decision runtime includes an exception stack trace in the response payload when an incident occurs. | false |
| tls.allow_self_signed | A flag that controls whether self-signed certificates are allowed or not to connect to decision storage or ML providers. | false |
| tls.certs_config_map_name | The name of the ConfigMap that holds the TLS certificates. | null (optional) |
| tls.enabled | A flag that controls whether TLS is required for decision storage or for ML providers connections (HTTPS protocol). | Not present. TLS is supported in all cases when connecting to ML providers. |
| tls.verify_hostname | A flag that controls whether hostnames of TLS certificates are verified to connect to decision storage or ML providers. | false |
| Parameters | Description | Default/Example values |
|---|---|---|
| spec.decision_runtime.ils.flush_interval | The number of seconds between each attempt to send a metric to License Service. | Default value is 600. |