<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
</head>
<body>
<p>Hello OpenStack-Discuss,</p>
<p>when setting up telemetry (ceilometer, gnocci, aodh) I followed
the documentation at
<a class="moz-txt-link-freetext" href="https://docs.openstack.org/ceilometer/latest/install/cinder/install-cinder-ubuntu.html">https://docs.openstack.org/ceilometer/latest/install/cinder/install-cinder-ubuntu.html</a>
to set up sending metrics for cinder to ceilomter.<br>
<br>
</p>
<p>1) The instruction to run cinder-volume-usage-audit as a timer /
cron every 5 minutes <br>
<blockquote type="cite">*/5 * * * *
/path/to/cinder-volume-usage-audit --send_actions</blockquote>
<br>
has me confused. This would cause the usage data for the last full
month, to be sent to the notifications queue every 5 minutes.<br>
There is no progress tracker or pointer limiting this to only sent
data that has not yet been sent.</p>
<p>Looking at how openstack-ansible configures this
(<a class="moz-txt-link-freetext" href="https://github.com/openstack/openstack-ansible-os_cinder/blob/1af3003e163e09f917dd124ae874f1bea6fe2c6b/tasks/main.yml#L147">https://github.com/openstack/openstack-ansible-os_cinder/blob/1af3003e163e09f917dd124ae874f1bea6fe2c6b/tasks/main.yml#L147</a>)
it seems they were aware that running this without bounds and
every 5 minutes is wrong.</p>
<p>I also opened a bug
(<a class="moz-txt-link-freetext" href="https://bugs.launchpad.net/ceilometer/+bug/2024475">https://bugs.launchpad.net/ceilometer/+bug/2024475</a>) about this.</p>
<p><br>
</p>
<p>2) Extending on 1) I believe setting the <br>
</p>
<p>
<blockquote type="cite">volume_usage_audit_period</blockquote>
</p>
<p>in the cinder configuration, to e.g. month or hour, will already
set the interval for which the data is emitted. Then the important
thing is to only <br>
run cinder-volume-usage-audit in the same frequency.<br>
</p>
<p><br>
</p>
<p>3) Looking at the "<span class="o">--</span><span class="n">send_actions"
options, I am wondering if the "create/delete" actions for
volumes, snapshosts and backups are not sent by cinder anyways
and why they would need to be sent again in batch and by
cinder-volume-usage-audit? I am referring to <br>
</span></p>
<blockquote type="cite">
<p><span class="n">[oslo_messaging_notifications]<br>
driver = </span><span class="n">messagingv2</span><span
class="n"></span></p>
</blockquote>
<p>being enabled. This might also be the reasoning behind this bug,
<span class="n"><a class="moz-txt-link-freetext" href="https://bugs.launchpad.net/openstack-ansible/+bug/1968734">https://bugs.launchpad.net/openstack-ansible/+bug/1968734</a>,
asking for this parameter to be behind a config switch to avoid
duplicate actions to be sent.</span></p>
<p><span class="n"><br>
</span></p>
<p><span class="n">4) Thinking about the whole setup more questions
arise<br>
<br>
* What happens when I run this more than once in the same
interval? What will ceilometer do with the (redundant) data? <br>
</span><span class="n"><span class="n">* I am also wondering how
well this single piece of software scales and how this could
be split up more?<br>
</span>* Is there no way to implement a pointer to allow running
this command more often and only send "new data"? Just like the
timestamp up to which data was sent.<br>
* What about any locking / coordination to enable multiple
instances?<br>
</span><span class="n"><br>
</span></p>
<p><span class="n"><br>
</span></p>
<p><span class="n">Regards</span></p>
<p><span class="n"><br>
</span></p>
<p><span class="n">Christian<br>
</span></p>
<p><span class="n"><br>
</span></p>
<p><span class="n"><br>
</span></p>
<br>
<p></p>
</body>
</html>