- Created complete Helm chart with deployments, services, and ingress - Added support for both web frontend and API backend components - Included autoscaling (HPA) for both components - Added pod disruption budgets for high availability - Configured security contexts and best practices - Created helper templates and configuration management - Added production and development value files - Included comprehensive README with installation instructions
33 lines
1.1 KiB
YAML
33 lines
1.1 KiB
YAML
{{- if and .Values.api.enabled .Values.api.autoscaling.enabled }}
|
|
apiVersion: autoscaling/v2
|
|
kind: HorizontalPodAutoscaler
|
|
metadata:
|
|
name: {{ include "api7ee.fullname" . }}-api
|
|
labels:
|
|
{{- include "api7ee.labels" . | nindent 4 }}
|
|
app.kubernetes.io/component: api
|
|
spec:
|
|
scaleTargetRef:
|
|
apiVersion: apps/v1
|
|
kind: Deployment
|
|
name: {{ include "api7ee.fullname" . }}-api
|
|
minReplicas: {{ .Values.api.autoscaling.minReplicas }}
|
|
maxReplicas: {{ .Values.api.autoscaling.maxReplicas }}
|
|
metrics:
|
|
{{- if .Values.api.autoscaling.targetCPUUtilizationPercentage }}
|
|
- type: Resource
|
|
resource:
|
|
name: cpu
|
|
target:
|
|
type: Utilization
|
|
averageUtilization: {{ .Values.api.autoscaling.targetCPUUtilizationPercentage }}
|
|
{{- end }}
|
|
{{- if .Values.api.autoscaling.targetMemoryUtilizationPercentage }}
|
|
- type: Resource
|
|
resource:
|
|
name: memory
|
|
target:
|
|
type: Utilization
|
|
averageUtilization: {{ .Values.api.autoscaling.targetMemoryUtilizationPercentage }}
|
|
{{- end }}
|
|
{{- end }} |