Skip to content

Commit 35048b6

Browse files
authored
Document HPA v2 (#726)
1 parent b35bdbf commit 35048b6

File tree

1 file changed

+12
-7
lines changed

1 file changed

+12
-7
lines changed

doc/user-guide-v1.adoc

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -124,10 +124,13 @@ Each `RuntimeComponent` CR must at least specify the `.spec.applicationImage` fi
124124
| `applicationImage` | The absolute name of the image to be deployed, containing the registry and the tag. On OpenShift, it can also be set to `<project name>/<image stream name>[:tag]` to reference an image from an image stream. If `<project name>` and `<tag>` values are not defined, they default to the namespace of the CR and the value of `latest`, respectively.
125125
| `applicationName` | The name of the application this resource is part of. If not specified, it defaults to the name of the CR.
126126
| `applicationVersion` | The current version of the application. Label `app.kubernetes.io/version` will be added to all resources when the version is defined.
127-
| `autoscaling` | Configures the wanted resource consumption of pods. For examples, see link:#++https://github.com/OpenLiberty/open-liberty-operator/blob/main/doc/user-guide-v1.adoc#configure-multiple-application-instances-for-high-availability++[Configure multiple application instances for high availability].
128-
| `autoscaling.maxReplicas` | Required field for autoscaling. Upper limit for the number of pods that can be set by the autoscaler. It cannot be lower than the minimum number of replicas.
129-
| `autoscaling.minReplicas` | Lower limit for the number of pods that can be set by the autoscaler.
130-
| `autoscaling.targetCPUUtilizationPercentage` | Target average CPU utilization (represented as a percentage of requested CPU) over all the pods.
127+
| `autoscaling` | Configures the wanted resource consumption of pods. For more information, see link:++https://github.com/OpenLiberty/open-liberty-operator/blob/main/doc/user-guide-v1.adoc#configure-horizontal-pod-autoscaling-for-high-availability++[Configure Horizontal Pod Autoscaling for high availability].
128+
| `autoscaling.behavior` | Controls the scaling behavior of the target. If not set, the default HPAScalingRules for scale up and scale down are used. For more information, see link:++https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/#configurable-scaling-behavior++[Configurable Scaling Behavior].
129+
| `autoscaling.maxReplicas` | Required field for autoscaling. The maximum number of pods that the autoscaler can set. The value cannot be less than the minimum number of replicas.
130+
| `autoscaling.metrics` | Specifications used for replica count calculation. Custom metrics that use metrics APIs can be added to the list. For more information, see link:++https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/#support-for-metrics-apis++[Support for Metrics APIs].
131+
| `autoscaling.minReplicas` | The minimum number of pods that the autoscaler can set.
132+
| `autoscaling.targetCPUUtilizationPercentage` | The target average CPU usage, represented as a percentage of requested CPU, over all the pods.
133+
| `autoscaling.targetMemoryUtilizationPercentage` | The target average Memory utilization, represented as a percentage of requested memory, over all the pods.
131134
| `createKnativeService` | A Boolean to toggle the creation of Knative resources and use of Knative serving. To create a Knative service, set the parameter to true. For examples, see link:#++https://github.com/OpenLiberty/open-liberty-operator/blob/main/doc/user-guide-v1.adoc#deploy-serverless-applications-with-knative++[Deploy serverless applications with Knative] and link:#++https://github.com/OpenLiberty/open-liberty-operator/blob/main/doc/user-guide-v1.adoc#expose-applications-externally++[Expose applications externally].
132135
| `deployment` | The wanted state and cycle of the deployment and resources owned by the deployment.
133136
| `deployment.annotations` | Annotations to be added only to the deployment and resources owned by the deployment.
@@ -158,8 +161,9 @@ Each `RuntimeComponent` CR must at least specify the `.spec.applicationImage` fi
158161
| `replicas` | The static number of desired replica pods that run simultaneously.
159162
| `resources.limits.cpu` | The upper limit of CPU core. Specify integers, fractions (e.g. `0.5`), or millicores values(e.g. `100m`, where `100m` is equivalent to `.1` core).
160163
| `resources.limits.memory` | The memory upper limit in bytes. Specify integers with suffixes: `E`, `P`, `T`, `G`, `M`, `K`, or power-of-two equivalents: `Ei`, `Pi`, `Ti`, `Gi`, `Mi`, `Ki`.
161-
| `resources.requests.cpu` | The minimum required CPU core. Specify integers, fractions (e.g. `0.5`), or millicore values(e.g. `100m`, where `100m` is equivalent to `.1` core). Required field for autoscaling.
162-
| `resources.requests.memory` | The minimum memory in bytes. Specify integers with one of these suffixes: `E`, `P`, `T`, `G`, `M`, `K`, or power-of-two equivalents: `Ei`, `Pi`, `Ti`, `Gi`, `Mi`, `Ki`.
164+
| `resources.requests` | The minimum allowed amount of compute resources. If `requests` is omitted for a container, it defaults to limits if that is explicitly specified, otherwise to an implementation-defined value.
165+
| `resources.requests.cpu` | The minimum required CPU core. Specify integers, fractions (e.g. `0.5`), or millicore values(e.g. `100m`, where `100m` is equivalent to `.1` core). Required field for autoscaling based on CPU usage with the `.spec.autoscaling.targetCPUUtilizationPercentage`
166+
| `resources.requests.memory` | The minimum memory in bytes. Specify integers with one of these suffixes: `E`, `P`, `T`, `G`, `M`, `K`, or power-of-two equivalents: `Ei`, `Pi`, `Ti`, `Gi`, `Mi`, `Ki`. Required field for autoscaling based on memory usage with the `.spec.autoscaling.targetMemoryUtilizationPercentage` field.
163167
| `route.annotations` | Annotations to be added to the `Route`.
164168
| `route.certificateSecretRef` | A name of a secret that already contains TLS key, certificate and CA to be used in the `Route`. It can also contain destination CA certificate. The following keys are valid in the secret: `ca.crt`, `destCA.crt`, `tls.crt`, and `tls.key`.
165169
| `route.host` | Hostname to be used for the `Route`.
@@ -372,7 +376,8 @@ Browse the `RuntimeComponent` examples to learn how to use custom resource (CR)
372376
* link:++https://github.com/OpenLiberty/open-liberty-operator/blob/main/doc/user-guide-v1.adoc#add-annotations++[Add annotations (`.metadata.annotations`)]
373377
* link:++https://github.com/OpenLiberty/open-liberty-operator/blob/main/doc/user-guide-v1.adoc#set-environment-variables-for-an-application-container++[Set environment variables for an application container (`.spec.env` or `.spec.envFrom`)]
374378
* link:++https://github.com/OpenLiberty/open-liberty-operator/blob/main/doc/user-guide-v1.adoc#setting-up-basic-authentication-credentials-by-using-environment-variables++[Setting up basic authentication credentials by using environment variables (`.spec.envFrom[\].secretRef`)]
375-
* link:++https://github.com/OpenLiberty/open-liberty-operator/blob/main/doc/user-guide-v1.adoc#configure-multiple-application-instances-for-high-availability++[Configure multiple application instances for high availability (`.spec.replicas` or `.spec.autoscaling`)]
379+
* link:++https://github.com/OpenLiberty/open-liberty-operator/blob/main/doc/user-guide-v1.adoc#configure-multiple-application-instances-for-high-availability++[Configure static replicas for high availability (`.spec.replicas`)]
380+
* link:++https://github.com/OpenLiberty/open-liberty-operator/blob/main/doc/user-guide-v1.adoc#configure-horizontal-pod-autoscaling-for-high-availability++[Configure Horizontal Pod Autoscaling for high availability (`.spec.autoscaling`)]
376381
* link:++https://github.com/OpenLiberty/open-liberty-operator/blob/main/doc/user-guide-v1.adoc#set-privileges-and-permissions-for-a-pod-or-container++[Set privileges and permissions for a pod or container (`.spec.securityContext`)]
377382
* link:++https://github.com/OpenLiberty/open-liberty-operator/blob/main/doc/user-guide-v1.adoc#persist-resources++[Persist resources (`.spec.statefulSet` and `.spec.volumeMounts`)]
378383
* link:++https://github.com/OpenLiberty/open-liberty-operator/blob/main/doc/user-guide-v1.adoc#monitor-resources++[Monitor resources (`.spec.monitoring`)]

0 commit comments

Comments
 (0)