KTAPolicy Custom Resource Definition (CRD)
Example
apiVersion: research.dynatrace.com/v1alpha1
kind: KtaPolicy
metadata:
name: <name>
spec:
... # see below
spec
| Field Name | Type | Description | Default | Constraint | Required |
|---|---|---|---|---|---|
| behavior | object | Policy behavior. | Yes | ||
| scaleDriver | object | Scale Driver. Different fields may be required, depending on the type. These fields are marked with n/a. Check the description to see if the field is required for a specific Scale Driver. Currently, a Scale Driver must not be updated. |
Yes |
behavior
| Field Name | Type | Description | Default | Constraint | Required |
|---|---|---|---|---|---|
| maxParallelism | integer | Maximum parallelism of each topology node. Must be greater than or equal to the minimum parallelism. | 2147483647 | No | |
| minParallelism | integer | Minimum parallelism of each topology node. | 1 | No | |
| reconciliationIntervalSeconds | integer | Reconciliation interval in seconds. | 30 | No | |
| resultHistoryLength | integer | Maximum number of past results that are provided to UDFs. | 2147483647 | No | |
| scaleDownStrategy | object | Strategy that should be applied when the plan UDF triggers a scale down. | NoStrategy |
No | |
| scaleUpStrategy | object | Strategy that should be applied when the plan UDF triggers a scale up. | NoStrategy |
No | |
| udfs | object | UDFs of the autoscaling algorithm. | Yes |
scaleDownStrategy
| Field Name | Type | Description | Default | Constraint | Required |
|---|---|---|---|---|---|
| args | string | Arguments that configure the scale strategy. Arguments are always passed as string. The format and semantics of the arguments differ based on the scale strategy. | No | ||
| type | string | Scale strategy. | NoStrategy |
Yes |
scaleUpStrategy
| Field Name | Type | Description | Default | Constraint | Required |
|---|---|---|---|---|---|
| args | string | Arguments that configure the scale strategy. Arguments are always passed as string. The format and semantics of the arguments differ based on the scale strategy. | No | ||
| type | string | Scale strategy. | NoStrategy |
Yes |
udfs
| Field Name | Type | Description | Default | Constraint | Required |
|---|---|---|---|---|---|
| analyzeEndpoint | string | Analyze UDF endpoint. | ^(http|https).* |
No | |
| monitorEndpoint | string | Monitor UDF endpoint. | ^(http|https).* |
Yes | |
| planEndpoint | string | Plan UDF endpoint. | ^(http|https).* |
Yes |
scaleDriver
| Field Name | Type | Description | Default | Constraint | Required |
|---|---|---|---|---|---|
| flinkJobDeploymentType | string | Flink job deployment type to determine the required number of task manager deployments. Required for Flink Scale Driver. |
SharedTaskSlots, StreamingGraphNodePerTaskSlot |
n/a | |
| flinkJobId | string | ID of the job to be scaled. Required for Flink Scale Driver. |
n/a | ||
| flinkJobManagerBaseUrl | string | Job manager base URL. Required for Flink Scale Driver. |
^(http|https).* |
n/a | |
| flinkTaskManagerDeploymentName | string | Name of the task manager deployment (Kubernetes API version: v1) to automatically scale the number of task managers with the parallelism. Each task manager must contain only a single task slot, this is, one task manager with 1 slot maps to a single replica of the deployment. If not set, the number of task managers has to be scaled externally, e.g., by using the Flink Kubernetes Operator. | n/a | ||
| flinkTopology | array | Topology nodes (Flink Streaming Graph Nodes) in topologically sorted order. Required for Flink Scale Driver. |
n/a | ||
| genericKubernetesTopology | array | Topology nodes in topologically sorted order. Required for GenericKubernetes Scale Driver. |
n/a | ||
| type | string | Scale driver type. | Flink, GenericKubernetes |
Yes |
flinkTopology
| Field Name | Type | Description | Default | Constraint | Required |
|---|---|---|---|---|---|
| id | string | Operator ID. | Yes |
genericKubernetesTopology
| Field Name | Type | Description | Default | Constraint | Required |
|---|---|---|---|---|---|
| kind | string | Kubernetes resource kind. Kubernetes API versions: Deployment -- v1. | Deployment |
Yes | |
| name | string | Kubernetes resource name. | Yes |