[Openstack-operators] [ceilometer] what is cpu_util: directly measured or derived?

Danek Duvall danek.duvall at oracle.com
Fri Nov 18 22:10:32 UTC 2016


gordon chung wrote:

> if you're using libvirt driver than it's derived.

I'm not, actually; I'm writing my own, for Solaris zones (for Mitaka; I
forgot to mention that).

> i assume the CPUUtilPollster you're referencing is the instance
> pollster[1] and not the node pollster[2].

Yes.

> this pollster is used by other hypervisor polling.  there was a patch for
> libvirt driver to use libvirt native functionality to retrieve cpu_util
> info rather than computing it[3]. unfortunately, at the time, the
> functionality was in a version too new to match with Nova libvirt
> requirements.

If I'm reading this correctly, it's more than that.  Solving the overcommit
issue is different, and requires the new meters.  But simply keeping the
more naive definition of cpu_util wouldn't have.  Even the libvirt has an
inspect_cpu_util() call whose data, feeding into the cpu_util meter defined
by ceilometer.cpu.CPUUtilPollster will presumably be masked by the the
cpu_util meter defined by the pipeline.

It's that masking I'm wondering about, and the change you reference doesn't
get rid of it, either.

It might be easier for me to drop my implementation of inspect_cpu_util()
and let the ceilometer-computed version of cpu_util take care of it, but
since we have a way of getting the number directly, it might be nice to use
it.

Thanks,
Danek

> ideally, Nova will bump requirements to support libvirt >= 1.3.2 (i 
> don't know current status) and we won't have to compute cpu_util at all.
> 
> [1] 
> https://github.com/openstack/ceilometer/blob/master/ceilometer/compute/pollsters/cpu.py#L68
> [2] 
> https://github.com/openstack/ceilometer/blob/master/ceilometer/ipmi/pollsters/node.py#L155
> [3] https://review.openstack.org/#/c/182057/
> 
> On 17/11/16 06:55 PM, Danek Duvall wrote:
> > There seem to be two different notions of cpu_util.  One is the thing
> > computed by the rate_of_change transformer in the cpu_sink sink defined in
> > pipeline.yaml, and the other is a direct measurement by the CPUUtilPollster.
> > The latter is masked by the former, as far as I can tell, though changing
> > the name in pipeline.yaml to something clever like cpu_util2 then seems to
> > allow both to be presented.
> >
> > The telemetry-measurements page in the admin guide talk about cpu_util as
> > being introduced in various releases for different hypervisors as a
> > pollster-originated measurement), but then talking about cpu_util as being
> > something generated by a transformer, too.
> >
> > Is this an oversight, or simply something left to operators to discover and
> > choose between?
> >
> > Thanks,
> > Danek
> >
> > _______________________________________________
> > OpenStack-operators mailing list
> > OpenStack-operators at lists.openstack.org
> > http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators
> >
> 
> cheers,
> -- 
> gord
> 
> _______________________________________________
> OpenStack-operators mailing list
> OpenStack-operators at lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators



More information about the OpenStack-operators mailing list