use "cluster" config instead of same "host" config value
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Cinder Charm |
In Progress
|
Undecided
|
Unassigned |
Bug Description
For stateless backends and/or to enable Active-active HA, it is ideal to cluster cinder-volume services as one single service.
This is possible to be accomplished by:
a) using the same "host = <name>" config value on all cinder-volume nodes
b) using the "cluster" config
However, approach (a) has drawbacks [1] and is not recommended by the upstream cinder community [0][1], while approach (b) was designed [1][2] to be used for this purpose.
For testing the impact of changing this for the cinder charm, I performed the following tests:
As of today, host = cinder, before changing:
1) create an empty vol vol1
2) create snapshot of the empty vol1 snap1
3) created a vol from image cirros named cirros_vol1
4) created a snapshot from cirros_vol1 named cirros_vol1_snap
5) created another vol from image cirros named cirros_vol2
6) created a VM booting from cirros_vol2 named VM1
7) listed services (1 service cinder@cinder-ceph)
8) tested VM1 is writeable
Then, I proceeded to edit all cinder.conf of the 3 cinder-volume nodes, commenting out #host = cinder and adding cluster = cinder. Stopped jujud processes on all 3 nodes as well so the file is not overwritten. Restarted all 3 cinder-volume services at the same time.
Tests after change:
1) created an empty vol vol2
- success creating
- host field is cinder@
2) created another snapshot of vol1
- success
3) created a VM booting from cirros_vol1 named VM2
- took a long time, but success
4) VM2 is writeable
5) VM1 is still writeable
6) listed services (3 separated services with different names, cinder@cinder-ceph marked as down)
7) rebooted VM1
- success, data still there, and still writeable
8) Deleted VM1
- success, cirros_vol1 detached
9) Created another snapshot of cirros_vol1 named cirros_vol1_snap2
- success
10) Attached cirros_vol1 to VM2
- success, mounted volume, data is there and writeable
I did not see any noticeable impact transitioning from host to cluster config other than the old service appearing as down (ideally it should be removed).
[0] https:/
[1] https:/
[2] https:/
Changed in charm-cinder: | |
milestone: | none → 21.10 |
tags: | added: sts |
Changed in charm-cinder: | |
status: | Fix Committed → Fix Released |
Fix proposed to branch: master /review. opendev. org/c/openstack /charm- cinder/ +/811472
Review: https:/