summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--docker/nova/nova-compute/Dockerfile.j220
-rw-r--r--releasenotes/notes/nova_compute_daxio-b8655d31df15139a.yaml7
2 files changed, 25 insertions, 2 deletions
diff --git a/docker/nova/nova-compute/Dockerfile.j2 b/docker/nova/nova-compute/Dockerfile.j2
index 19a1f8514..efdb75aad 100644
--- a/docker/nova/nova-compute/Dockerfile.j2
+++ b/docker/nova/nova-compute/Dockerfile.j2
@@ -39,6 +39,13 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
] %}
{% endif %}
+ # NOTE(hrw): daxio is part of pmdk which is x86-64 only in CentOS 8
+ {% if base_arch == 'x86_64' %}
+ {% set nova_compute_packages = nova_compute_packages + [
+ 'daxio'
+ ] %}
+ {% endif %}
+
{{ macros.install_packages(nova_compute_packages | customizable("packages")) }}
{% elif base_package_type == 'deb' %}
@@ -55,6 +62,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
'openvswitch-switch',
'open-iscsi',
'parted',
+ 'pmdk-tools',
'python3-cephfs',
'python3-guestfs',
'python3-ironicclient',
@@ -71,7 +79,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% if base_distro == 'debian' or
(base_distro == 'ubuntu' and base_arch == 'x86_64') %}
{% set nova_compute_packages = nova_compute_packages + [
- 'ndctl'
+ 'ndctl',
] %}
{% endif %}
@@ -122,6 +130,13 @@ RUN rm -f /etc/nova/nova-compute.conf
] %}
{% endif %}
+ # NOTE(hrw): daxio is part of pmdk which is x86-64 only in CentOS 8
+ {% if base_arch == 'x86_64' %}
+ {% set nova_compute_packages = nova_compute_packages + [
+ 'daxio'
+ ] %}
+ {% endif %}
+
{% elif base_package_type == 'deb' %}
{% set nova_compute_packages = [
@@ -134,6 +149,7 @@ RUN rm -f /etc/nova/nova-compute.conf
'nfs-common',
'open-iscsi',
'parted',
+ 'pmdk-tools',
'python3-cephfs',
'python3-guestfs',
'python3-libvirt',
@@ -156,7 +172,7 @@ RUN rm -f /etc/nova/nova-compute.conf
{% if base_distro == 'debian' or
(base_distro == 'ubuntu' and base_arch == 'x86_64') %}
{% set nova_compute_packages = nova_compute_packages + [
- 'ndctl'
+ 'ndctl',
] %}
{% endif %}
diff --git a/releasenotes/notes/nova_compute_daxio-b8655d31df15139a.yaml b/releasenotes/notes/nova_compute_daxio-b8655d31df15139a.yaml
new file mode 100644
index 000000000..ae606659e
--- /dev/null
+++ b/releasenotes/notes/nova_compute_daxio-b8655d31df15139a.yaml
@@ -0,0 +1,7 @@
+---
+fixes:
+ - |
+ nova-compute uses daxio to cleanup vpmem backend device on instance
+ delete. If the daxio binary is missing in the nova-compute container
+ instance delete fails. daxio is provided in centos via daxio, in
+ ubuntu via the pmdk-tools package.