Merge pull request #2970 from Poor12/fix-chart
Fix charts installation with component mode
This commit is contained in:
commit
18d1ceca4d
|
@ -347,6 +347,7 @@ helm install karmada-scheduler-estimator -n karmada-system ./charts/karmada
|
|||
| `descheduler.affinity` | Affinity of the descheduler | `{}` |
|
||||
| `descheduler.tolerations` | Tolerations of the descheduler | `{}` |
|
||||
| `descheduler.strategy` | Strategy of the descheduler | `{"type": "RollingUpdate", "rollingUpdate": {"maxUnavailable": "0", "maxSurge": "50%"} }` |
|
||||
| `descheduler.kubeconfig` | Kubeconfig of the descheduler | `karmada-kubeconfig` |
|
||||
| `search.labels` | Labels of the search deployment | `{"app": "karmada-search", "apiserver": "true"}` |
|
||||
| `search.replicaCount` | Target replicas of the search | `2` |
|
||||
| `search.podAnnotations` | Annotations of the search pods | `{}` |
|
||||
|
@ -360,3 +361,5 @@ helm install karmada-scheduler-estimator -n karmada-system ./charts/karmada
|
|||
| `search.affinity` | Affinity of the search | `{}` |
|
||||
| `search.tolerations` | Tolerations of the search | `{}` |
|
||||
| `search.strategy` | Strategy of the search | `{"type": "RollingUpdate", "rollingUpdate": {"maxUnavailable": "0", "maxSurge": "50%"} }` |
|
||||
| `search.certs` | Certs of the search | `karmada-cert` |
|
||||
| `search.kubeconfig` | Kubeconfig of the search | `karmada-kubeconfig` |
|
||||
|
|
|
@ -135,9 +135,16 @@ app: {{$name}}
|
|||
{{- end -}}
|
||||
|
||||
{{- define "karmada.descheduler.kubeconfig.volume" -}}
|
||||
{{ $name := include "karmada.name" . }}
|
||||
{{- if eq .Values.installMode "host" -}}
|
||||
- name: kubeconfig-secret
|
||||
secret:
|
||||
secretName: karmada-kubeconfig
|
||||
secretName: {{ $name }}-kubeconfig
|
||||
{{- else -}}
|
||||
- name: kubeconfig-secret
|
||||
secret:
|
||||
secretName: {{ .Values.descheduler.kubeconfig }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
|
||||
|
@ -222,6 +229,25 @@ app: {{- include "karmada.name" .}}-search
|
|||
{{- end }}
|
||||
{{- end -}}
|
||||
|
||||
{{- define "karmada.search.kubeconfig.volume" -}}
|
||||
{{ $name := include "karmada.name" . }}
|
||||
{{- if eq .Values.installMode "host" -}}
|
||||
- name: k8s-certs
|
||||
secret:
|
||||
secretName: {{ $name }}-cert
|
||||
- name: kubeconfig-secret
|
||||
secret:
|
||||
secretName: {{ $name }}-kubeconfig
|
||||
{{- else -}}
|
||||
- name: k8s-certs
|
||||
secret:
|
||||
secretName: {{ .Values.search.certs }}
|
||||
- name: kubeconfig-secret
|
||||
secret:
|
||||
secretName: {{ .Values.search.kubeconfig }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Return the proper karmada internal etcd image name
|
||||
*/}}
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
{{- define "karmada.apiservice" -}}
|
||||
{{- $name := include "karmada.name" . -}}
|
||||
{{- if eq .Values.installMode "host" }}
|
||||
---
|
||||
apiVersion: apiregistration.k8s.io/v1
|
||||
kind: APIService
|
||||
|
@ -26,8 +27,8 @@ metadata:
|
|||
spec:
|
||||
type: ExternalName
|
||||
externalName: {{ $name }}-aggregated-apiserver.{{ include "karmada.namespace" . }}.svc.{{ .Values.clusterDomain }}
|
||||
|
||||
{{- if and (or (eq .Values.installMode "component") (eq .Values.installMode "host")) (has "search" .Values.components) }}
|
||||
{{- end }}
|
||||
{{- if has "search" .Values.components }}
|
||||
---
|
||||
apiVersion: apiregistration.k8s.io/v1
|
||||
kind: APIService
|
||||
|
|
|
@ -44,7 +44,7 @@ spec:
|
|||
- name: k8s-certs
|
||||
mountPath: /etc/kubernetes/pki
|
||||
readOnly: true
|
||||
- name: kubeconfig
|
||||
- name: kubeconfig-secret
|
||||
subPath: kubeconfig
|
||||
mountPath: /etc/kubeconfig
|
||||
command:
|
||||
|
@ -74,12 +74,7 @@ spec:
|
|||
resources:
|
||||
{{- toYaml .Values.apiServer.resources | nindent 12 }}
|
||||
volumes:
|
||||
- name: k8s-certs
|
||||
secret:
|
||||
secretName: karmada-cert
|
||||
- name: kubeconfig
|
||||
secret:
|
||||
secretName: {{ $name }}-kubeconfig
|
||||
{{- include "karmada.search.kubeconfig.volume" . | nindent 8 }}
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
|
@ -95,4 +90,65 @@ spec:
|
|||
targetPort: 443
|
||||
selector:
|
||||
{{- include "karmada.search.labels" . | nindent 4 }}
|
||||
{{- if eq .Values.installMode "component" }}
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: {{ $name }}-search-apiservice
|
||||
namespace: {{ include "karmada.namespace" . }}
|
||||
data:
|
||||
{{- print "karmada-search-apiservice.yaml: " | nindent 2 }} |-
|
||||
{{- include "karmada.apiservice" . | nindent 4 }}
|
||||
---
|
||||
apiVersion: batch/v1
|
||||
kind: Job
|
||||
metadata:
|
||||
name: "{{ $name }}-search-post-install"
|
||||
namespace: {{ include "karmada.namespace" . }}
|
||||
labels:
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service | quote }}
|
||||
app.kubernetes.io/instance: {{ $name | quote }}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion }}
|
||||
helm.sh/chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
||||
annotations:
|
||||
# This is what defines this resource as a hook. Without this line, the
|
||||
# job is considered part of the release.
|
||||
"helm.sh/hook": post-install
|
||||
"helm.sh/hook-weight": "0"
|
||||
"helm.sh/hook-delete-policy": hook-succeeded
|
||||
spec:
|
||||
parallelism: 1
|
||||
completions: 1
|
||||
template:
|
||||
metadata:
|
||||
name: {{ $name }}
|
||||
labels:
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service | quote }}
|
||||
app.kubernetes.io/instance: {{ $name | quote }}
|
||||
helm.sh/chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
||||
spec:
|
||||
restartPolicy: Never
|
||||
containers:
|
||||
- name: post-install
|
||||
image: {{ template "karmada.kubectl.image" . }}
|
||||
imagePullPolicy: {{ .Values.kubectl.image.pullPolicy }}
|
||||
command:
|
||||
- /bin/sh
|
||||
- -c
|
||||
- |
|
||||
bash <<'EOF'
|
||||
set -ex
|
||||
kubectl apply -f /search-apiservice --kubeconfig /etc/kubeconfig
|
||||
EOF
|
||||
volumeMounts:
|
||||
- name: {{ $name }}-search-apiservice
|
||||
mountPath: /search-apiservice
|
||||
{{ include "karmada.kubeconfig.volumeMount" . | nindent 12 }}
|
||||
volumes:
|
||||
- name: {{ $name }}-search-apiservice
|
||||
configMap:
|
||||
name: {{ $name }}-search-apiservice
|
||||
{{ include "karmada.search.kubeconfig.volume" . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
|
|
@ -772,6 +772,8 @@ descheduler:
|
|||
rollingUpdate:
|
||||
maxUnavailable: 0
|
||||
maxSurge: 50%
|
||||
## @param descheduler.kubeconfig kubeconfig of the descheduler
|
||||
kubeconfig: karmada-kubeconfig
|
||||
|
||||
## karmada-search config
|
||||
search:
|
||||
|
@ -829,3 +831,7 @@ search:
|
|||
rollingUpdate:
|
||||
maxUnavailable: 0
|
||||
maxSurge: 50%
|
||||
## @param search.certs certs of the search
|
||||
certs: karmada-cert
|
||||
## @param search.kubeconfig kubeconfig of the search
|
||||
kubeconfig: karmada-kubeconfig
|
||||
|
|
Loading…
Reference in New Issue