karmada/artifacts/deploy/karmada-descheduler.yaml

68 lines
2.2 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: karmada-descheduler
namespace: karmada-system
labels:
app: karmada-descheduler
spec:
replicas: 2
selector:
matchLabels:
app: karmada-descheduler
template:
metadata:
labels:
app: karmada-descheduler
spec:
automountServiceAccountToken: false
tolerations:
- key: node-role.kubernetes.io/master
operator: Exists
containers:
- name: karmada-descheduler
securityContext:
allowPrivilegeEscalation: false
privileged: false
image: docker.io/karmada/karmada-descheduler:latest
imagePullPolicy: IfNotPresent
command:
- /bin/karmada-descheduler
- --kubeconfig=/etc/karmada/config/karmada.config
- --metrics-bind-address=0.0.0.0:8080
- --health-probe-bind-address=0.0.0.0:10358
- --scheduler-estimator-ca-file=/etc/karmada/pki/scheduler-estimator-client/ca.crt
- --scheduler-estimator-cert-file=/etc/karmada/pki/scheduler-estimator-client/tls.crt
- --scheduler-estimator-key-file=/etc/karmada/pki/scheduler-estimator-client/tls.key
- --v=4
livenessProbe:
httpGet:
path: /healthz
port: 10358
scheme: HTTP
failureThreshold: 3
initialDelaySeconds: 15
periodSeconds: 15
timeoutSeconds: 5
ports:
- containerPort: 8080
name: metrics
protocol: TCP
volumeMounts:
- name: karmada-config
mountPath: /etc/karmada/config
- name: scheduler-estimator-client-cert
mountPath: /etc/karmada/pki/scheduler-estimator-client
readOnly: true
volumes:
- name: karmada-config
secret:
secretName: karmada-descheduler-config
- name: scheduler-estimator-client-cert
secret:
secretName: karmada-descheduler-scheduler-estimator-client-cert
securityContext:
seccompProfile:
type: RuntimeDefault
priorityClassName: system-node-critical