Skip to content

Commit 13e3f12

Browse files
committed
chore(controller): fine management affinity
1 parent 597bdb6 commit 13e3f12

8 files changed

Lines changed: 95 additions & 8 deletions

charts/controller/Chart.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,4 @@ description: Drycc Workflow Controller (API).
99
maintainers:
1010
- name: Drycc Team
1111
email: engineering@drycc.com
12-
version: v1.0.0
12+
version: v1.1.0

charts/controller/templates/controller-deployment.yaml renamed to charts/controller/templates/controller-api-deployment.yaml

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,16 @@ spec:
1515
type: RollingUpdate
1616
selector:
1717
matchLabels:
18-
app: drycc-controller
18+
app: drycc-controller-api
1919
template:
2020
metadata:
2121
labels:
22-
app: drycc-controller
22+
app: drycc-controller-api
2323
spec:
24-
{{- include "common.affinities.pods.soft" (dict "key" "app" "values" (list "drycc-controller")) | indent 6 }}
24+
affinity:
25+
podAffinity: {{- include "common.affinities.pods" (dict "type" .Values.api.podAffinityPreset.type "key" .Values.api.podAffinityPreset.key "values" .Values.api.podAffinityPreset.values ) | nindent 10 }}
26+
podAntiAffinity: {{- include "common.affinities.pods" (dict "type" .Values.api.podAntiAffinityPreset.type "key" .Values.api.podAntiAffinityPreset.key "values" .Values.api.podAntiAffinityPreset.values ) | nindent 10 }}
27+
nodeAffinity: {{- include "common.affinities.nodes" (dict "type" .Values.api.nodeAffinityPreset.type "key" .Values.api.nodeAffinityPreset.key "values" .Values.api.nodeAffinityPreset.values ) | nindent 10 }}
2528
serviceAccount: drycc-controller
2629
initContainers:
2730
- name: drycc-controller-init

charts/controller/templates/controller-service.yaml renamed to charts/controller/templates/controller-api-service.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
apiVersion: v1
22
kind: Service
33
metadata:
4-
name: drycc-controller
4+
name: drycc-controller-api
55
annotations:
66
{{- with .Values.service.annotations }}
77
{{- toYaml . | nindent 4 }}
@@ -14,4 +14,4 @@ spec:
1414
port: 80
1515
targetPort: 8000
1616
selector:
17-
app: drycc-controller
17+
app: drycc-controller-api

charts/controller/templates/controller-celery.yaml renamed to charts/controller/templates/controller-celery-deloyment.yaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,10 @@ spec:
2121
labels:
2222
app: drycc-controller-celery
2323
spec:
24-
{{- include "common.affinities.pods.soft" (dict "key" "app" "values" (list "drycc-controller-celery")) | indent 6 }}
24+
affinity:
25+
podAffinity: {{- include "common.affinities.pods" (dict "type" .Values.celery.podAffinityPreset.type "key" .Values.celery.podAffinityPreset.key "values" .Values.celery.podAffinityPreset.values ) | nindent 10 }}
26+
podAntiAffinity: {{- include "common.affinities.pods" (dict "type" .Values.celery.podAntiAffinityPreset.type "key" .Values.celery.podAntiAffinityPreset.key "values" .Values.celery.podAntiAffinityPreset.values ) | nindent 10 }}
27+
nodeAffinity: {{- include "common.affinities.nodes" (dict "type" .Values.celery.nodeAffinityPreset.type "key" .Values.celery.nodeAffinityPreset.key "values" .Values.celery.nodeAffinityPreset.values ) | nindent 10 }}
2528
serviceAccount: drycc-controller
2629
initContainers:
2730
- name: drycc-controller-init

charts/controller/templates/controller-cronjob-daily.yaml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,14 @@ spec:
1515
jobTemplate:
1616
spec:
1717
template:
18+
metadata:
19+
labels:
20+
app: drycc-controller-conjob
1821
spec:
22+
affinity:
23+
podAffinity: {{- include "common.affinities.pods" (dict "type" .Values.cronjob.podAffinityPreset.type "key" .Values.cronjob.podAffinityPreset.key "values" .Values.cronjob.podAffinityPreset.values ) | nindent 10 }}
24+
podAntiAffinity: {{- include "common.affinities.pods" (dict "type" .Values.cronjob.podAntiAffinityPreset.type "key" .Values.cronjob.podAntiAffinityPreset.key "values" .Values.cronjob.podAntiAffinityPreset.values ) | nindent 10 }}
25+
nodeAffinity: {{- include "common.affinities.nodes" (dict "type" .Values.cronjob.nodeAffinityPreset.type "key" .Values.cronjob.nodeAffinityPreset.key "values" .Values.cronjob.nodeAffinityPreset.values ) | nindent 10 }}
1926
restartPolicy: OnFailure
2027
serviceAccount: drycc-controller
2128
initContainers:

charts/controller/templates/controller-cronjob-hourly.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,9 @@ spec:
1515
jobTemplate:
1616
spec:
1717
template:
18+
metadata:
19+
labels:
20+
app: drycc-controller-conjob
1821
spec:
1922
restartPolicy: OnFailure
2023
serviceAccount: drycc-controller

charts/controller/templates/controller-webhook-deloyment.yaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,10 @@ spec:
1212
labels:
1313
component: drycc-controller-webhook
1414
spec:
15-
{{- include "common.affinities.pods.soft" (dict "key" "app" "values" (list "drycc-controller-webhook")) | indent 6 }}
15+
affinity:
16+
podAffinity: {{- include "common.affinities.pods" (dict "type" .Values.webhook.podAffinityPreset.type "key" .Values.webhook.podAffinityPreset.key "values" .Values.webhook.podAffinityPreset.values ) | nindent 10 }}
17+
podAntiAffinity: {{- include "common.affinities.pods" (dict "type" .Values.webhook.podAntiAffinityPreset.type "key" .Values.webhook.podAntiAffinityPreset.key "values" .Values.webhook.podAntiAffinityPreset.values ) | nindent 10 }}
18+
nodeAffinity: {{- include "common.affinities.nodes" (dict "type" .Values.webhook.nodeAffinityPreset.type "key" .Values.webhook.nodeAffinityPreset.key "values" .Values.webhook.nodeAffinityPreset.values ) | nindent 10 }}
1619
initContainers:
1720
- name: drycc-controller-init
1821
image: {{.Values.imageRegistry}}/{{.Values.imageOrg}}/python-dev:latest

charts/controller/values.yaml

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,74 @@ service:
4141
environment:
4242
RESERVED_NAMES: "drycc, drycc-builder, drycc-monitor-grafana"
4343

44+
api:
45+
nodeAffinityPreset:
46+
key: "drycc.cc/node"
47+
type: "soft"
48+
values:
49+
- "true"
50+
podAffinityPreset:
51+
key: "security"
52+
type: ""
53+
values:
54+
- "drycc-security"
55+
podAntiAffinityPreset:
56+
key: "app"
57+
type: "soft"
58+
values:
59+
- "drycc-controller-api"
60+
61+
celery:
62+
nodeAffinityPreset:
63+
key: "drycc.cc/node"
64+
type: "soft"
65+
values:
66+
- "true"
67+
podAffinityPreset:
68+
key: "security"
69+
type: ""
70+
values:
71+
- "drycc-security"
72+
podAntiAffinityPreset:
73+
key: "app"
74+
type: "soft"
75+
values:
76+
- "drycc-controller-celery"
77+
78+
webhook:
79+
nodeAffinityPreset:
80+
key: "drycc.cc/node"
81+
type: "soft"
82+
values:
83+
- "true"
84+
podAffinityPreset:
85+
key: "security"
86+
type: ""
87+
values:
88+
- "drycc-security"
89+
podAntiAffinityPreset:
90+
key: "app"
91+
type: "soft"
92+
values:
93+
- "drycc-controller-webhook"
94+
95+
cronjob:
96+
nodeAffinityPreset:
97+
key: "drycc.cc/node"
98+
type: "soft"
99+
values:
100+
- "true"
101+
podAffinityPreset:
102+
key: "security"
103+
type: ""
104+
values:
105+
- "drycc-security"
106+
podAntiAffinityPreset:
107+
key: "app"
108+
type: "soft"
109+
values:
110+
- "drycc-controller-webhook"
111+
44112
redis:
45113
replicas: 1
46114

0 commit comments

Comments
 (0)