Wednesday, 2024-04-17

opendevreviewGoutham Pacha Ravi proposed openstack/manila master: RBAC: Enable "new" defaults and scope checks  https://review.opendev.org/c/openstack/manila/+/91602500:16
carthacagouthamr: thanks for updating the milestones. There is a typo in the name though: https://launchpad.net/manila/+milestone/dalmation-1 should be 'dalmatian-1' ;)  (same for '-2' and '-rc1')07:15
gouthamrgah thanks for noticing this carthaca; fixed them08:15
opendevreviewMaurice Escher proposed openstack/manila master: NetApp cDOT only modify qos policy if troughput changed  https://review.opendev.org/c/openstack/manila/+/91606108:35
opendevreviewkiran pawar proposed openstack/manila master: Add share type encryption  https://review.opendev.org/c/openstack/manila/+/90997716:45
opendevreviewkiran pawar proposed openstack/manila master: Use encryption key id during share create  https://review.opendev.org/c/openstack/manila/+/91108916:45
gansogouthamr: ping17:29
gouthamrhey ganso 17:36
gansogouthamr: hey I am wondering whether you ever faced the situation in production where you have 3 manila-share services that have the same backend configured pointing to the same storage box (like a ceph cluster or netapp box) but you face the situation where one manila-share host goes down and the shares that it is "owning" become unoperable (cannot extend, add/remove access rules, delete, etc) despite the fact that the other17:38
ganso2 manila-share hosts could perfectly perform operations on the shares that were registered in the database as being owned by the host that went down17:39
gansogouthamr: cinder solves this with a cluster config option which makes cinder aware that the hosts are a cluster pointing to the same box and any of them can service requests and creates like a cluster@backend#pool entry instead of hostA@backend#pool, hostB@backend#pool etc17:40
gouthamrganso: yes; there's no similar concept here.. but, does the host string not match right now? 17:40
gansowhat do you mean by matching? were they supposed to match?17:41
gouthamrganso: so yes; this kind of HA with the manila-share service really is only possible if the host and backend names match exactly - which is terrible in terms of observability, but will solve the problem of an active service taking over the load from a backend that's down - i.e., manila will consider all matching hosts as the same host17:42
gouthamrganso: curious, what backend your environment using? 17:43
gansogouthamr: oh yea so assuming you configure the host config option in each manila-share service to the same name, you achieve that behavior. But if you don't, you end up with the behavior I previously described. So setting the host config to the same value across nodes acceptable? In cinder this can potentially create side effects and is not recommended17:44
gansogouthamr: I am using NetApp17:44
gouthamrganso: yes; that'd be it.. 17:44
gansogouthamr: I am a bit worried that internally either Manila or NetApp could face issues with such configs. Has this scenario been tested in production for the NetApp box, such as for replication, consistency groups, migrations, etc?17:45
gouthamrganso: i ask because backend driver maintainers aren't testing this; and there may be race conditions - for example, the NetApp backend has some periodic tasks - if multiple copies of these tasks run, i wonder if there's good error handling to prevent something adverse from happening17:45
gansogouthamr: yea exactly. Sounds like some unpredictable things could happen17:46
gansogouthamr: Given I am completely unaware of whether this is considered safe, I am wondering whether this has ever worked safely in production17:46
gouthamrganso: i've heard of some users in the wild; but, with the number of backends we have, and their various quirks, we'll certainly have issues.. there's no tests to validate this in the gate for instance17:47
gansogouthamr: it kinda sucks to transition to or back that host-same-name setup because once you have resources created you cannot transition between anymore17:48
gansowell, cannot *easily* transition17:49
gansogouthamr: but yea, too bad driver maintainers are not testing this17:50
gansogouthamr: another downside specific to DHSS=True is the insane amount of share servers... every time a new share lands on a different host, even in the same share network, a new share server is created, 2 more ports are used... scalability seems pretty bad just as a consequence of this17:52
gouthamrganso: you can fix up the host if want; "manila-manage share update-host"17:54
gansogouthamr: I suspect that even if we had an equivalent to Cinder's cluster config in manila, we will still not have gate testing nor vendor validation and it will be everyone's using at their own risk17:54
gansogouthamr: in case of a node failure, yes, but for preventing creation of share servers it is not scalable. We would need to customize the scheduling to prefer the same host17:55
gouthamrganso: true; we could make it _easier_ to test by making devstack setup more capable - i.e., if you're running in multinode (or even running multiple services in teh same node), devstack can set all this up  17:56
gouthamrganso: i wonder if what carthaca brought up at PTG would be relevant to you17:57
gouthamrganso: https://etherpad.opendev.org/p/dalmatian-ptg-manila-sap17:57
gouthamrganso: he's proposing enhancements to the PoolWeigher to consider cases where you want to consider the share network when stacking/spreading shares across share servers17:58
gouthamrganso: in your case of course, that solution has to be coupled with manila realizing that all those hosts are the same17:59
gouthamrthe netapp driver could be smarter about this too18:00
gouthamr(i think)18:00
gansogouthamr: yes! I have just been thinking of tuning the scheduler to mitigate the problem of creating share servers uneceessarily, like, make it prefer the same host18:00
gansobut in carthaca's proposal it is optimizing it further at the share network level as well18:01
gansogouthamr: hmmm I am not sure the NetAPp driver could do anything about it because once the driver runniing on host A accepts the request to create the share, it owns it, I am not sure you can return a hostname info like "cluster@netapp#pool"18:02
gouthamrganso: yeah, true... i was thinking the driver can discern the fact its the same ONTAP, and the same aggr, and so on and hence reuse the server when the share manager asks it for a share server.. but, we record the host info in the share server as well.. so it'll get confusing real fast18:04
tspyderboy[m]gouthamr:... (full message at <https://matrix.org/_matrix/media/v3/download/matrix.org/TnRkfALnMvDgRDxZOLrRMwlv>)18:10
gansogouthamr: right, I forgot the driver has a say on whether a share_server is needed or not, but if I recall correctly manila still manages the host#backend value 18:17
gansogouthamr: thanks for all the tips!18:18
gansoI gotta go now18:18
gouthamrganso: yes! thanks for checking in here; and let me know what direction you take with this.. it'll likely be of interest to other operators, and a good gap to close 18:18
gouthamrtspyderboy[m]: o/ ack18:19
opendevreviewElvis Kobi Acheampong proposed openstack/manila master: Adds "usedforsecurity=False" to veritas drivers  https://review.opendev.org/c/openstack/manila/+/91440018:36
opendevreviewSkylar Markegard proposed openstack/manila master: Enable Bandit testing in Manila  https://review.opendev.org/c/openstack/manila/+/90819118:48
opendevreviewGoutham Pacha Ravi proposed openstack/devstack-plugin-ceph master: Standalone nfs-ganesha with cephadm deployment  https://review.opendev.org/c/openstack/devstack-plugin-ceph/+/91521223:10

Generated by irclog2html.py 2.17.3 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!