Thursday, 2016-06-30

*** padkrish has joined #openstack-fwaas00:20
*** padkrish has quit IRC00:25
*** padkrish has joined #openstack-fwaas00:34
*** mickeys has quit IRC00:43
*** mickeys has joined #openstack-fwaas00:46
*** mickeys has quit IRC00:51
*** padkrish has quit IRC01:09
*** padkrish has joined #openstack-fwaas01:13
*** mickeys has joined #openstack-fwaas02:12
*** mickeys has quit IRC02:12
*** mickeys has joined #openstack-fwaas02:13
*** mickeys has quit IRC02:17
*** chandanc_ has joined #openstack-fwaas02:45
*** padkrish has quit IRC02:57
*** padkrish has joined #openstack-fwaas03:50
*** padkrish has quit IRC03:55
*** lnicolas has quit IRC04:39
*** yamamoto_ has joined #openstack-fwaas04:51
*** padkrish has joined #openstack-fwaas04:58
*** padkrish_ has joined #openstack-fwaas04:59
*** padkrish has quit IRC05:02
*** yamamoto_ has quit IRC05:50
*** yamamoto_ has joined #openstack-fwaas06:35
*** padkrish_ has quit IRC06:52
*** diogogmt has quit IRC09:08
*** lmiccini has quit IRC09:08
*** lmiccini has joined #openstack-fwaas09:13
*** SridarK has quit IRC10:43
*** chandanc_ has quit IRC11:04
*** yamamoto_ has quit IRC11:33
*** yamamoto has joined #openstack-fwaas12:12
*** vishwanathj has joined #openstack-fwaas12:17
*** yamamoto has quit IRC13:07
*** yamamoto has joined #openstack-fwaas13:13
*** yamamoto has quit IRC13:24
*** yamamoto has joined #openstack-fwaas13:27
*** yamamoto has quit IRC13:36
*** mickeys has joined #openstack-fwaas13:40
mfranc213hello njohnston13:41
*** mickeys has quit IRC13:44
njohnstonGood morning mfranc21313:44
mfranc213the rpc mechanisms used by the plugins and by the extensions are very disparate:13:45
mfranc213the plugins register as consumers of [resource,event_type] tuples via neutron.agent.rpc, while13:45
*** yamamoto has joined #openstack-fwaas13:46
mfranc213the extensions register call functions to handle such tuples.13:47
mfranc213(maybe these aren't VERY disparate :) ) but let me see if i can formulate my question.13:47
mfranc213oh, and i meant to be explicate about the fact that the extensions are using, of course, neutron.api.rpc.callbacks13:48
mfranc213s/explicate/explicit :)13:48
mfranc213first, i'm not quite sure what it gets us to have the extensions register for more generalized resources (a port rather than a policy), and i meant that in the following way:13:49
mfranc213we want to try to generalize things that, for instance, there is no need for the L3AgentCoreResourceExtension class and its L2 analogue13:50
mfranc213i'm all for that.13:50
mfranc213but why can't we just do that now?  that's my first question.  let me see if i can formulate my second, and then i'll be done with my questions at this time.13:51
mfranc213my second question:13:51
mfranc213since i don't understand the details of the rpc mechanism server-side, is it even possible for an extension to register a callback function for a resource type like port, via neutron.api.rpc.callbacks.consumer.registry13:52
mfranc213(does that registry handle resources like that? a newbie question, i'm sure)13:53
mfranc213#margaret hands baton to nate13:53
*** diogogmt has joined #openstack-fwaas13:54
mfranc213#margaret goes to make some toast13:55
njohnstonTo your first question, yes I think we may be able to collapse the L[2,3]AgentCoreResourceExtension right now13:56
njohnstonTo your send question, the detail I think we've glossed over that really brings these things together, which I think will help elucidate how these things tie in together, is here: https://github.com/openstack/neutron/blob/master/neutron/plugins/ml2/drivers/openvswitch/agent/ovs_neutron_agent.py#L153313:59
njohnstonThat is in the treat_devices_added_or_updated() function in the OVS agent.  That code is handling when RPC updates come in.  And it calls the agent extension manager's handle_port, which in turn calls the handle_port for all registered extensions.14:01
mfranc213#margaret looks and thinks.  margaret is eating salmon instead of toast14:01
njohnstonI was looking at this yesterday when I noticed this.  So perhaps we are overthinking things, and we just need to implement these kinds of calls in the L3 agent to call the right kind of procedures in the agent extension manager14:02
mfranc213thinking more14:03
* njohnston has oft been accused of overthinking things14:03
mfranc213i think we just need to implement these kinds of calls in the L3 agent to call the right kind of procedures in the agent extension manager14:03
mfranc213and thinking more about the abc methods in those abstract classes ...14:06
mfranc213those methods really do serve as a contract between plugin and extension.  seeing that L1533 that you linked made that concrete for me.14:07
*** yamamoto has quit IRC14:09
mfranc213collapsing the two L2/L3 AgentCoreResourceExtension classes into one means that either we don't have these class methods abc methods, or that QosAgentExtension would need to14:09
mfranc213implement handle_router, which would stink14:09
*** padkrish has joined #openstack-fwaas14:10
njohnstonIs your preference to keep them, then?14:12
mfranc213thinking14:12
*** diogogmt has quit IRC14:14
*** padkrish_ has joined #openstack-fwaas14:14
mfranc213so i'm wondering (probably another newbie question) whether the L2/L3 distinction in this *particular* context is a little contrived.  convenient for now but maybe eventually less clearly so?  as you mentioned, handle_port is something that L3 extensions will also need to implement. and ...14:15
*** yamamoto has joined #openstack-fwaas14:15
mfranc213so in addition to there being overlap, couldn't there (speculating, maybe down the pike) also be certain resources that we may want some but not all L2 extensions, say, to handle?14:16
*** yamamoto has quit IRC14:16
mfranc213in this case, maybe having a single abstract class is sufficient.  and either make its methods not-abc, OR ...14:16
mfranc213okay, this or sort of stinks: have the subclasses put in no-ops for the methods were needed14:17
*** padkrish has quit IRC14:17
njohnstonmfranc213: By the way, I have a fence repair guy coming at 11:00am, could I ask you to represent at the neutron l3 team meeting at 11:00?14:18
njohnstonit is in #openstack-meeting-314:18
mfranc213sure14:18
njohnstonThanks!  You can see here the update I gave last time, to see the level of detail I share: http://eavesdrop.openstack.org/meetings/neutron_l3/2016/neutron_l3.2016-06-23-15.01.log.html starting at 15:45:5214:19
mfranc213not a problem nate.14:26
njohnstonSo anyway, let's take a look at the code that  subscribes to RPC topics in the L3 agent and see where the right place to hook in is.  It'll also be interesting to see what RPC topics it subscribes to.14:33
mfranc213yes, good.14:34
njohnstonlooking in neutron/agent/l3/ I only see mentioned topics.L3PLUGIN, topics.L3_AGENT, and topics.REPORTS.14:36
njohnstonlist of topics: https://github.com/openstack/neutron/blob/master/neutron/common/topics.py#L16-L3814:37
*** yamamoto has joined #openstack-fwaas14:39
*** yamamoto_ has joined #openstack-fwaas14:40
*** yamamoto has quit IRC14:40
mfranc213i don't see code that subscribes to RPC topics in the l3 agent/plugins.14:44
njohnstonI haven't traced it out fully, but those are the topics that are mentioned in l3/agent.py14:47
njohnstonFor example, line 193:         self.plugin_rpc = L3PluginApi(topics.L3PLUGIN, host)14:51
njohnstonand on line 86, in the __init__ for the L3PluginApi class:         target = oslo_messaging.Target(topic=topic, version='1.0')14:51
njohnstonI wonder if this doesn't use the same RPC callbacks library that the l2 agent uses14:53
njohnstonif not, we would need to consider recoding to use that so we could get the versioned object rolling upgrade behavior that ajo mentioned14:54
njohnstons/mentioned/wrote/14:54
njohnstonYeah, I don't see neutron.api.rpc.callbacks mentioned anywhere here.  That's something else we need to do.14:56
mfranc213this will be something i bring up in today's l3 meeting.14:58
njohnstongood idea14:58
mfranc213thanks nate.14:58
*** diogogmt has joined #openstack-fwaas15:12
*** mickeys has joined #openstack-fwaas15:19
*** padkrish_ has quit IRC15:29
*** carl_baldwin has joined #openstack-fwaas15:55
mfranc213njohnston: i have a follow-on question for you.16:19
mfranc213we talked about pros and cons of collapsing the [L2/L3]AgentCoreResourceExtension into one.  that begs the question of16:19
mfranc213the pros and cons of collapsing the [L2/L3]AgentExtensionsManager into one.  what do you think?16:20
mfranc213(about that question, not necessarily the answer :) )16:20
mfranc213this is an idealized (stylized?) question, since there isn't an L3AgentExtensionsManager ... i should have phrased my question differently, but the upshot would be the same, i think.16:22
njohnstonI am open to the idea, but I haven't thought through all the specifics16:22
*** padkrish has joined #openstack-fwaas16:25
*** padkrish has quit IRC16:27
mfranc213my general state :)16:27
*** padkrish has joined #openstack-fwaas16:27
njohnstonI mean even if the code is the same we really end up with two instantiations; one in the l3 agent and one in the l2 agent16:28
njohnstonthe question is, are their use cases going to diverge enough that we will want to give specificity with subclasses?16:29
*** padkrish has quit IRC16:29
*** yamamoto_ has quit IRC16:31
*** padkrish has joined #openstack-fwaas16:34
*** padkrish has quit IRC16:42
*** padkrish has joined #openstack-fwaas16:48
*** padkrish has quit IRC16:53
*** yamamoto has joined #openstack-fwaas17:02
*** yamamoto has quit IRC17:06
*** SridarK_ has joined #openstack-fwaas17:19
*** yamamoto has joined #openstack-fwaas17:34
*** padkrish has joined #openstack-fwaas17:38
*** yamamoto has quit IRC17:39
*** padkrish has quit IRC17:51
*** SumitNaiksatam has joined #openstack-fwaas17:51
*** chandanc_ has joined #openstack-fwaas18:02
*** padkrish has joined #openstack-fwaas18:18
*** padkrish has quit IRC18:19
*** padkrish has joined #openstack-fwaas18:41
*** padkrish has quit IRC18:42
*** padkrish has joined #openstack-fwaas18:43
*** padkrish has quit IRC18:44
*** chandanc_ has quit IRC18:56
*** padkrish has joined #openstack-fwaas19:03
*** padkrish has quit IRC19:04
*** yamamoto has joined #openstack-fwaas19:06
*** yamamoto has quit IRC19:11
*** padkrish has joined #openstack-fwaas19:40
*** padkrish has quit IRC19:41
*** padkrish has joined #openstack-fwaas19:56
*** padkrish has quit IRC20:11
*** padkrish has joined #openstack-fwaas20:14
njohnstonmfranc213: ping20:17
mfranc213njohnston: pong20:17
njohnstonSo I think the next step, while we wait on feedback on https://review.openstack.org/329701 is to have a cobversation with SridarK_ on what part of the code we are going to turn into the FWaaS l3 extension20:18
SridarK_njohnston: that makes sense20:19
SridarK_njohnston: if we have an idea on what the framework should look like - it will be easy for me to move over the L3 FWaaS agent code20:20
*** padkrish has quit IRC20:27
mfranc213njohnston: can you say more about what you mean by which part of the code?20:28
mfranc213that is, which part of the code we are going to turn into the FWaaS l3 extension...20:28
njohnstonYes, so when we start turning a part of the existing codebase into an l3 extension, what file should we start working in?  Or should it be a new file?20:31
mfranc213okay.  so we're talking about the agent, the plugin, and the extension, right?20:33
njohnstonmfranc213: You just totally confused me20:40
mfranc213aha, i have met my goals for the day! :)20:40
mfranc213what i meant: the generic extension manager will have effects on the fwaas and l3 analogues of all of the following:20:42
mfranc2134 things:20:43
mfranc213neutron/agent/l2/l2_agent_extensions_manager.py20:43
mfranc213neutron/agent/l2/l2_agent_extension.py20:44
mfranc213neutron/plugins/ml2/drivers/openvswitch/agent/ovs_neutron_agent.py20:44
mfranc213neutron/agent/l2/extensions/qos.py20:44
mfranc213i believe that's so; the older i get the less confident i become in everything20:44
*** padkrish has joined #openstack-fwaas20:45
*** padkrish has quit IRC20:47
njohnstonyes, to the extent that those have analogues at present20:49
mfranc213oh, right!20:49
njohnstonit is not clear to me what the proper analogue of neutron/plugins/ml2/drivers/openvswitch/agent/ovs_neutron_agent.py in this scenario is20:50
njohnstonI suppose that is the nut of my question20:50
njohnstonthe primary executable code for the fwaas l3 extension20:50
mfranc213right, good.20:50
mfranc213and SridarK_ can we work with you to get that brain dump, plus the info about the file(s) to start with?20:51
SridarK_mfranc213: surely - we can do that20:52
mfranc213great! what's the best way to do that, do you think, and when would be the best time for you?20:53
njohnstonexcellent.  When I get back from my family reunion middle of next week I want to hit that part of things hard, so that we have something we can be integrating into the l3 agent extension work.  We can't really prove the l3 agent extension work until we have something to use it.20:54
SridarK_mfranc213: we can do any form - if u think it is easier - we can also do a call and share the screen20:55
njohnstonmfranc213: Please feel free to proceed with talking about this while I am out.20:55
* njohnston is not an impediment20:55
SridarK_njohnston: i will have some things for u on the db patch20:55
njohnstonSridarK_: Excellent20:56
SridarK_njohnston: i will try to wrap this up b4 we get on the L3Agent20:56
njohnstonOK20:56
njohnstonIn the mean time we can also work on revamping the RPC messaging in l3 agent to use the RPC Callbacks library20:57
*** mickeys has quit IRC20:57
SridarK_njohnston: i will be travelling next 2 weeks - but will stay on so we can keep things moving, my timings may be messedup but will keep u guys informed20:57
SridarK_mfranc213: we can sync tomorrow too if u would like20:57
njohnstonSridarK_: That sounds like a good plan, and we will be respectful of your schedule20:57
SridarK_njohnston: no worries - as long as i am not on the road and i have connectivity - i am good20:58
SridarK_mfranc213: i am also around on Tue after the long weekend20:58
mfranc213SridarK_: yes, let's touch base tomorrow.  do you want to ping me when it's convenient for you?20:59
SridarK_mfranc213: ok will do20:59
mfranc213i don't have any meetings tomorrow.  waiting, checking that ...20:59
mfranc213no, i don't have any meetings.20:59
SridarK_mfranc213: i have a few but we can work around that20:59
mfranc213Sridar, can you point me in the general direction in the file directory so i can poke around before we talk tomorrow?21:00
mfranc213sorry for the newbie question21:00
mfranc213and to answer your earlier question, i suspect that a call with screen sharing would be best for me.21:00
SridarK_https://github.com/openstack/neutron-fwaas/blob/master/neutron_fwaas/services/firewall/agents/l3reference/firewall_l3_agent.py21:00
SridarK_that is the bulk of things21:01
mfranc213excellent.21:01
SridarK_mfranc213: ok will sync with u offline and we can do a screen share21:01
mfranc213good. thank you.  i look forward to talking to you tomorrow.21:01
SridarK_mfranc213: no worries at all21:01
*** padkrish has joined #openstack-fwaas21:02
*** padkrish has quit IRC21:02
* njohnston is off to vacation now. Have a lovely Independence Day weekend for my USA colleagues, and have a lovely and joyous weekend to everyone else!21:02
mfranc213bye nate21:04
SridarK_njohnston: have a great long weekend and holiday21:06
*** padkrish has joined #openstack-fwaas21:09
*** padkrish has quit IRC21:12
*** vishwanathj has quit IRC21:22
*** mickeys has joined #openstack-fwaas21:28
*** padkrish has joined #openstack-fwaas21:29
*** padkrish has quit IRC21:31
*** diogogmt has quit IRC21:36
*** padkrish has joined #openstack-fwaas21:40
*** padkrish has quit IRC21:46
*** padkrish has joined #openstack-fwaas21:57
*** padkrish has quit IRC21:58
*** padkrish has joined #openstack-fwaas22:01
*** padkrish has quit IRC22:03
*** padkrish has joined #openstack-fwaas22:10
*** padkrish_ has joined #openstack-fwaas22:11
*** padkrish has quit IRC22:15
*** padkrish_ has quit IRC22:18
*** padkrish has joined #openstack-fwaas22:32
*** padkrish has quit IRC22:33
*** njohnsto_ has joined #openstack-fwaas22:47
*** njohnsto_ has quit IRC23:03
*** njohnsto_ has joined #openstack-fwaas23:05
*** njohnsto_ has quit IRC23:11
*** padkrish has joined #openstack-fwaas23:33
*** padkrish has quit IRC23:34
*** padkrish has joined #openstack-fwaas23:58

Generated by irclog2html.py 2.14.0 by Marius Gedminas - find it at mg.pov.lt!