1 # yamllint disable rule:hyphens rule:commas rule:indentation
5 # starts node daemons for ovs and ovn, each in a separate container
6 # it is run on all nodes
11 # namespace set up by install
12 namespace: ovn-kubernetes
14 kubernetes.io/description: |
15 This DaemonSet launches the ovn-kubernetes networking components for worker nodes.
29 kubernetes.io/os: "linux"
31 scheduler.alpha.kubernetes.io/critical-pod: ''
33 # Requires fairly broad permissions - ability to read all services and network functions as well
35 serviceAccountName: ovn
40 # ovsdb-server and ovs-switchd daemons
42 image: "iecedge/ovn-daemonset-ubuntu:2020-04-16"
43 imagePullPolicy: "IfNotPresent"
45 command: ["/root/ovnkube.sh", "ovs-server"]
50 - /usr/share/openvswitch/scripts/ovs-ctl
52 initialDelaySeconds: 30
57 command: ["/usr/bin/ovn-kube-util", "readiness-probe", "-t", "ovs-daemons"]
58 initialDelaySeconds: 30
64 # Permission could be reduced by selecting an appropriate SELinux policy
67 terminationMessagePolicy: FallbackToLogsOnError
69 - mountPath: /lib/modules
72 - mountPath: /run/openvswitch
74 - mountPath: /var/run/openvswitch
75 name: host-var-run-ovs
79 - mountPath: /etc/openvswitch
80 name: host-config-openvswitch
89 - name: OVN_DAEMONSET_VERSION
99 command: ["/root/ovnkube.sh", "cleanup-ovs-server"]
101 - name: ovn-controller
102 image: "iecedge/ovn-daemonset-ubuntu:2020-04-16"
103 imagePullPolicy: "IfNotPresent"
105 command: ["/root/ovnkube.sh", "ovn-controller"]
112 terminationMessagePolicy: FallbackToLogsOnError
114 - mountPath: /var/run/dbus/
115 name: host-var-run-dbus
117 - mountPath: /var/log/openvswitch/
118 name: host-var-log-ovs
119 - mountPath: /var/log/ovn/
120 name: host-var-log-ovs
121 - mountPath: /var/run/openvswitch/
122 name: host-var-run-ovs
123 - mountPath: /var/run/ovn/
124 name: host-var-run-ovs
125 - mountPath: /ovn-cert
134 - name: OVN_DAEMONSET_VERSION
136 - name: OVN_LOG_CONTROLLER
137 value: "-vconsole:info"
138 - name: K8S_APISERVER
143 - name: OVN_KUBERNETES_NAMESPACE
146 fieldPath: metadata.namespace
147 - name: OVN_SSL_ENABLE
152 command: ["/usr/bin/ovn-kube-util", "readiness-probe", "-t", "ovn-controller"]
153 initialDelaySeconds: 30
158 image: "iecedge/ovn-daemonset-ubuntu:2020-04-16"
159 imagePullPolicy: "IfNotPresent"
161 command: ["/root/ovnkube.sh", "ovn-node"]
166 add: ["NET_ADMIN", "SYS_ADMIN", "SYS_PTRACE"]
169 terminationMessagePolicy: FallbackToLogsOnError
171 # for the iptables wrapper
175 - mountPath: /var/run/dbus/
176 name: host-var-run-dbus
178 - mountPath: /var/log/ovn-kubernetes/
179 name: host-var-log-ovnkube
180 - mountPath: /var/run/openvswitch/
181 name: host-var-run-ovs
182 - mountPath: /var/run/ovn/
183 name: host-var-run-ovs
184 # We mount our socket here
185 - mountPath: /var/run/ovn-kubernetes
186 name: host-var-run-ovn-kubernetes
187 # CNI related mounts which we take over
188 - mountPath: /opt/cni/bin
189 name: host-opt-cni-bin
190 - mountPath: /etc/cni/net.d
191 name: host-etc-cni-netd
192 - mountPath: /ovn-cert
202 - name: OVN_DAEMONSET_VERSION
204 - name: OVNKUBE_LOGLEVEL
216 - name: K8S_APISERVER
229 fieldPath: spec.nodeName
230 - name: OVN_GATEWAY_MODE
232 - name: OVN_GATEWAY_OPTS
234 - name: OVN_HYBRID_OVERLAY_ENABLE
236 - name: OVN_HYBRID_OVERLAY_NET_CIDR
238 - name: OVN_SSL_ENABLE
244 command: ["/root/ovnkube.sh", "cleanup-ovn-node"]
247 command: ["/usr/bin/ovn-kube-util", "readiness-probe", "-t", "ovnkube-node"]
248 initialDelaySeconds: 30
253 kubernetes.io/os: "linux"
259 - name: host-var-run-dbus
262 - name: host-var-log-ovs
264 path: /var/log/openvswitch
265 - name: host-var-log-ovnkube
267 path: /var/log/ovn-kubernetes
270 path: /run/openvswitch
271 - name: host-var-run-ovs
273 path: /var/run/openvswitch
274 - name: host-var-run-ovn-kubernetes
276 path: /var/run/ovn-kubernetes
280 - name: host-opt-cni-bin
283 - name: host-etc-cni-netd
286 - name: host-ovn-cert
289 type: DirectoryOrCreate
293 - name: host-config-openvswitch
295 path: /etc/origin/openvswitch