@Tony
Yes. You are right. I am sorry that I make a wrong file diff. I hide my last comment, and paste a correct one.
I meet this issue too. After applied following patch, it works. I think in the ubuntu, the libvirt (1.2.12, from cloud-archive) doesn't support numa.
diff --git a/nova/virt/libvirt/driver.py b/nova/virt/libvirt/driver.py
index 98a4537..4d573e1 100644
--- a/nova/virt/libvirt/driver.py
+++ b/nova/virt/libvirt/driver.py
@@ -355,7 +355,7 @@ REQ_HYPERVISOR_DISCARD = "QEMU"
# to pin guest nodes to host nodes, so mandate that. Without
# this the scheduler cannot make guaranteed decisions, as the
# guest placement may not match what was requested
-MIN_LIBVIRT_NUMA_VERSION = (1, 2, 7)
+MIN_LIBVIRT_NUMA_VERSION = (1, 2, 99)
# While earlier versions could support hugepage backed
# guests, not until 1.2.8 was there the ability to request
# a particular huge page size. Without this the scheduler
@Tony
Yes. You are right. I am sorry that I make a wrong file diff. I hide my last comment, and paste a correct one.
I meet this issue too. After applied following patch, it works. I think in the ubuntu, the libvirt (1.2.12, from cloud-archive) doesn't support numa.
diff --git a/nova/ virt/libvirt/ driver. py b/nova/ virt/libvirt/ driver. py virt/libvirt/ driver. py virt/libvirt/ driver. py DISCARD = "QEMU" NUMA_VERSION = (1, 2, 7) NUMA_VERSION = (1, 2, 99)
index 98a4537..4d573e1 100644
--- a/nova/
+++ b/nova/
@@ -355,7 +355,7 @@ REQ_HYPERVISOR_
# to pin guest nodes to host nodes, so mandate that. Without
# this the scheduler cannot make guaranteed decisions, as the
# guest placement may not match what was requested
-MIN_LIBVIRT_
+MIN_LIBVIRT_
# While earlier versions could support hugepage backed
# guests, not until 1.2.8 was there the ability to request
# a particular huge page size. Without this the scheduler