98 lines
3.3 KiB
YAML
98 lines
3.3 KiB
YAML
{{- if and (eq .Values.installMode "component") (has "schedulerEstimator" .Values.components) }}
|
|
{{ $namespace := include "karmada.namespace" .}}
|
|
{{ $clusterName := .Values.schedulerEstimator.clusterName }}
|
|
---
|
|
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: karmada-scheduler-estimator-{{ $clusterName }}
|
|
namespace: {{ $namespace }}
|
|
labels:
|
|
cluster: {{ $clusterName }}
|
|
{{- include "karmada.schedulerEstimator.labels" . | nindent 4}}
|
|
spec:
|
|
replicas: {{ .Values.schedulerEstimator.replicaCount }}
|
|
selector:
|
|
matchLabels:
|
|
app: karmada-scheduler-estimator-{{ $clusterName }}
|
|
{{- include "karmada.schedulerEstimator.labels" . | nindent 6}}
|
|
{{- with .Values.schedulerEstimator.strategy }}
|
|
strategy:
|
|
{{- toYaml . | nindent 8 }}
|
|
{{- end }}
|
|
template:
|
|
metadata:
|
|
{{- with .Values.schedulerEstimator.podAnnotations }}
|
|
annotations:
|
|
{{- toYaml . | nindent 8 }}
|
|
{{- end }}
|
|
labels:
|
|
app: karmada-scheduler-estimator-{{ $clusterName }}
|
|
{{- include "karmada.schedulerEstimator.labels" . | nindent 8}}
|
|
{{- include "karmada.schedulerEstimator.podLabels" . | nindent 8}}
|
|
spec:
|
|
{{- with .Values.schedulerEstimator.tolerations}}
|
|
tolerations:
|
|
{{- toYaml . | nindent 8 }}
|
|
{{- end }}
|
|
containers:
|
|
- name: karmada-scheduler-estimator
|
|
image: "{{ .Values.schedulerEstimator.image.repository }}:{{ .Values.schedulerEstimator.image.tag | default "latest" }}"
|
|
imagePullPolicy: {{ .Values.schedulerEstimator.image.pullPolicy }}
|
|
command:
|
|
- /bin/karmada-scheduler-estimator
|
|
- --kubeconfig=/etc/{{ $clusterName }}-kubeconfig
|
|
- --cluster-name={{ $clusterName }}
|
|
volumeMounts:
|
|
- name: member-kubeconfig
|
|
subPath: {{ $clusterName }}-kubeconfig
|
|
mountPath: /etc/{{ $clusterName }}-kubeconfig
|
|
volumes:
|
|
- name: member-kubeconfig
|
|
secret:
|
|
secretName: {{ $clusterName }}-kubeconfig
|
|
---
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
name: karmada-scheduler-estimator-{{ $clusterName }}
|
|
namespace: {{ $namespace }}
|
|
labels:
|
|
cluster: {{ $clusterName }}
|
|
spec:
|
|
selector:
|
|
app: karmada-scheduler-estimator-{{ $clusterName }}
|
|
{{- include "karmada.schedulerEstimator.labels" . | nindent 4}}
|
|
ports:
|
|
- protocol: TCP
|
|
port: 10352
|
|
targetPort: 10352
|
|
---
|
|
apiVersion: v1
|
|
kind: Secret
|
|
metadata:
|
|
name: {{ $clusterName }}-kubeconfig
|
|
namespace: {{ $namespace }}
|
|
stringData:
|
|
{{ $clusterName }}-kubeconfig: |-
|
|
apiVersion: v1
|
|
kind: Config
|
|
clusters:
|
|
- cluster:
|
|
certificate-authority-data: {{ b64enc .Values.schedulerEstimator.kubeconfig.caCrt }}
|
|
insecure-skip-tls-verify: false
|
|
server: {{ .Values.schedulerEstimator.kubeconfig.server }}
|
|
name: {{ $clusterName }}-apiserver
|
|
users:
|
|
- user:
|
|
client-certificate-data: {{ b64enc .Values.schedulerEstimator.kubeconfig.crt }}
|
|
client-key-data: {{ b64enc .Values.schedulerEstimator.kubeconfig.key }}
|
|
name: {{ $clusterName }}-apiserver
|
|
contexts:
|
|
- context:
|
|
cluster: {{ $clusterName }}-apiserver
|
|
user: {{ $clusterName }}-apiserver
|
|
name: {{ $clusterName }}-apiserver
|
|
current-context: {{ $clusterName }}-apiserver
|
|
{{- end }}
|