diff --git a/deploy/helm/ai-spel-rule-engine/templates/deployment.yaml b/deploy/helm/ai-spel-rule-engine/templates/deployment.yaml index c99eb7d..f63120e 100644 --- a/deploy/helm/ai-spel-rule-engine/templates/deployment.yaml +++ b/deploy/helm/ai-spel-rule-engine/templates/deployment.yaml @@ -26,6 +26,27 @@ spec: imagePullSecrets: - name: {{ . | quote }} {{- end }} + {{- with .Values.pod.tolerations }} + tolerations: {{- toYaml . | nindent 8 }} + {{- end }} + affinity: + podAntiAffinity: + preferredDuringSchedulingIgnoredDuringExecution: + - weight: 100 + podAffinityTerm: + topologyKey: kubernetes.io/hostname + labelSelector: + matchLabels: + app.kubernetes.io/name: {{ .Chart.Name }} + app.kubernetes.io/instance: {{ .Release.Name }} + topologySpreadConstraints: + - maxSkew: 1 + topologyKey: kubernetes.io/hostname + whenUnsatisfiable: ScheduleAnyway + labelSelector: + matchLabels: + app.kubernetes.io/name: {{ .Chart.Name }} + app.kubernetes.io/instance: {{ .Release.Name }} containers: - name: rule-engine image: "{{ .Values.image.repository }}:{{ .Chart.AppVersion }}" diff --git a/deploy/helm/ai-spel-rule-engine/values.yaml b/deploy/helm/ai-spel-rule-engine/values.yaml index 9459154..4039776 100644 --- a/deploy/helm/ai-spel-rule-engine/values.yaml +++ b/deploy/helm/ai-spel-rule-engine/values.yaml @@ -8,6 +8,12 @@ deployment: maxSurge: 1 minReadySeconds: 5 progressDeadlineSeconds: 600 +pod: + tolerations: + - key: workload-tier + operator: Equal + value: small + effect: NoSchedule service: port: 8080 nats: