On 10/21/22 17:40, Rafael Weingärtner wrote:
Hello Zigo!, You might want to take a look at the new implementations we made in ceilometer, and CloudKitty. - https://review.opendev.org/c/openstack/cloudkitty/+/861806 <https://review.opendev.org/c/openstack/cloudkitty/+/861806> - https://review.opendev.org/c/openstack/ceilometer/+/856178 <https://review.opendev.org/c/openstack/ceilometer/+/856178> - https://review.opendev.org/c/openstack/ceilometer/+/852021 <https://review.opendev.org/c/openstack/ceilometer/+/852021> - https://review.opendev.org/c/openstack/ceilometer/+/850253 <https://review.opendev.org/c/openstack/ceilometer/+/850253> - https://review.opendev.org/c/openstack/ceilometer/+/855953 <https://review.opendev.org/c/openstack/ceilometer/+/855953>
Not directly relate to this use case, but also might interest you: - https://review.opendev.org/c/openstack/cloudkitty/+/861786 <https://review.opendev.org/c/openstack/cloudkitty/+/861786> - https://review.opendev.org/c/openstack/cloudkitty/+/861807 <https://review.opendev.org/c/openstack/cloudkitty/+/861807> - https://review.opendev.org/c/openstack/cloudkitty/+/861908 <https://review.opendev.org/c/openstack/cloudkitty/+/861908> - https://review.opendev.org/c/openstack/ceilometer/+/856972 <https://review.opendev.org/c/openstack/ceilometer/+/856972> - https://review.opendev.org/c/openstack/ceilometer/+/861109 <https://review.opendev.org/c/openstack/ceilometer/+/861109> - https://review.opendev.org/c/openstack/ceilometer/+/856304 <https://review.opendev.org/c/openstack/ceilometer/+/856304> - https://review.opendev.org/c/openstack/ceilometer/+/856305 <https://review.opendev.org/c/openstack/ceilometer/+/856305>
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.
Hi Raphael! Thanks a lot for all of the above (both the patches merged upstream themselves, and taking the time to give me reference to them). We've backported this to our production version (ie: Victoria) without too much pain (it took me like 4 hours to do so, cherry-picking missing patches on top of which these were applied). We then wrote a quick command to produce a JSON containing the image type (as reported by the os_type property of the image) that we put in cache in the compute, and then dump this image type, and the associated project ID. This looks promising: we only need to write the dynamic pollster now! :) So really, thanks a lot. I'll let you know when we have a full solution (that I will also publish as free software). Cheers, Thomas Goirand (zigo)