67 lines
2.7 KiB
YAML
67 lines
2.7 KiB
YAML
{{- /*
|
|
Copyright Broadcom, Inc. All Rights Reserved.
|
|
SPDX-License-Identifier: APACHE-2.0
|
|
*/}}
|
|
|
|
{{- if .Values.autoscaling.enabled }}
|
|
apiVersion: {{ include "common.capabilities.hpa.apiVersion" ( dict "context" $ ) }}
|
|
kind: HorizontalPodAutoscaler
|
|
metadata:
|
|
name: {{ template "common.names.fullname" . }}
|
|
namespace: {{ include "common.names.namespace" . | quote }}
|
|
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
|
|
app.kubernetes.io/component: keycloak
|
|
{{- if .Values.commonAnnotations }}
|
|
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
|
{{- end }}
|
|
spec:
|
|
scaleTargetRef:
|
|
apiVersion: {{ include "common.capabilities.statefulset.apiVersion" . }}
|
|
kind: StatefulSet
|
|
name: {{ template "common.names.fullname" . }}
|
|
minReplicas: {{ .Values.autoscaling.minReplicas }}
|
|
maxReplicas: {{ .Values.autoscaling.maxReplicas }}
|
|
metrics:
|
|
{{- if .Values.autoscaling.targetCPU }}
|
|
- type: Resource
|
|
resource:
|
|
name: cpu
|
|
{{- if semverCompare "<1.23-0" (include "common.capabilities.kubeVersion" .) }}
|
|
targetAverageUtilization: {{ .Values.autoscaling.targetCPU }}
|
|
{{- else }}
|
|
target:
|
|
type: Utilization
|
|
averageUtilization: {{ .Values.autoscaling.targetCPU }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- if .Values.autoscaling.targetMemory }}
|
|
- type: Resource
|
|
resource:
|
|
name: memory
|
|
{{- if semverCompare "<1.23-0" (include "common.capabilities.kubeVersion" .) }}
|
|
targetAverageUtilization: {{ .Values.autoscaling.targetMemory }}
|
|
{{- else }}
|
|
target:
|
|
type: Utilization
|
|
averageUtilization: {{ .Values.autoscaling.targetMemory }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- if or .Values.autoscaling.behavior.scaleDown.policies .Values.autoscaling.behavior.scaleUp.policies }}
|
|
behavior:
|
|
{{- if .Values.autoscaling.behavior.scaleDown.policies }}
|
|
scaleDown:
|
|
stabilizationWindowSeconds: {{ .Values.autoscaling.behavior.scaleDown.stabilizationWindowSeconds }}
|
|
selectPolicy: {{ .Values.autoscaling.behavior.scaleDown.selectPolicy }}
|
|
policies:
|
|
{{- toYaml .Values.autoscaling.behavior.scaleDown.policies | nindent 8 }}
|
|
{{- end }}
|
|
{{- if .Values.autoscaling.behavior.scaleUp.policies }}
|
|
scaleUp:
|
|
stabilizationWindowSeconds: {{ .Values.autoscaling.behavior.scaleUp.stabilizationWindowSeconds }}
|
|
selectPolicy: {{ .Values.autoscaling.behavior.scaleUp.selectPolicy }}
|
|
policies:
|
|
{{- toYaml .Values.autoscaling.behavior.scaleUp.policies | nindent 8 }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- end }}
|