[ops][cinder][kolla-ansible] cinder-backup fails if source disk not in nova az
Adam Zheng
adam.zheng at colorado.edu
Fri Feb 5 17:53:32 UTC 2021
Hello,
I’ve been trying to get availability zones defined for volumes.
Everything works fine if I leave the zone at “nova”, all volume types work and backups/snapshots also work.
ie:
+------------------+----------------------------+------+---------+-------+----------------------------+
| Binary | Host | Zone | Status | State | Updated At |
+------------------+----------------------------+------+---------+-------+----------------------------+
| cinder-scheduler | cs-os-ctl-001 | nova | enabled | up | 2021-02-05T17:22:51.000000 |
| cinder-scheduler | cs-os-ctl-003 | nova | enabled | up | 2021-02-05T17:22:54.000000 |
| cinder-scheduler | cs-os-ctl-002 | nova | enabled | up | 2021-02-05T17:22:56.000000 |
| cinder-volume | cs-os-ctl-001 at rbd-ceph-gp2 | nova | enabled | up | 2021-02-05T17:22:56.000000 |
| cinder-volume | cs-os-ctl-001 at rbd-ceph-st1 | nova | enabled | up | 2021-02-05T17:22:54.000000 |
| cinder-volume | cs-os-ctl-002 at rbd-ceph-gp2 | nova | enabled | up | 2021-02-05T17:22:50.000000 |
| cinder-volume | cs-os-ctl-003 at rbd-ceph-gp2 | nova | enabled | up | 2021-02-05T17:22:55.000000 |
| cinder-volume | cs-os-ctl-002 at rbd-ceph-st1 | nova | enabled | up | 2021-02-05T17:22:57.000000 |
| cinder-volume | cs-os-ctl-003 at rbd-ceph-st1 | nova | enabled | up | 2021-02-05T17:22:54.000000 |
| cinder-backup | cs-os-ctl-002 | nova | enabled | up | 2021-02-05T17:22:56.000000 |
| cinder-backup | cs-os-ctl-001 | nova | enabled | up | 2021-02-05T17:22:53.000000 |
| cinder-backup | cs-os-ctl-003 | nova | enabled | up | 2021-02-05T17:22:58.000000 |
+------------------+----------------------------+------+---------+-------+----------------------------+
However, if I apply the following changes:
cinder-api.conf
[DEFAULT]
default_availability_zone = not-nova
default_volume_type = ceph-gp2
allow_availability_zone_fallback=True
cinder-volume.conf
[rbd-ceph-gp2]
<…>
backend_availability_zone = not-nova
<…>
I’ll get the following
+------------------+----------------------------+----------+---------+-------+----------------------------+
| Binary | Host | Zone | Status | State | Updated At |
+------------------+----------------------------+----------+---------+-------+----------------------------+
| cinder-scheduler | cs-os-ctl-001 | nova | enabled | up | 2021-02-05T17:22:51.000000 |
| cinder-scheduler | cs-os-ctl-003 | nova | enabled | up | 2021-02-05T17:22:54.000000 |
| cinder-scheduler | cs-os-ctl-002 | nova | enabled | up | 2021-02-05T17:22:56.000000 |
| cinder-volume | cs-os-ctl-001 at rbd-ceph-gp2 | not-nova | enabled | up | 2021-02-05T17:22:56.000000 |
| cinder-volume | cs-os-ctl-001 at rbd-ceph-st1 | nova | enabled | up | 2021-02-05T17:22:54.000000 |
| cinder-volume | cs-os-ctl-002 at rbd-ceph-gp2 | not-nova | enabled | up | 2021-02-05T17:22:50.000000 |
| cinder-volume | cs-os-ctl-003 at rbd-ceph-gp2 | not-nova | enabled | up | 2021-02-05T17:22:55.000000 |
| cinder-volume | cs-os-ctl-002 at rbd-ceph-st1 | nova | enabled | up | 2021-02-05T17:22:57.000000 |
| cinder-volume | cs-os-ctl-003 at rbd-ceph-st1 | nova | enabled | up | 2021-02-05T17:22:54.000000 |
| cinder-backup | cs-os-ctl-002 | nova | enabled | up | 2021-02-05T17:22:56.000000 |
| cinder-backup | cs-os-ctl-001 | nova | enabled | up | 2021-02-05T17:22:53.000000 |
| cinder-backup | cs-os-ctl-003 | nova | enabled | up | 2021-02-05T17:22:58.000000 |
+------------------+----------------------------+----------+---------+-------+----------------------------+
At this point, creating new volumes still work and go into the expected ceph pools.
However, backups no longer work for the cinder-volume that is not nova.
In the above example, it still works fine for volumes that that were created with type “ceph-gp2” in az “nova”.
Does not work for volumes that were created with type “ceph-st1” in az “not-nova”. It fails immediately and goes into error state with reason “Service not found for creating backup.”
I suspect I need to try to get another set of “cinder-backup” services running in the Zone “not-nova”, but cannot seem to figure out how.
I’ve scoured the docs on cinder.conf, and if I set default zones in cinder-backup (I’ve tried backend_availability_zone, default_availability_zone, and storage_availability_zone) I cannot seem to get backups working if the disk it’s backing up is not in az “nova”. The cinder-backup service in volume service list will always show “nova” no matter what I put there.
Any advice would be appreciated.
OpenStack Victoria deployed via kolla-ansible
Thanks!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-discuss/attachments/20210205/414da09d/attachment-0001.html>
More information about the openstack-discuss
mailing list