availability zone is not set for LVM-only cinder-volumes service configs

Bug #1791152 reported by Dmitrii Shcherbakov
22
This bug affects 4 people
Affects Status Importance Assigned to Milestone
OpenStack Cinder Charm
Triaged
Low
Unassigned

Bug Description

Currently the cinder charm deployed with "enabled-services=volume" purely for LVM usage purposes does not render a cinder.conf where storage_availability_zone is set. In multi-AZ deployments where rack failure domains need to be maintained this is quite important to have.

The use-case is local volumes for native replicated database storage while root disks are stored in ceph as opposed to having root disks and database storage on the same device.

LVM usage is not segregated into a separate storage backend charm - this has to be done in the cinder charm itself.

AZ information is exposed by Juju from the underlying provider.

Example cinder.conf keys:
https://docs.openstack.org/cinder/queens/configuration/block-storage/samples/cinder.conf.html

cinder-volume-lvm/0: storage_availability_zone = rack1
cinder-volume-lvm/1: storage_availability_zone = rack2
cinder-volume-lvm/2: storage_availability_zone = rack3

The target scenario is a cloud where cinder is used both with ceph-volume for Ceph and ceph-volume for LVM which is a combination of the two scenarios discussed here:
https://github.com/openstack/charm-cinder#separate-volume-units-for-scale-out-using-local-storage-and-iscsi

cat >cinder.yaml <<END
cinder:
    # for ceph we still need a volume service deployed
    enabled-services: "all" # equivalent to "api, scheduler, volume"
cinder-volume-lvm:
    enabled-services: volume
    # note that you can pre-create full-disk partitions in MAAS to
    # work around https://bugs.launchpad.net/curtin/+bug/1735839
    # /dev/disk/by-dname/<device-name-in-maas> are persistent symlinks - use them,
    # not /dev/<disk> entries
    block-device: /dev/disk/by-dname/local1-part0 /dev/disk/by-dname/local2-part0
    overwrite: true
END

# used for API and purposes
juju deploy --config=cinder.yaml cs:cinder cinder
# used for cinder-volume and LVM only
juju deploy --config=cinder.yaml cs:cinder cinder-volume-lvm
juju add-relation cinder percona-cluster
juju add-relation cinder rabbitmq-server # RPC for api, scheduler and cinder-volume
juju add-relation cinder keystone
juju add-relation cinder nova-cloud-controller
juju add-relation cinder-volume-lvm percona-cluster
# see https://docs.openstack.org/cinder/latest/contributor/rpc.html
juju add-relation cinder-volume-lvm rabbitmq-server # RPC

juju add-relation cinder cinder-ceph

# <ceph and relations here>

Tags: cpe-onsite
James Page (james-page)
Changed in charm-cinder:
status: New → Triaged
importance: Undecided → Low
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.