openstack-helm/nova/templates/daemonset-libvirt.yaml
Alan Meadows db0db427ee Critical fixes required for 0.1.0 tagging
* Add imagePullPolicy to ceph with default

* Add imagePullPolicy to mariadb with default

* Add missing imagePullPolicies to nova with defaults

* Remove malfunctioning daemonset dependency from nova

* Add missing neutron endpoint definition to nova values

* Force v4 networking in ceph.  Repeated bootstrapping
  is unreliable without this.

* Update cinder dependencies based on testing

* Optonal Horizon NodePort

* Revert iptables stub for nova-api-osapi because
  we lack permississions to overwrite /sbin/iptables. We
  will continue to run in a privileged security context
  until we have a working solution.
2017-01-12 14:51:36 -08:00

135 lines
4.1 KiB
YAML

apiVersion: extensions/v1beta1
kind: DaemonSet
metadata:
name: nova-libvirt
spec:
template:
metadata:
labels:
app: nova-libvirt
annotations:
configmap-bin-hash: {{ tuple "configmap-bin.yaml" . | include "hash" }}
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "hash" }}
pod.beta.kubernetes.io/init-containers: '[
{
"name": "init",
"image": "{{ .Values.image.entrypoint }}",
"imagePullPolicy": "{{ .Values.image.pull_policy }}",
"env": [
{
"name": "NAMESPACE",
"value": "{{ .Release.Namespace }}"
},
{
"name": "INTERFACE_NAME",
"value": "eth0"
},
{
"name": "DEPENDENCY_SERVICE",
"value": "{{ include "joinListWithColon" .Values.dependencies.libvirt.service }}"
},
{
"name": "DEPENDENCY_JOBS",
"value": "{{ include "joinListWithColon" .Values.dependencies.libvirt.jobs }}"
},
{
"name": "COMMAND",
"value": "echo done"
}
]
}
]'
spec:
nodeSelector:
{{ .Values.labels.compute_node_selector_key }}: {{ .Values.labels.compute_node_selector_value }}
securityContext:
runAsUser: 0
hostNetwork: true
dnsPolicy: ClusterFirst
containers:
- name: nova-libvirt
image: {{ .Values.image.libvirt }}
imagePullPolicy: {{ .Values.image.pull_policy }}
securityContext:
privileged: true
command:
- bash
- /tmp/libvirt.sh
volumeMounts:
- name: libvirtdconf
mountPath: /etc/libvirt/libvirtd.conf
subPath: libvirtd.conf
- name: libvirtsh
mountPath: /tmp/libvirt.sh
subPath: libvirt.sh
- mountPath: /lib/modules
name: libmodules
readOnly: true
- mountPath: /var/lib/nova
name: varlibnova
- mountPath: /var/lib/libvirt
name: varliblibvirt
- mountPath: /run
name: run
- mountPath: /sys/fs/cgroup
name: cgroup
- mountPath: /etc/resolv.conf
name: resolvconf
subPath: resolv.conf
{{- if .Values.ceph.enabled }}
- name: cephconf
mountPath: /etc/ceph/ceph.conf
subPath: ceph.conf
- name: cephclientcinderkeyring
mountPath: /etc/ceph/ceph.client.{{ .Values.ceph.cinder_user }}.keyring
subPath: ceph.client.{{ .Values.ceph.cinder_user }}.keyring
{{- end }}
volumes:
- name: libvirtdconf
configMap:
name: nova-etc
items:
- key: libvirtd.conf
path: libvirtd.conf
- name: libvirtsh
configMap:
name: nova-bin
items:
- key: libvirt.sh
path: libvirt.sh
- name: resolvconf
configMap:
name: nova-etc
items:
- key: resolv.conf
path: resolv.conf
- name: libmodules
hostPath:
path: /lib/modules
- name: varlibnova
hostPath:
path: /var/lib/nova
- name: varliblibvirt
hostPath:
path: /var/lib/libvirt
- name: run
hostPath:
path: /run
- name: cgroup
hostPath:
path: /sys/fs/cgroup
{{- if .Values.ceph.enabled }}
- name: cephconf
configMap:
name: nova-etc
items:
- key: ceph.conf
path: ceph.conf
- name: cephclientcinderkeyring
configMap:
name: nova-etc
items:
- key: ceph.client.cinder.keyring.yaml
path: ceph.client.cinder.keyring.yaml
{{- end }}