On Thu, Oct 20, 2011 at 9:21 AM, Sumit Naiksatam (snaiksat) <
snaik...@cisco.com> wrote:

> Hi Salv, Echo Dan’s suggestions and comments, great write-up.****
>
> ** **
>
> Just a general comment (& this is a nit) – “Examples of situations in which
> a resource might not be operative include faults, insufficient capabilities
> in the physical or virtual switching layer, or simply, in the case of ports,
> the fact that there's no attachment plugged into it (i.e.: link down).”***
> *
>
> ** **
>
> How about we add the example of the resource being currently provisioned,
> that to me seems to be the predominant use case for providing this status.
>
>
****
>
> ** **
>
> On a slightly different note, there was also a suggestion to have a label
> or tag per resource. Are we still planning to have that? It will be helpful
> to have that attribute.
>

I think this would be a valuable capability.  Want to work on that Sumit?
 It would be great to get others helping out Salvatore on API-related tasks,
as his plate is always more than overflowing :)

Dan




> ****
>
> ** **
>
> Thanks,****
>
> ~Sumit. ****
>
> ** **
>
> *From:* netstack-bounces+snaiksat=cisco....@lists.launchpad.net [mailto:
> netstack-bounces+snaiksat=cisco....@lists.launchpad.net] *On Behalf Of 
> *Salvatore
> Orlando
> *Sent:* Thursday, October 20, 2011 2:49 AM
> *To:* Dan Wendlandt
>
> *Cc:* netstack@lists.launchpad.net
> *Subject:* Re: [Netstack] Wiki page for operational status in Quantum API*
> ***
>
> ** **
>
> Hi Dan,****
>
> Thanks for your feedback!****
>
> ** **
>
> Replies inline.****
>
> ** **
>
> *From:* Dan Wendlandt [mailto:d...@nicira.com]
> *Sent:* 20 October 2011 03:40
> *To:* Salvatore Orlando
> *Cc:* netstack@lists.launchpad.net
> *Subject:* Re: [Netstack] Wiki page for operational status in Quantum API*
> ***
>
> ** **
>
> ** **
>
> On Wed, Oct 19, 2011 at 4:19 AM, Salvatore Orlando <
> salvatore.orla...@eu.citrix.com> wrote:****
>
> Hi fellow netstackers,****
>
>  ****
>
> As agreed during yesterday’s meeting, here’s a wiki page with the
> specification for the operational status support in the API:
> http://wiki.openstack.org/QuantumOpStatus****
>
> ** **
>
> Great write-up Salvatore!  A couple comments/questions: ****
>
> ** **
>
> - would another way of saying "Failures in Quantum Networks" be "failures
> in implementing the logical Quantum network on the switching infrastructure
> managed by the Quantum plugin"?  I usually think of the term "Quantum
> network" as referring to a logical entity, which itself cannot fail.  May
> just be a slightly different mental model. ****
>
> ** **
>
> You’re right. I’ll fix the wording on the sentence.****
>
> ** **
>
> - "Some plugins can immediately return with an error code".  Can you
> elaborate on this?  I would have thought that a plugin would always accept
> and perform any legal modification to the logical model.  The plugin's
> ability to actually implement the logical model would be exposed ONLY via
> the operational status.  How does this compare to your thinking?   I think
> you point in bold is something we definitely agree on, so I don't think we
> can be that far apart :) ****
>
> ** **
>
> I think that what I wrote is not exactly what I meant. Yes the plugin
> definitely accepts and performs any legal modification to the logical model.
> Then when they propagate this change to the physical/virtual switching
> layer, there might be errors, which cause the ‘running’ configuration to be
> different from the ‘logical’ one. The operational status is the only way in
> which this situation is exposed to users.****
>
> ** **
>
> - I don't totally follow the diagram, though I'm not sure that is critical
> :)  I agree with all of the text, I'm just not sure I understand all of the
> boxes and arrows.  I would have expected the boxes on the right side to be
> something that is contained within the plugin, not as a separate element.
> ****
>
> ** **
>
> I wanted to capture the difference between the logical and physical set of
> objects. The box for the plugin should contain the logical model as well, as
> you pointed out.****
>
> ** **
>
> - The question of what enums to expose is interesting.  At the most simple
> level, all the user cares about is "UP" or "DOWN".   I can think of two
> reasons we may want to do more: ****
>
> 1) The system believes the current state to be transient, and thus wants to
> let the user know that a change without user action is expect.  This seems
> to be the goal with something like "PROVISIONING".   ****
>
> 2) The system believes the user may be able to do something to fix the
> problem.  For example, the attachment-id is not found, so perhaps the user
> needs to correct the attachment-id, or make sure the VM with that
> attachment-id is actually running.  ****
>
> I'm not sure I understand difference between "DOWN" and "FAILED".  Thinking
> through various plugin scenarios, I think in practice it could be hard to
> know when to use one versus the other as a developer.  Similarly, I'm not
> sure how the user interprets either field differently.  One might try to
> have both a general "error" state and more specific error states like
> "attachment-id" not found, but even that can get tricky as it may be that an
> attachment-id is not found because the plugin's connection to the switch is
> down, not because the attachment-id actually doesn't exist.  ****
>
> ** **
>
> In my opinion a case for “DOWN” would be a port without an attachment (or
> with a wrong attachment); on the other hand, a case for FAILED would be the
> failure of a physical switch in the network or an hypervisor. ****
>
> I don’t have very strong opinion on the set of possible operational states.
> IMHO, having just UP and DOWN is fine for a start. We can probably start
> with them and then see in course of action if we might want something more.
> ****
>
> ** **
>
> - I had been thinking about a detailed operational status string as well.
>  It definitely seems to be information the service provider would want for
> troubleshooting.  The tricky thing is that I'm not sure such a
> plugin-specific value belongs in a logical API.  For example, would a
> provider want to broadcast to tenants that it is using plugin X or plugin Y?
>  Maybe we should expose this in a different way that makes it easier to have
> it be part of an admin API but not the tenant API?  ****
>
> ** **
>
> That’s a good point. Unfortunately I cannot thing of a detailed operational
> status info which would not be plugin-specific, meaning that different
> plugins can generate different strings. ****
>
> If this information is needed by the service provider only, than it makes
> sense to move it into an Admin API (on this note, are we planning to do some
> work on it?); similarly to the operational status enum, we can say that we
> will not have a detailed status string in the API; if then in course of
> action we find a use case for it, we will add it.****
>
> ** **
>
> Again, great work on this write-up!****
>
> ** **
>
> ** **
>
>  ****
>
> Regards,****
>
> Salvatore****
>
>
> --
> Mailing list: https://launchpad.net/~netstack
> Post to     : netstack@lists.launchpad.net
> Unsubscribe : https://launchpad.net/~netstack
> More help   : https://help.launchpad.net/ListHelp****
>
>
>
> ****
>
> ** **
>
> --
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~
> Dan Wendlandt
> Nicira Networks, Inc.
> www.nicira.com | www.openvswitch.org
> Sr. Product Manager
> cell: 650-906-2650
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~****
>



-- 
~~~~~~~~~~~~~~~~~~~~~~~~~~~
Dan Wendlandt
Nicira Networks, Inc.
www.nicira.com | www.openvswitch.org
Sr. Product Manager
cell: 650-906-2650
~~~~~~~~~~~~~~~~~~~~~~~~~~~
-- 
Mailing list: https://launchpad.net/~netstack
Post to     : netstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~netstack
More help   : https://help.launchpad.net/ListHelp

Reply via email to