From f9ea23d940ec4ce35d503ac62f202daaa9db502d Mon Sep 17 00:00:00 2001 From: Piotr Kopec Date: Tue, 7 Apr 2020 14:17:56 +0200 Subject: [PATCH] nova-compute: add ndctl to expose NVDIMMs to guests `ndctl` is a utility for managing the nvdimm subsystem required by Nova for attaching PMEM(persistent memory) namespaces to guests [0]. [0]: https://docs.openstack.org/nova/latest/admin/virtual-persistent-memory.html Change-Id: I8ed1b6c1d0985b2a73206bd9249a5664cd80c912 Closes-Bug: #1870455 --- docker/nova/nova-compute/Dockerfile.j2 | 18 ++++++++++++++++++ ...ova-compute-add-ndctl-811f923d81bbd6ac.yaml | 5 +++++ 2 files changed, 23 insertions(+) create mode 100644 releasenotes/notes/nova-compute-add-ndctl-811f923d81bbd6ac.yaml diff --git a/docker/nova/nova-compute/Dockerfile.j2 b/docker/nova/nova-compute/Dockerfile.j2 index 36083fe4e8..71d68ef8ba 100644 --- a/docker/nova/nova-compute/Dockerfile.j2 +++ b/docker/nova/nova-compute/Dockerfile.j2 @@ -21,6 +21,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build 'e2fsprogs', 'genisoimage', 'iscsi-initiator-utils', + 'ndctl', 'nfs-utils', 'nvme-cli', 'openstack-nova-compute', @@ -72,6 +73,14 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build 'targetcli-fb', 'xfsprogs' ] %} + # FIXME(pkopec): since Ubuntu 19.04 'ndctl' package is available + # for other archs than 'x86_64 + {% if base_distro == 'debian' or + (base_distro == 'ubuntu' and base_arch == 'x86_64') %} + {% set nova_compute_packages = nova_compute_packages + [ + 'ndctl' + ] %} + {% endif %} {{ macros.install_packages(nova_compute_packages | customizable("packages")) }} @@ -89,6 +98,7 @@ RUN rm -f /etc/nova/nova-compute.conf 'genisoimage', 'iscsi-initiator-utils', 'libosinfo', + 'ndctl', 'nfs-utils', 'openvswitch', 'parted', @@ -147,6 +157,14 @@ RUN rm -f /etc/nova/nova-compute.conf 'qemu-efi' ] %} {% endif %} + # FIXME(pkopec): since Ubuntu 19.04 'ndctl' package is available + # for other archs than 'x86_64' + {% if base_distro == 'debian' or + (base_distro == 'ubuntu' and base_arch == 'x86_64') %} + {% set nova_compute_packages = nova_compute_packages + [ + 'ndctl' + ] %} + {% endif %} RUN mkdir -p /etc/ceph diff --git a/releasenotes/notes/nova-compute-add-ndctl-811f923d81bbd6ac.yaml b/releasenotes/notes/nova-compute-add-ndctl-811f923d81bbd6ac.yaml new file mode 100644 index 0000000000..f8b57ca060 --- /dev/null +++ b/releasenotes/notes/nova-compute-add-ndctl-811f923d81bbd6ac.yaml @@ -0,0 +1,5 @@ +--- +features: + - | + Adding `ndctl` package to nova-compute to expose NVDIMM namespaces + to guests. The package is needed to manage PMEM namespaces.