charm-nova-compute/hooks
Rodrigo Barbieri 8c3549d828 [v2] Fix migration across nova-compute apps using ceph
This change reworks previous changes [1] and [2] that had
been respectively reverted and abandoned.

When using the config libvirt-image-backend=rbd, VMs
created from image have their disk data stored in ceph
instead of the compute node itself.

When performing live-migrations, both nodes need to
access the same ceph credentials to access the VM's
disk in ceph, but this is currently not possible
if the nodes involved pertain to different
nova-compute charm apps.

This patch changes app name sent to ceph to
'nova-compute-ceph-auth-c91ce26f', a unique name common to
all nova-compute apps, allowing all nova-compute apps to
use the same ceph auth.

This change also ensures newly deployed nodes install
the old credentials first on ceph-joined hook,
and then supercedes it with the new credentials
on ceph-changed hook, therefore also retaining
the old credentials.

[1] https://review.opendev.org/889642
[2] https://review.opendev.org/896155

Closes-bug: #2028559
Related-bug: #2037003

Func-Test-Pr: https://github.com/openstack-charmers/zaza-openstack-tests/pull/1183

Change-Id: I1ae12d787a1f8e7761ca06b5a80049c1c62e9e90
(cherry picked from commit 650f3a5d51)
(cherry picked from commit 28233f9a94)
(cherry picked from commit ecaf8010fc)
2024-02-06 12:38:03 -03:00
..
charmhelpers Charmhelpers sync stable/zed 2024-02-06 12:36:58 -03:00
__init__.py Re-license charm as Apache-2.0 2016-07-03 16:37:37 +00:00
amqp-relation-broken Add generic relation broken hook. 2013-08-20 12:10:36 -07:00
amqp-relation-changed Update symlinks. 2013-08-01 16:34:15 -07:00
amqp-relation-departed added amqp relation departed 2014-01-30 12:46:46 +01:00
amqp-relation-joined Update symlinks. 2013-08-01 16:34:15 -07:00
ceph-access-relation-changed Fix support for cinder ceph rbd in Ocata 2017-03-09 12:51:25 +00:00
ceph-access-relation-joined Add LXD support for ceph-access relation 2017-04-27 09:40:01 +01:00
ceph-relation-broken Add generic relation broken hook. 2013-08-20 12:10:36 -07:00
ceph-relation-changed Update symlinks. 2013-08-01 16:34:15 -07:00
ceph-relation-joined Update symlinks. 2013-08-01 16:34:15 -07:00
cloud-compute-relation-changed Update symlinks. 2013-08-01 16:34:15 -07:00
cloud-compute-relation-joined Update symlinks. 2013-08-01 16:34:15 -07:00
cloud-credentials-relation-changed Retrieve cloud credentials directly from keystone 2018-06-18 08:29:28 +00:00
cloud-credentials-relation-joined Retrieve cloud credentials directly from keystone 2018-06-18 08:29:28 +00:00
compute-peer-relation-joined [bradm] initial nrpe checks 2014-10-29 22:30:36 -05:00
config-changed Update symlinks. 2013-08-01 16:34:15 -07:00
ephemeral-backend-relation-broken Add ability to provide another ephemeral storage for nova-compute 2016-06-17 23:44:45 +03:00
ephemeral-backend-relation-changed Add ability to provide another ephemeral storage for nova-compute 2016-06-17 23:44:45 +03:00
ephemeral-device-storage-attached Add support for instance storage encryption 2018-05-15 08:27:10 +01:00
ephemeral-device-storage-detached Add support for instance storage encryption 2018-05-15 08:27:10 +01:00
image-service-relation-broken Add generic relation broken hook. 2013-08-20 12:10:36 -07:00
image-service-relation-changed Update symlinks. 2013-08-01 16:34:15 -07:00
install Update pre-install hooks to fail on error 2019-02-08 15:56:19 -06:00
install.real Ensure python2 is installed before hook execution 2015-09-22 14:53:11 +01:00
ironic-api-relation-changed Add Ironic virt type 2020-09-21 12:12:13 +00:00
lxd-relation-changed Ensure all settings provided on lxd relation before configuring 2015-09-22 15:22:50 +01:00
lxd-relation-joined Add missing hook 2015-07-23 22:30:01 -04:00
neutron-plugin-relation-changed [bradm] initial nrpe checks 2014-10-29 22:30:36 -05:00
neutron-plugin-relation-departed [bradm] initial nrpe checks 2014-10-29 22:30:36 -05:00
neutron-plugin-relation-joined [bradm] initial nrpe checks 2014-10-29 22:30:36 -05:00
nova-ceilometer-relation-changed Add new locally scoped relation and context updates for nova-ceilometer 2013-11-29 15:35:28 +00:00
nova-ceilometer-relation-joined Add new locally scoped relation and context updates for nova-ceilometer 2013-11-29 15:35:28 +00:00
nova-vgpu-relation-changed Add nova-vgpu relation 2022-02-17 15:34:22 +01:00
nova-vgpu-relation-joined Add nova-vgpu relation 2022-02-17 15:34:22 +01:00
nova_compute_context.py [v2] Fix migration across nova-compute apps using ceph 2024-02-06 12:38:03 -03:00
nova_compute_hooks.py [v2] Fix migration across nova-compute apps using ceph 2024-02-06 12:38:03 -03:00
nova_compute_utils.py Merge "Refactor unit tests to avoid leaks of mocks." into stable/zed 2023-06-01 12:39:48 +00:00
nrpe-external-master-relation-changed [bradm] initial nrpe checks 2014-10-29 22:30:36 -05:00
nrpe-external-master-relation-joined Update of all Havana / Saucy / python-redux work: 2013-10-15 13:04:13 +01:00
post-series-upgrade Series Upgrade 2018-09-18 10:01:56 +00:00
pre-series-upgrade Series Upgrade 2018-09-18 10:01:56 +00:00
secrets-storage-relation-broken Add support for instance storage encryption 2018-05-15 08:27:10 +01:00
secrets-storage-relation-changed Add support for instance storage encryption 2018-05-15 08:27:10 +01:00
secrets-storage-relation-departed Add support for instance storage encryption 2018-05-15 08:27:10 +01:00
secrets-storage-relation-joined Add support for instance storage encryption 2018-05-15 08:27:10 +01:00
shared-db-relation-broken Add generic relation broken hook. 2013-08-20 12:10:36 -07:00
shared-db-relation-changed Update symlinks. 2013-08-01 16:34:15 -07:00
shared-db-relation-joined Update symlinks. 2013-08-01 16:34:15 -07:00
start [bradm] initial nrpe checks 2014-10-29 22:30:36 -05:00
stop [bradm] initial nrpe checks 2014-10-29 22:30:36 -05:00
storage.bootstrap Add support for instance storage encryption 2018-05-15 08:27:10 +01:00
storage.real Add support for instance storage encryption 2018-05-15 08:27:10 +01:00
update-status Refactor to assess status after every hook execution, add update-status hook 2015-10-07 16:48:03 -07:00
upgrade-charm Ensure that all packaged python deps are installed on upgrade 2019-11-29 15:25:26 +00:00
upgrade-charm.real Ensure that all packaged python deps are installed on upgrade 2019-11-29 15:25:26 +00:00