<br><br><div class="gmail_quote">On Thu, Jan 31, 2013 at 8:16 AM, Sandy Walsh <span dir="ltr"><<a href="mailto:sandy.walsh@rackspace.com" target="_blank">sandy.walsh@rackspace.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im"><br>
<br>
On 01/30/2013 02:12 PM, Doug Hellmann wrote:<br>
><br>
><br>
> On Wed, Jan 30, 2013 at 8:04 AM, Julien Danjou <<a href="mailto:julien@danjou.info">julien@danjou.info</a><br>
</div><div><div class="h5">> <mailto:<a href="mailto:julien@danjou.info">julien@danjou.info</a>>> wrote:<br>
><br>
>     On Tue, Jan 29 2013, Sandy Walsh wrote:<br>
><br>
>     Hi Sandy,<br>
><br>
>     > <a href="https://blueprints.launchpad.net/ceilometer/+spec/new-ceilometer-agent" target="_blank">https://blueprints.launchpad.net/ceilometer/+spec/new-ceilometer-agent</a><br>
>     ><br>
>     > Full spec: <a href="http://wiki.openstack.org/NewCeilometerAgent" target="_blank">http://wiki.openstack.org/NewCeilometerAgent</a><br>
>     ><br>
>     > Video walkthrough of the StackTach worker (basis for proposal):<br>
>     <a href="http://www.youtube.com/watch?v=thaZcHuJXhM" target="_blank">http://www.youtube.com/watch?v=thaZcHuJXhM</a><br>
>     > (bump resolution and bandwidth, sorry for the um's)<br>
><br>
>     What you propose is to drop the ceilometer-compute-agent, not the<br>
>     central one, you should make this clearer I think.<br>
>     Dropping the central one is just not going to happen anytime soon, but<br>
>     that doesn't sound like a problem to me for now -- and it doesn't seem<br>
>     it's a problem for you too.<br>
><br>
>     IIUC your blueprint what you want to do is to retrieve data in a push<br>
>     model from notifications sent by Nova, rather than polling Nova+libvirt.<br>
><br>
>     As I already pointed out to you on IRC, this has already been discussed<br>
>     back in November, the thread is at:<br>
><br>
><br>
>      <a href="http://lists.openstack.org/pipermail/openstack-dev/2012-November/002791.html" target="_blank">http://lists.openstack.org/pipermail/openstack-dev/2012-November/002791.html</a><br>
><br>
>     (I imagine you remember since it seems you participated)<br>
><br>
>     As far as I know, what we have currently in the compute agent is an<br>
>     implementation of the result of this thread, and Eoghan did the<br>
>     necessary work on abstracting the virt driver etc on our side rather<br>
>     than in Nova side.<br>
><br>
>     Now, if your blueprint is about implementing the necessary components<br>
>     into Nova to emit notifications with interesting information that<br>
>     Ceilometer wants (e.g. instance CPU or I/O usage) and use them from<br>
>     Ceilometer to drop the ceilometer-agent-compute, I don't think anybody<br>
>     -- from the Ceilometer side -- will be against this since, IIRC,<br>
>     Ceilometer crew were all for moving all the stuff into Nova back then.<br>
><br>
><br>
> I can certainly see nova allowing more notifications with more data for<br>
> instances, but I'm not sure they would include some of the other aspects<br>
> we want to eventually include about the host machine itself. Perhaps the<br>
> data collection being done for the scheduler now can also emit<br>
> notifications?<br>
><br>
<br>
</div></div>The notification scheme inside Nova today is "notify when something<br>
changes". Deltas. And the notifications are important enough that they<br>
can't get dropped. BI think if we go to a periodic_task notification<br>
approach (basically just reporting on hypervisor load, like the<br>
scheduler would use) we should adopt the UDP method discussed elsewhere.<br>
<div class="im"><br>
><br>
><br>
>     What you may want to do to start is likely to create a blueprint in Nova<br>
>     and get it validated. Changing stuff in Ceilometer then isn't likely to<br>
>     be a problem; as you know, we already consume a lot of notifications.<br>
><br>
><br>
> The worker processes described in the video sound a lot like the part of<br>
> the collector that processes the incoming notifications. I'm not sure<br>
> exactly what the new implementation buys us over what is already there.<br>
> Can you elaborate on that aspect, too?<br>
<br>
</div>I highlight all the issues with the existing collector in the wiki page<br>
<a href="http://wiki.openstack.org/NewCeilometerAgent" target="_blank">http://wiki.openstack.org/NewCeilometerAgent</a> but I'll review the<br>
collector again just to make sure I didn't miss something. Simplicity<br>
and more comprehensive event collection are the big things.<br></blockquote><div><br></div><div>I think you're conflating the different parts of the system again. We are already listening to the notifications in the collector daemon. There are separate plugins for the collector that subscribe to specific notifications and convert them into metering messages. Adding support for new notification types should just mean adding a new plugin. <a href="http://docs.openstack.org/developer/ceilometer/contributing/plugins.html#notifications">http://docs.openstack.org/developer/ceilometer/contributing/plugins.html#notifications</a></div>
<div><br></div><div>As far as the other points, as we've discussed elsewhere, we're not going to rewrite it to drop the use of the Oslo RPC library because we don't want to be limited to one message bus type. Adding support for listening to the error message queue shouldn't require completely rewriting the collector (although we may need to change it, if we have to do special processing based on the error event).</div>
<div><br></div><div>So, if nova can be updated to provide notifications more frequently (not just when something changes) and to contain all of the same stats currently being collected by the ceilometer compute agent, then there shouldn't be a need for a new process at all -- the collector should just do the right thing.</div>
<div><br></div><div>Doug</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
-S<br>
<div class="im"><br>
><br>
> Doug<br>
><br>
><br>
><br>
>     --<br>
>     Julien Danjou<br>
>     # Free Software hacker & freelance<br>
>     # <a href="http://julien.danjou.info" target="_blank">http://julien.danjou.info</a><br>
><br>
>     _______________________________________________<br>
>     OpenStack-dev mailing list<br>
>     <a href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a><br>
</div>>     <mailto:<a href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a>><br>
>     <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
><br>
><br>
</blockquote></div><br>