[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Cinder][Ceph] Migrating backend host

I am moving my cinder-volume service from one controller to another, and 
I'm trying to determine the correct means to update all existing 
volume's back-end host reference.  I now have two cinder volume services 
running in front of the same ceph cluster, and I would like to retire 
the old cinder-volume service.

For example, on my test cloud, "openstack volume service list":

| Binary           | Host                             | Zone | Status  | 
State | Updated At                 |
| cinder-scheduler | osdev-ctrl1     | nova | enabled | up    | 
2019-05-15T17:44:05.000000 |
| cinder-volume    | osdev-ctrl2 at rbd | nova | disabled | up    | 
2019-05-15T17:44:04.000000 |
| cinder-volume    | osdev-ctrl1 at rbd | nova | enabled | up    | 
2019-05-15T17:44:00.000000 |

Now, an existing volume has a reference to the disabled cinder-volume:
     "os-vol-host-attr:host          | osdev-ctrl2 at rbd#rbd"

but this needs to be changed to:
     "os-vol-host-attr:host          | osdev-ctrl1 at rbd#rbd"

As both controllers are members of the same ceph cluster, an "openstack 
volume migrate" is not appropriate.  If it is appropriate, my testing 
has shown that it errors out and deletes the source volume from ceph.

I can alter this field manually in the cinder database,  but in 
following the "don't mess with the data model" mantra, is there a means 
to do this from the cli?


Openstack release: Queens.
Distro: Redhat (Centos) 7.6

Gary Molenkamp			Computer Science/Science Technology Services
Systems Administrator		University of Western Ontario
molenkam at       
(519) 661-2111 x86882		(519) 661-3566