2023-03-29 13:35:19 +02:00

92 lines
2.4 KiB
YAML

---
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: zuul-scheduler
labels:
app.kubernetes.io/name: "zuul"
app.kubernetes.io/component: "zuul-scheduler"
spec:
replicas: 1
serviceName: "zuul-scheduler"
selector:
matchLabels:
app.kubernetes.io/name: "zuul"
app.kubernetes.io/component: "zuul-scheduler"
template:
metadata:
labels:
app.kubernetes.io/name: "zuul"
app.kubernetes.io/component: "zuul-scheduler"
spec:
affinity:
podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- weight: 100
podAffinityTerm:
labelSelector:
matchExpressions:
- key: "app.kubernetes.io/name"
operator: In
values:
- "zuul"
- key: "app.kubernetes.io/component"
operator: In
values:
- "zuul-scheduler"
topologyKey: "kubernetes.io/hostname"
containers:
- name: "scheduler"
image: "zuul/zuul-scheduler"
args: ["/usr/local/bin/zuul-scheduler", "-f", "-d"]
resources:
limits:
cpu: "2"
memory: "2G"
requests:
cpu: "100m"
memory: "200Mi"
securityContext:
runAsUser: 10001
runAsGroup: 10001
volumeMounts:
- name: "zuul-config"
mountPath: "/etc/zuul"
readOnly: true
- name: "zookeeper-client-tls"
mountPath: "/tls/client"
readOnly: true
- name: "zuul-config-data"
mountPath: "/etc/zuul-config"
- name: "zuul-scheduler-state-dir"
mountPath: "/var/lib/zuul"
serviceAccountName: "zuul"
volumes:
- name: "zuul-config"
secret:
secretName: "zuul-config"
- name: "zookeeper-client-tls"
secret:
secretName: "zookeeper-client-tls"
- name: "zuul-config-data"
persistentVolumeClaim:
claimName: "zuul-config"
volumeClaimTemplates:
- metadata:
name: "zuul-scheduler-state-dir"
spec:
accessModes:
- "ReadWriteOnce"
storageClassName: "csi-disk"
resources:
requests:
storage: "5G"