From 9642cd7ae24f0ba79ce5647c709b35ae8f06a285 Mon Sep 17 00:00:00 2001 From: Jasper Ras Date: Sun, 19 Jan 2025 21:14:51 +0100 Subject: vault backup: 2025-01-19 21:14:51 --- 3 Resources/Openstack/Creating ports.md | 4 ++++ 3 Resources/Openstack/Libvirt pmsuspended.md | 6 ++++++ 3 Resources/Openstack/Nova live migration volume.md | 18 ++++++++++++++++++ 3 files changed, 28 insertions(+) create mode 100644 3 Resources/Openstack/Creating ports.md create mode 100644 3 Resources/Openstack/Libvirt pmsuspended.md create mode 100644 3 Resources/Openstack/Nova live migration volume.md (limited to '3 Resources/Openstack') diff --git a/3 Resources/Openstack/Creating ports.md b/3 Resources/Openstack/Creating ports.md new file mode 100644 index 0000000..90223bf --- /dev/null +++ b/3 Resources/Openstack/Creating ports.md @@ -0,0 +1,4 @@ +#openstack #port + +--- +Creating a port with a fixed IP requires admin privileges. It is not sufficient to have an RBAC policy that shares the network with a tenant. \ No newline at end of file diff --git a/3 Resources/Openstack/Libvirt pmsuspended.md b/3 Resources/Openstack/Libvirt pmsuspended.md new file mode 100644 index 0000000..4749c76 --- /dev/null +++ b/3 Resources/Openstack/Libvirt pmsuspended.md @@ -0,0 +1,6 @@ +#openstack #libvirt + +--- +Encountered a guest running some desktop image that sleeps and puts libvirt domain in state pmsuspend. + +Openstack does not sync power states in this case so the nova instance is still ACTIVE. \ No newline at end of file diff --git a/3 Resources/Openstack/Nova live migration volume.md b/3 Resources/Openstack/Nova live migration volume.md new file mode 100644 index 0000000..8b37f67 --- /dev/null +++ b/3 Resources/Openstack/Nova live migration volume.md @@ -0,0 +1,18 @@ +#openstack #nova #live-migration #volume + + +--- +Table cinder.volume_attachment, contains which volume_driver. target_lun `()` here maps to `dm-`. +Luns are not unique across pod, each node has a target_lun 2 and thus dm-2 connected. + +os-brick is responsible for connecting volumes; +if connection_info it receives contains target_iqns, target_luns etc it will not do a scan and just returns those. +`@see os_brick/initiator/connectors/iscsi.py` + +`nova/virt/libvirt/driver.py -> def _connect_volume` does attaching of volumes using os-brick. Driver exposes some methods that do this and are called elsewhere: `swap_volume`, `attach_volume`, `pre_live_migration`. + +`pre_live_migration` is called by `nova/compute/manager.py` + +So in `nova/compute/manager.py` there is a function that does the rollback, and it rollbacks bdm's and deletes volume attachments before it calls `rollback_live_migration_at_destination` which in turn makes an attempt at deleting the actual volume attachment to the node. But at that point all objects have been rollbacked already so it has invalid information. + +If the code in new versions of openstack isn't any different i'll just make a bug report and see what they come up with. -- cgit v1.2.3