Create custom directory for sockets
Co-Authored-By: Oleg Bondarev <obondarev@mirantis.com>
Related-PROD: https://mirantis.jira.com/browse/PROD-14413
Change-Id: Ied16e9beeea71a26ee23ee789a996f584a4dd9a4
diff --git a/nova/compute.sls b/nova/compute.sls
index 07fdfe2..61f6d4f 100644
--- a/nova/compute.sls
+++ b/nova/compute.sls
@@ -331,4 +331,16 @@
{# end temporary hack #}
+{%- if compute.network.dpdk.enabled %}
+/etc/tmpfiles.d/{{ compute.network.openvswitch.vhost_socket_dir.name }}.conf:
+ file.managed:
+ - contents: 'd {{ compute.network.openvswitch.vhost_socket_dir.path }} 0755 libvirt-qemu kvm'
+ - require:
+ - pkg: nova_compute_packages
+
+nova_update_tmp_files_{{ compute.network.openvswitch.vhost_socket_dir.name }}:
+ cmd.run:
+ - name: 'systemd-tmpfiles --create'
+{%- endif %}
+
{%- endif %}
diff --git a/nova/map.jinja b/nova/map.jinja
index d8610f6..c645e13 100644
--- a/nova/map.jinja
+++ b/nova/map.jinja
@@ -33,7 +33,6 @@
},
}, merge=pillar.nova.get('controller', {})) %}
-
{% set client = salt['grains.filter_by']({
'Debian': {
'pkgs': ['python-novaclient']
@@ -43,6 +42,21 @@
},
}, merge=pillar.nova.get('client', {})) %}
+{% set compute_network = salt['grains.filter_by']({
+ 'default': {
+ 'dpdk': {
+ 'enabled': false,
+ },
+ 'openvswitch': {
+ 'vhost_socket_dir': {
+ 'name': 'openvswitch-vhost',
+ 'path': '/run/openvswitch-vhost',
+ },
+ },
+ 'region': 'RegionOne',
+ },
+}, merge=salt['pillar.get']('linux:network'), base='default') %}
+
{%- load_yaml as compute_defaults %}
Debian:
pkgs:
@@ -74,8 +88,7 @@
aggregates: []
identity:
region: RegionOne
- network:
- region: RegionOne
+ network: {{ compute_network }}
heal_instance_info_cache_interval: '60'
RedHat:
pkgs:
@@ -98,8 +111,7 @@
availability_zone:
identity:
region: RegionOne
- network:
- region: RegionOne
+ network: {{ compute_network }}
heal_instance_info_cache_interval: '60'
{%- endload %}