<div dir="ltr"><div>Hello Zigo!, <br></div><div>You might want to take a look at the new implementations we made in ceilometer, and CloudKitty.</div><div>- <a href="https://review.opendev.org/c/openstack/cloudkitty/+/861806">https://review.opendev.org/c/openstack/cloudkitty/+/861806</a></div><div>- <a href="https://review.opendev.org/c/openstack/ceilometer/+/856178">https://review.opendev.org/c/openstack/ceilometer/+/856178</a></div><div>- <a href="https://review.opendev.org/c/openstack/ceilometer/+/852021">https://review.opendev.org/c/openstack/ceilometer/+/852021</a></div><div>- <a href="https://review.opendev.org/c/openstack/ceilometer/+/850253">https://review.opendev.org/c/openstack/ceilometer/+/850253</a></div><div>- <a href="https://review.opendev.org/c/openstack/ceilometer/+/855953">https://review.opendev.org/c/openstack/ceilometer/+/855953</a></div><div><br></div><div>Not directly relate to this use case, but also might interest you:</div><div>- <a href="https://review.opendev.org/c/openstack/cloudkitty/+/861786">https://review.opendev.org/c/openstack/cloudkitty/+/861786</a></div><div>- <a href="https://review.opendev.org/c/openstack/cloudkitty/+/861807">https://review.opendev.org/c/openstack/cloudkitty/+/861807</a></div><div>- <a href="https://review.opendev.org/c/openstack/cloudkitty/+/861908">https://review.opendev.org/c/openstack/cloudkitty/+/861908</a></div><div>- <a href="https://review.opendev.org/c/openstack/ceilometer/+/856972">https://review.opendev.org/c/openstack/ceilometer/+/856972</a></div><div>- <a href="https://review.opendev.org/c/openstack/ceilometer/+/861109">https://review.opendev.org/c/openstack/ceilometer/+/861109</a></div><div>- <a href="https://review.opendev.org/c/openstack/ceilometer/+/856304">https://review.opendev.org/c/openstack/ceilometer/+/856304</a></div><div>- <a href="https://review.opendev.org/c/openstack/ceilometer/+/856305">https://review.opendev.org/c/openstack/ceilometer/+/856305</a></div><div><br></div><div><br></div><div>In short, we can now create Ceilometer compute dynamic pollsters, which can execute scripts in the host, and check the actual operating system installed in the VM. Then, this data can be pushed back to the storage backend via Ceilometer as an attribute, which is then processed in CloudKitty. Furthermore, we extended cloudkitty to generate different ratings for the same metric. Therefore, by doing this, we do not need multiple metrics to have different CloudKitty ratings appearing for users. This allows us, for instance, to have one rating for the VM usage itself, and others for each license, and so on.<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Oct 21, 2022 at 5:19 AM Thomas Goirand <<a href="mailto:zigo@debian.org">zigo@debian.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi there!<br>
<br>
We're using telemetry+cloudkitty for our rating. We're happy of it, <br>
though we're having the issue that we would like to bill instances <br>
running Windows.<br>
<br>
The example given in the Cloudkitty doc shows how to bill more when an <br>
instance runs Windows. That works in theory, though in practice, <br>
Microsoft has a license model based on how many vCPU the instannce runs. <br>
So the model that the Cloudkitty documentation shows simply doesn't work <br>
with the SPLA thingy.<br>
<br>
We've looked at options. One way would of course writing a new custom <br>
pollster, but we don't like the idea: this would mean polling for all of <br>
the thousands of instances that are running in our deployments. So we <br>
would very much prefer having ceilometer running on compute node (with <br>
polling_namespaces=compute) to do the work, as this scales a way better.<br>
<br>
However, Ceilometer polls libvirt, which only has the information about <br>
the image ID, not the metadata associated with the image (like the <br>
property os_type=windows, for example).<br>
<br>
So, is there a better way than a dynamic pollster? Can this be done with <br>
ceilometer on the compute nodes?<br>
<br>
Cheers,<br>
<br>
Thomas Goirand (zigo)<br>
<br>
</blockquote></div><br clear="all"><br>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr">Rafael Weingärtner</div></div>