Thursday, 2022-02-17

opendevreviewMerged openstack/os-brick master: nvmeof connector check controller already connected  https://review.opendev.org/c/openstack/os-brick/+/81171800:28
opendevreviewMerged openstack/cinder master: PureStorage FlashArray: Add active/active replication  https://review.opendev.org/c/openstack/cinder/+/82947300:51
opendevreviewBrian Rosmaita proposed openstack/python-cinderclient master: Update requirements minima for Yoga release  https://review.opendev.org/c/openstack/python-cinderclient/+/82962503:09
opendevreviewSimon Dodsley proposed openstack/cinder stable/xena: PureStorage FlashArray: Add active/active replication  https://review.opendev.org/c/openstack/cinder/+/82963003:58
*** akekane_ is now known as abhishekk06:02
opendevreviewHarsh Ailani proposed openstack/cinder master: [SVf]:Fix multiple lsvdisk calls for GMCV create volume operation.  https://review.opendev.org/c/openstack/cinder/+/82911006:30
opendevreviewTushar Trambak Gite proposed openstack/cinder master: Reset state robustification for volume os-reset_status  https://review.opendev.org/c/openstack/cinder/+/77398508:58
opendevreviewTushar Trambak Gite proposed openstack/cinder master: Reset state robustification for snapshot os-reset_status  https://review.opendev.org/c/openstack/cinder/+/80403509:04
opendevreviewTushar Trambak Gite proposed openstack/cinder master: Reset state robustification for backup os-reset_status  https://review.opendev.org/c/openstack/cinder/+/77819309:04
opendevreviewTushar Trambak Gite proposed openstack/cinder master: Reset state robustification for group-snapshot os-reset_status  https://review.opendev.org/c/openstack/cinder/+/80475709:04
opendevreviewTushar Trambak Gite proposed openstack/cinder master: Reset state robustification for group os-reset_status  https://review.opendev.org/c/openstack/cinder/+/80473509:04
opendevreviewyuval proposed openstack/os-brick master: Failure to generate hostnqn in case missing "show-hostnqn" sub-command  https://review.opendev.org/c/openstack/os-brick/+/82365409:07
opendevreviewGorka Eguileor proposed openstack/cinder master: Fix replication in A/A  https://review.opendev.org/c/openstack/cinder/+/82966409:41
opendevreviewGorka Eguileor proposed openstack/cinder master: Pure: Fix replication in A/A  https://review.opendev.org/c/openstack/cinder/+/82966409:41
opendevreviewRajat Dhasmana proposed openstack/python-cinderclient master: Add volume reimage command  https://review.opendev.org/c/openstack/python-cinderclient/+/60689109:58
opendevreviewRajat Dhasmana proposed openstack/cinder master: Support volume re-image  https://review.opendev.org/c/openstack/cinder/+/60634610:11
opendevreviewRajat Dhasmana proposed openstack/cinder master: Support volume re-image  https://review.opendev.org/c/openstack/cinder/+/60634610:54
*** dviroel|out is now known as dviroel11:00
opendevreviewTushar Trambak Gite proposed openstack/cinder master: Reset state robustification for snapshot os-reset_status  https://review.opendev.org/c/openstack/cinder/+/80403511:56
raghavendrathi geguileo: are you around ?12:05
geguileoraghavendrat: yup12:05
raghavendratif you get time, it would be great if you can have a look at https://review.opendev.org/c/openstack/cinder/+/82491112:08
raghavendratthanks12:08
sean-k-mooneyo/ i have a design issue with os-brick that i want to highlight to folks.12:11
sean-k-mooneyhttps://github.com/openstack/os-brick/blob/master/os_brick/executor.py#L69 is highly problematic12:11
sean-k-mooneyos-brick is loaded into nova as a lib which means its also eventlet monkey patched12:12
sean-k-mooneyso those thread are actully green threads12:12
sean-k-mooneywhich means if any tread is started in os-brick and it does work and does not yeild it can block the nova-compute agent12:12
sean-k-mooneyso we really need to figure out how to remove the use of threading in os-brick or actully use native threads.12:13
sean-k-mooneyos-brick really should not be running any long runing agents in teh background anyway but this current design pattern is not something we should continue doing IMO12:14
geguileosean-k-mooney: currently only 1 connector uses it, the iSCSI, and only when doing multipathing13:00
geguileosean-k-mooney: it's to do the N connections in parallel, since they are usually slow processes13:01
sean-k-mooneynot quite13:03
sean-k-mooneythe way the lightos plugin is being propsoed to integrate with nova would use it13:04
sean-k-mooneyform nova13:04
sean-k-mooneyhttps://review.opendev.org/c/openstack/nova/+/821606/8/nova/virt/libvirt/volume/lightos.py#5813:06
sean-k-mooneygeguileo: the nvmeof connector was also considering using a agent https://github.com/openstack/os-brick/blob/master/os_brick/initiator/connectors/nvmeof.py#L2813:07
sean-k-mooneyhttps://github.com/openstack/os-brick/blob/master/os_brick/initiator/connectors/nvmeof.py#L469-L47013:07
sean-k-mooneyhttps://review.opendev.org/c/openstack/os-brick/+/768576/713:08
sean-k-mooneyhowever that was abandoed13:08
sean-k-mooneythat was also going to use the same pattern13:08
sean-k-mooneygeguileo: in general you are correct isci is the only thing that does it now13:09
sean-k-mooneyhowever the idea of running an agent within an agent or haveign other pluggins start create thread is concerning to say the least13:10
sean-k-mooneygeguileo: using a util funciton that detected if os-brick was moneky patche and either uses eventlet.swan or a native tread or process likely would be a better pattern13:13
sean-k-mooneythis is not new by any means just we shoudl be very very carful what is run this way13:16
sean-k-mooneyand idealy driver shoudl avoid assuming that they can set up backround processes.13:16
sean-k-mooneywell backgorund threads13:17
rosmaitasean-k-mooney: the agent is not dead yet: https://review.opendev.org/c/openstack/os-brick/+/80269113:21
sean-k-mooney...13:21
rosmaitathough it won't be in yoga13:22
sean-k-mooneywell that looks like it will be a seperate process?13:22
sean-k-mooneywhich is what i orginly pushed for in the spec13:22
rosmaitayes13:22
sean-k-mooneyok seperate processes are fine13:22
sean-k-mooneythey cant block the eventlet event loop in nova-compute13:23
rosmaitayes, i think they took your concern seriously13:23
sean-k-mooneyya so im fine with the agent in that case13:23
rosmaitacool13:24
sean-k-mooneywhat im not really clear on is why lightos need to monitor the "db" in a tight loop13:24
sean-k-mooneywhen we are not making any request to os-brick13:24
rosmaitathis is in the nova patch?13:25
sean-k-mooneythe loop is in os-brick but the thread is spwaned form nova13:25
sean-k-mooneyhttps://github.com/openstack/os-brick/blob/master/os_brick/initiator/connectors/lightos.py#L141-L18213:26
sean-k-mooneyand spwaned here https://review.opendev.org/c/openstack/nova/+/821606/8/nova/virt/libvirt/volume/lightos.py#5813:26
sean-k-mooneyby calling into os-bicks executor.Thread(13:26
rosmaitafor why they need to do it, you'll have to ask yuval 13:29
rosmaitafor how they do it, there's probably an alternative way to call it on the nova side?13:30
sean-k-mooneywell thhe only thing the loopp does other then some manament of a dict is call  dsc_connect_volume13:31
sean-k-mooneyhttps://github.com/openstack/os-brick/blob/master/os_brick/initiator/connectors/lightos.py#L10713:31
sean-k-mooneyand thats called in connect_volume https://github.com/openstack/os-brick/blob/5902166149ba46da5f36eb352e62f3361269fb2c/os_brick/initiator/connectors/lightos.py#L27713:32
sean-k-mooneyso i dont know why we would need to key writing the connection info to a tempory file every second13:32
sean-k-mooneyi guess it this13:33
sean-k-mooneyhttps://github.com/openstack/os-brick/blob/5902166149ba46da5f36eb352e62f3361269fb2c/os_brick/initiator/connectors/lightos.py#L12613:33
sean-k-mooneythey seam to be movign the file and presumable they have something reading it13:33
sean-k-mooneybut that shoudl only be updated really when we connect or disconect a volume13:33
sean-k-mooneyideally we shoudl not have to keep telling lightos every second about all the connection info in the background13:35
sean-k-mooneyyuval: ^ if you can expand on why you need to do that it would help13:35
sean-k-mooneyrosmaita: correct me if im wrong but connection infomation/attachments shoudl only ever change as a result of a call to cinder or nova's api right so yuval its not clear why this design choice was made13:38
rosmaitasean-k-mooney: i'm not sure, but i think this is kind of second-order connection info that's kept locally so that the cinder/nova connection info doesn't need to change, but i really don't know a lot about their solution13:45
rosmaitacinder-cores: we are down to 2 patches holding up os-brick release, both have one +213:47
rosmaitahttps://review.opendev.org/c/openstack/os-brick/+/82365413:47
rosmaitahttps://review.opendev.org/c/openstack/os-brick/+/82958813:47
rosmaitae0ne eharney geguileo hemna jungleboyj smcginnis whoami-rajat enriquetaso ^^13:47
sean-k-mooneyrosmaita: ack13:48
sean-k-mooneyrosmaita: dont worry i dont expect you to know everything going on13:49
sean-k-mooneyrosmaita: there wasnt a cinder spec for this no?13:49
rosmaitasean-k-mooney: that's a relief!13:49
sean-k-mooneywe did not have one on nova because we taught it was more or less trivial and mainly in os brick13:49
sean-k-mooneybut we did not see what it was doing with thread until just now13:50
rosmaitasean-k-mooney: no, we don't require anything other than a bp because usually this kind of thing is straightforward, just implement all the required driver functions13:50
rosmaitaand usually use an existing connector13:50
sean-k-mooneyack13:50
sean-k-mooneyya i think im basicaly suffering form a lack of documentaion of how this is ment to work and why13:50
sean-k-mooneywhich we would normally use the spec to capture partly for docs and partly for review context13:51
rosmaitasean-k-mooney: there was some discussion on the brick connector patch about why they couldn't use the existing nvmeof connector13:51
rosmaitalet me see if i can find that13:51
jungleboyj rosmaita Looking.13:52
sean-k-mooneyrosmaita: this was the os-brick patch https://review.opendev.org/c/openstack/os-brick/+/82160313:52
sean-k-mooneyrosmaita: ill read back through it13:52
rosmaitait was real early, i think gorka raised the question13:53
sean-k-mooney Show all entries (102 hidden)13:53
sean-k-mooneyah there are just one or two commets :)13:53
sean-k-mooneyhttps://review.opendev.org/c/openstack/os-brick/+/821603/15#message-ad931cf05d8ffad7ad2d081b2761ecf091b0150613:54
rosmaitayeah, not too much there13:54
sean-k-mooneyso they have there own connector to work arond a limiation in nvme-cli speicific nvme/tcp dicovery13:56
sean-k-mooneyof the culster nodes?13:56
sean-k-mooneybut ya that does not expliaing why this need to be updated but ill wait for yuval  to reply and quickly read over some of the other comments13:57
TusharTgiterosmaita: you were right about the policy test https://github.com/openstack/cinder/blob/db0f9974014855a48175ce4ac7abe91288411a84/cinder/tests/unit/policies/test_volume_actions.py#L192  this is reset policy test whcih cause the error for https://review.opendev.org/c/openstack/cinder/+/77398514:06
enriquetaso829588 looks good but I need more time regarding 82365414:08
rosmaitasean-k-mooney: sorry, i stopped paying attention ... yuval is usually good about responding quickly, and I'm sure he will be watching the nova patch carefully14:08
sean-k-mooneyrosmaita: thats ok14:08
yuvalrosmaita, sean-k-mooney, sorry I was away14:09
yuvalI understand the concern about the monitor thread14:09
yuvalI can say that we are also inspecting the need of it14:10
yuvalsince this code is running for few year we dont want to rush for changes14:10
rosmaitayuval: did you get a chance to file a bug about nvme-cli 2.0?  if not, i can do it14:10
yuvalI have not done that14:10
rosmaitayuval: that's fine, i'll do it ... just wanted to make sure we're not duplicating efforts14:13
opendevreviewMerged openstack/os-brick master: Add "known issues" note to yoga os-brick release  https://review.opendev.org/c/openstack/os-brick/+/82958814:17
yuvalsean-k-mooney regarding your question - because a certain limitation in the nvme-cli we are using a homemade service that is called discovery-client which connect to discovery-client. this is allow connection to multiple node in different clusters14:22
yuvalthe monitor thread is making sure live connections data is stored in the discovery-client dir14:24
yuvalbut today, we no longer think this is needed, I am now testing the removal of it. if all go right, I will update the Patch without it14:25
TusharTgiterosmaita: this code seems right to me https://github.com/openstack/cinder/blob/db0f9974014855a48175ce4ac7abe91288411a84/cinder/tests/unit/policies/test_volume_actions.py#L192 for policy reset state14:59
rosmaitaTusharTgite: got a meeting coming up, will take a look in an hour or so14:59
rosmaitathanks for following up on this14:59
TusharTgiterosmaita: thanks just puting patch link for you https://review.opendev.org/c/openstack/cinder/+/77398515:00
rosmaitaty15:01
sean-k-mooneyyuval_: ack that woudl make it much less concerning from a nova point of view15:04
opendevreviewEric Harney proposed openstack/python-cinderclient master: Move tempest requirement to functional env  https://review.opendev.org/c/openstack/python-cinderclient/+/76676915:06
TusharTgitejungleboyj: will you give a review on this one https://review.opendev.org/c/openstack/cinder/+/773985 it's last patch from my side in this series15:21
jungleboyjTusharTgite:  Looking.15:21
TusharTgitejungleboyj: sry that was wrong link https://review.opendev.org/c/openstack/cinder-tempest-plugin/+/82822915:22
jungleboyjTusharTgite:  py36/39 are failing.15:22
jungleboyjAh, ok.15:22
jungleboyjTusharTgite:  That looks ok to me.  Is there anyone else that should look at it?15:24
TusharTgitejungleboyj: i've add gorka in reviewers lets see15:28
opendevreviewMerged openstack/os-brick master: Failure to generate hostnqn in case missing "show-hostnqn" sub-command  https://review.opendev.org/c/openstack/os-brick/+/82365419:47
rosmaita\o/20:00
*** dviroel is now known as dviroel|out20:56
opendevreviewMerged openstack/python-cinderclient master: Move tempest requirement to functional env  https://review.opendev.org/c/openstack/python-cinderclient/+/76676922:09
opendevreviewBrian Rosmaita proposed openstack/python-cinderclient master: Update requirements minima for Yoga release  https://review.opendev.org/c/openstack/python-cinderclient/+/82962522:47
opendevreviewMerged openstack/cinder master: docs: Add docs for 'RateLimitingMiddleware'  https://review.opendev.org/c/openstack/cinder/+/78251823:04
opendevreviewBrian Rosmaita proposed openstack/cinder-specs master: Add zed directory for specs  https://review.opendev.org/c/openstack/cinder-specs/+/82982823:11
opendevreviewSam Morrison proposed openstack/cinder master: Restore volumes from host in the same AZ as target volume  https://review.opendev.org/c/openstack/cinder/+/81610423:50

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