<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; color: rgb(0, 0, 0); font-size: 14px; font-family: Calibri, sans-serif;">
<div>
<div>
<div>@Maish Saidel-Keesing,</div>
</div>
</div>
<span id="OLK_SRC_BODY_SECTION">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; color: rgb(0, 0, 0); font-size: 14px; font-family: Calibri, sans-serif;">
<span id="OLK_SRC_BODY_SECTION">
<div>
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; color: rgb(0, 0, 0); font-size: 14px; font-family: Calibri, sans-serif;">
<div>
<div><br>
</div>
<div>Hi Maish, I’m from eBay Inc, and we’re enabling 1000+ ceilometer compute agents. Hope our experience could help.</div>
<div><br>
</div>
<div>We choose an OpenTSDB backend instead of MongoDB in the first place, so we avoid of most of the issues related to MongoDB.</div>
<div><br>
</div>
<div>However, during deployment, we still met many issues as below:</div>
<ol>
<li>The inspector of libvirt didn’t work in nova-cell mode. We fixed it by using instance uuid to identify vm, and submitted to upstream. (<a href="https://bugs.launchpad.net/ceilometer/+bug/1396473">https://bugs.launchpad.net/ceilometer/+bug/1396473</a>)</li><li>There’s huge load to nova/glance client that even drag them down. We resolved it in 3 ways as below to reduce the load:
<ol>
<li>Shuffle compute agents triggering time to avoid same time requests to nova client., and it’s already got approved and merged in upstream. (<a href="https://bugs.launchpad.net/ceilometer/+bug/1412613">https://bugs.launchpad.net/ceilometer/+bug/1412613</a>)</li><li>Add cache layer for nova discovery results of instances, this would reduce quite a lot queries to nova client. It’s still in discussing with upstream. (<a href="https://review.openstack.org/#/c/153503/">https://review.openstack.org/#/c/153503/</a>)</li><li>Remove flavor and image query for vm since we didn't need the info now.</li></ol>
</li></ol>
<div>Our original thinking about MongoDB is to only store some metadata definition, and put most other metrics to a time series db.</div>
<div><br>
</div>
<div>So all in all, we think probably you can consider to change your main storage backend MongoDB, and that may improve your Ceilometer performance. </div>
<div>Also some performance related code enhance/modification based on your conditions would be better. </div>
<div><br>
</div>
<div>
<div>Thanks,</div>
<div>Bryant(Cloud Team, eBay Inc)</div>
</div>
</div>
<div><br>
</div>
</div>
</div>
</span></div>
</span>
</body>
</html>