blob: 551d6db639e93bd2dc0e4d201e86b05a7ae7922b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
|
apiVersion: apps/v1
kind: DaemonSet
metadata:
name: {{ include "multus.fullname" . }}-ds
labels:
{{- include "multus.labels" . | nindent 4 }}
tier: node
spec:
selector:
matchLabels:
{{- include "multus.selectorLabels" . | nindent 6 }}
updateStrategy:
type: RollingUpdate
template:
metadata:
labels:
{{- include "multus.selectorLabels" . | nindent 8 }}
tier: node
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
hostNetwork: true
{{- with .Values.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | nindent 6 }}
{{- end }}
serviceAccountName: {{ include "multus.serviceAccountName" . }}
containers:
- name: kube-multus
image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
env:
- name: KUBERNETES_NODE_NAME
valueFrom:
fieldRef:
fieldPath: spec.nodeName
command:
{{- if .Values.config.enabled }}
- /bin/bash
- -cex
- |
#!/bin/bash
sed "s|__KUBERNETES_NODE_NAME__|${KUBERNETES_NODE_NAME}|g" /tmp/multus-conf/{{ .Values.config.path }}.template > /tmp/{{ .Values.config.path }}
/entrypoint.sh --multus-conf-file=/tmp/{{ .Values.config.path }}
{{- else }}
- /entrypoint.sh
- "--multus-conf-file=auto"
- "--cni-version=0.3.1"
{{- end }}
lifecycle:
preStop:
exec:
command: ["/bin/bash", "-c", "rm /host/etc/cni/net.d/*-multus.conf"]
resources:
{{- toYaml .Values.resources | nindent 10 }}
securityContext:
{{- toYaml .Values.securityContext | nindent 10 }}
volumeMounts:
- name: cni
mountPath: /host/etc/cni/net.d
- name: cnibin
mountPath: /host/opt/cni/bin
- name: multus-cfg
mountPath: /tmp/multus-conf
volumes:
- name: cni
hostPath:
path: /etc/cni/net.d
- name: cnibin
hostPath:
path: /opt/cni/bin
- name: multus-cfg
configMap:
name: {{ .Values.config.name }}
items:
- key: cni-conf.json
path: {{ .Values.config.path }}.template
|