1 # yamllint disable rule:hyphens rule:commas rule:indentation
4 # starts master daemons, each in a separate container
5 # it is run on the master(s)
10 # namespace set up by install
11 namespace: ovn-kubernetes
13 kubernetes.io/description: |
14 This Deployment launches the ovn-kubernetes master networking components.
16 progressDeadlineSeconds: 600
18 revisionHistoryLimit: 10
33 kubernetes.io/os: "linux"
35 scheduler.alpha.kubernetes.io/critical-pod: ''
37 # Requires fairly broad permissions - ability to read all services and network functions as well
39 serviceAccountName: ovn
42 # required to be scheduled on a linux node with node-role.kubernetes.io/master label and
43 # only one instance of ovnkube-master pod per node
46 requiredDuringSchedulingIgnoredDuringExecution:
49 - key: node-role.kubernetes.io/master
53 - key: kubernetes.io/os
58 requiredDuringSchedulingIgnoredDuringExecution:
65 topologyKey: kubernetes.io/hostname
70 image: "iecedge/ovn-daemonset-ubuntu:2020-04-16"
71 imagePullPolicy: "IfNotPresent"
73 command: ["/root/ovnkube.sh", "run-ovn-northd"]
80 terminationMessagePolicy: FallbackToLogsOnError
82 # Run directories where we need to be able to access sockets
83 - mountPath: /var/run/dbus/
84 name: host-var-run-dbus
86 - mountPath: /var/log/openvswitch/
87 name: host-var-log-ovs
88 - mountPath: /var/log/ovn/
89 name: host-var-log-ovs
90 - mountPath: /var/run/openvswitch/
91 name: host-var-run-ovs
92 - mountPath: /var/run/ovn/
93 name: host-var-run-ovs
94 - mountPath: /ovn-cert
103 - name: OVN_DAEMONSET_VERSION
105 - name: OVN_LOGLEVEL_NORTHD
106 value: "-vconsole:info -vfile:info"
107 - name: K8S_APISERVER
112 - name: OVN_KUBERNETES_NAMESPACE
115 fieldPath: metadata.namespace
116 - name: OVN_SSL_ENABLE
120 command: ["/usr/bin/ovn-kube-util", "readiness-probe", "-t", "ovn-northd"]
121 initialDelaySeconds: 30
127 image: "iecedge/ovn-daemonset-ubuntu:2020-04-16"
128 imagePullPolicy: "IfNotPresent"
130 command: ["/root/ovnkube.sh", "run-nbctld"]
135 terminationMessagePolicy: FallbackToLogsOnError
137 - mountPath: /var/log/openvswitch/
138 name: host-var-log-ovs
139 - mountPath: /var/log/ovn/
140 name: host-var-log-ovs
141 - mountPath: /var/run/openvswitch/
142 name: host-var-run-ovs
143 - mountPath: /var/run/ovn/
144 name: host-var-run-ovs
145 - mountPath: /ovn-cert
153 - name: OVN_DAEMONSET_VERSION
155 - name: OVN_LOGLEVEL_NBCTLD
156 value: "-vconsole:info"
157 - name: K8S_APISERVER
162 - name: OVN_SSL_ENABLE
167 command: ["/usr/bin/ovn-kube-util", "readiness-probe", "-t", "ovn-nbctld"]
168 initialDelaySeconds: 30
173 - name: ovnkube-master
174 image: "iecedge/ovn-daemonset-ubuntu:2020-04-16"
175 imagePullPolicy: "IfNotPresent"
177 command: ["/root/ovnkube.sh", "ovn-master"]
182 terminationMessagePolicy: FallbackToLogsOnError
184 # Run directories where we need to be able to access sockets
185 - mountPath: /var/run/dbus/
186 name: host-var-run-dbus
188 - mountPath: /var/log/ovn-kubernetes/
189 name: host-var-log-ovnkube
190 - mountPath: /var/run/openvswitch/
191 name: host-var-run-ovs
192 - mountPath: /var/run/ovn/
193 name: host-var-run-ovs
194 - mountPath: /ovn-cert
203 - name: OVN_DAEMONSET_VERSION
205 - name: OVNKUBE_LOGLEVEL
217 - name: K8S_APISERVER
225 fieldPath: spec.nodeName
226 - name: OVN_KUBERNETES_NAMESPACE
229 fieldPath: metadata.namespace
230 - name: OVN_HYBRID_OVERLAY_ENABLE
232 - name: OVN_HYBRID_OVERLAY_NET_CIDR
234 - name: OVN_SSL_ENABLE
239 # TODO: Need to check why we need this?
240 - name: host-var-run-dbus
243 - name: host-var-log-ovs
245 path: /var/log/openvswitch
246 - name: host-var-log-ovnkube
248 path: /var/log/ovn-kubernetes
249 - name: host-var-run-ovs
251 path: /var/run/openvswitch
252 - name: host-ovn-cert
255 type: DirectoryOrCreate