<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
Hello,<br>
<br>
this is follow up of T.Sedovic old email, trying to identify all
metrics, we will need to track for Tuskar. <br>
The Ceilometer API for Horizon is now in progress, so we have time
to finish the list of metrics <br>
and alarms we need. That may also raise the requests for some
Ceilometer API optimization<br>
<br>
This is meant for the open conversation, that will lead to the final
list.<br>
<br>
<br>
Measurements<br>
=========<br>
<br>
The old list sent by tsedovic:<br>
-------------------------------------<br>
<br>
* CPU utilisation for each CPU (percentage)
(Ceilometer-Nova as
<meta http-equiv="content-type" content="text/html;
charset=ISO-8859-1">
<span style="color: rgb(62, 67, 73); font-family: Arial, sans-serif;
font-size: 14px; font-style: normal; font-variant: normal;
font-weight: normal; letter-spacing: normal; line-height: normal;
orphans: auto; text-align: left; text-indent: 0px; text-transform:
none; white-space: normal; widows: auto; word-spacing: 0px;
-webkit-text-stroke-width: 0px; background-color: rgb(255, 255,
255); display: inline !important; float: none;">cpu_util</span>)<br>
* RAM utilisation (GB)
(Ceilometer-Nova as
<meta http-equiv="content-type" content="text/html;
charset=ISO-8859-1">
<span style="color: rgb(62, 67, 73); font-family: Arial, sans-serif;
font-size: 14px; font-style: normal; font-variant: normal;
font-weight: normal; letter-spacing: normal; line-height: normal;
orphans: auto; text-align: left; text-indent: 0px; text-transform:
none; white-space: normal; widows: auto; word-spacing: 0px;
-webkit-text-stroke-width: 0px; background-color: rgb(255, 255,
255); display: inline !important; float: none;">memory</span>)<br>
- I do just assume, this is the used value and total value can be
got from the service itself, <br>
needs confirmation<br>
* Swap utilisation (GB)
(Ceilometer-Nova as
<meta http-equiv="content-type" content="text/html;
charset=ISO-8859-1">
<span style="color: rgb(62, 67, 73); font-family: Arial, sans-serif;
font-size: 14px; font-style: normal; font-variant: normal;
font-weight: normal; letter-spacing: normal; line-height: normal;
orphans: auto; text-align: left; text-indent: 0px; text-transform:
none; white-space: normal; widows: auto; word-spacing: 0px;
-webkit-text-stroke-width: 0px; background-color: rgb(255, 255,
255); display: inline !important; float: none;">disk.ephemeral.size</span>)<br>
- I do just assume, this is the used value and total value can be
got from the service itself, <br>
needs confirmation<br>
* Disk utilisation (GB)
(Ceilometer-Cinder as
<meta http-equiv="content-type" content="text/html;
charset=ISO-8859-1">
<span style="color: rgb(62, 67, 73); font-family: Arial, sans-serif;
font-size: 14px; font-style: normal; font-variant: normal;
font-weight: normal; letter-spacing: normal; line-height: normal;
orphans: auto; text-align: left; text-indent: 0px; text-transform:
none; white-space: normal; widows: auto; word-spacing: 0px;
-webkit-text-stroke-width: 0px; background-color: rgb(255, 255,
255); display: inline !important; float: none;">volume.size</span>
and Ceilometer-Swift as
<meta http-equiv="content-type" content="text/html;
charset=ISO-8859-1">
<span style="color: rgb(62, 67, 73); font-family: Arial, sans-serif;
font-size: 14px; font-style: normal; font-variant: normal;
font-weight: normal; letter-spacing: normal; line-height: normal;
orphans: auto; text-align: left; text-indent: 0px; text-transform:
none; white-space: normal; widows: auto; word-spacing: 0px;
-webkit-text-stroke-width: 0px; background-color: rgb(255, 255,
255); display: inline !important; float: none;">storage.objects.size</span>)<br>
- I do just assume, this is the used value and total value can be
got from the service itself, <br>
needs confirmation<br>
* System load -- see /proc/loadavg (percentage)
(--)<br>
* Incoming traffic for each NIC (Mbps)
(
<meta http-equiv="content-type" content="text/html;
charset=ISO-8859-1">
Ceilometer-Nova as
<meta http-equiv="content-type" content="text/html;
charset=ISO-8859-1">
<span style="color: rgb(62, 67, 73); font-family: Arial, sans-serif;
font-size: 14px; font-style: normal; font-variant: normal;
font-weight: normal; letter-spacing: normal; line-height: normal;
orphans: auto; text-align: left; text-indent: 0px; text-transform:
none; white-space: normal; widows: auto; word-spacing: 0px;
-webkit-text-stroke-width: 0px; background-color: rgb(255, 255,
255); display: inline !important; float: none;">network.incoming.bytes</span>)<br>
* Outgoing traffic for each NIC (Mbps)
(Ceilometer-Nova as
<meta http-equiv="content-type" content="text/html;
charset=ISO-8859-1">
<span style="color: rgb(62, 67, 73); font-family: Arial, sans-serif;
font-size: 14px; font-style: normal; font-variant: normal;
font-weight: normal; letter-spacing: normal; line-height: normal;
orphans: auto; text-align: left; text-indent: 0px; text-transform:
none; white-space: normal; widows: auto; word-spacing: 0px;
-webkit-text-stroke-width: 0px; background-color: rgb(255, 255,
255); display: inline !important; float: none;">network.outgoing.bytes</span>)<br>
- It is connected to VM interface now, I do expect Baremetal
agent(Hardware agent) will use NICs,<br>
needs confirmation<br>
* Number of currently running instances and the associated
flavours(Ceilometer-Nova<br>
using
<meta http-equiv="content-type" content="text/html;
charset=ISO-8859-1">
<span style="color: rgb(62, 67, 73); font-family: Arial, sans-serif;
font-size: 14px; font-style: normal; font-variant: normal;
font-weight: normal; letter-spacing: normal; line-height: normal;
orphans: auto; text-align: left; text-indent: 0px; text-transform:
none; white-space: normal; widows: auto; word-spacing: 0px;
-webkit-text-stroke-width: 0px; background-color: rgb(255, 255,
255); display: inline !important; float: none;">instance:<type>
and group_by resource_id</span><span style="color: rgb(62, 67,
73); font-family: Arial, sans-serif; font-size: 14px; font-style:
normal; font-variant: normal; font-weight: normal; letter-spacing:
normal; line-height: normal; orphans: auto; text-align: left;
text-indent: 0px; text-transform: none; white-space: normal;
widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;
background-color: rgb(255, 255, 255); display: inline !important;
float: none;"></span>)<br>
<br>
<br>
The additional meters used in wireframes<br>
-----------------------------------------------------<br>
<br>
jcoufal could you add the additional measurements from the last
wireframes?<br>
<br>
<br>
The measurements the Ceilometer supports now<br>
---------------------------------------------------------------<br>
<br>
<meta http-equiv="content-type" content="text/html;
charset=ISO-8859-1">
<a
href="http://docs.openstack.org/developer/ceilometer/measurements.html">http://docs.openstack.org/developer/ceilometer/measurements.html</a><br>
<br>
Feel free to include the others into wireframes jcoufal (I guess
there will have to be different<br>
overview pages for different Resource Classes, based on their
service type)<br>
<br>
I am in the process of finding out, whether all off this
measurements will be also collected by the<br>
Baremetal agent(Hardware agent). But I would say yes, from the
description it has (except the VM<br>
specific metrics like vcpus<span style="color: rgb(62, 67, 73);
font-family: Arial, sans-serif; font-size: 14px; font-style:
normal; font-variant: normal; font-weight: normal; letter-spacing:
normal; line-height: normal; orphans: auto; text-align: left;
text-indent: 0px; text-transform: none; white-space: normal;
widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;
background-color: rgb(255, 255, 255); display: inline !important;
float: none;"></span> I guess) <br>
<br>
The missing meters<br>
-------------------------<br>
<br>
We will have to probably implement these (meaning implementing a
pollsters for the Baremetal<br>
agent(Hardware agent), that will collect these metrics)<br>
<br>
* System load -- see /proc/loadavg (percentage)
(probably for all services?)<br>
<br>
- Please add other Baremetal metrics you think we will need.<br>
<br>
<br>
Alerts<br>
====<br>
<br>
Setting and Alarm<br>
-----------------------<br>
<br>
Simplified explanation of setting the alarm:<br>
In order to have alerts, you have to set an alarm first. Alarm can
contain any statistics query, <br>
a threshold and an operator. (e.g. fire alarm when avg cpu_util >
90% on all instances of project_1). <br>
We can combine more alarms into one complex alarm. And you can
browse alarms. <br>
(There can be actions set up on alarm, but more about that later.)<br>
<br>
Showing alerts<br>
-------------------<br>
<br>
1. I would be bold enough to distinguish system-meter (e.g. similar
to cpu_util > 90%, are used <br>
for Heat autoscaling). And user-defined-meter (the ones defined in
UI). Will we show both in<br>
the UI? Probably in different sections. System meters will require
extra caution. <br>
<br>
2. For the table view of alarms, I would see it as a general
filterable order-able table of alarms. <br>
So we can easily show something like e.g. all nova alarms, all
alarms for cpu_util with condition > 90%<br>
<br>
3. Now there is a ongoing conversation with eglynn, how to show the
'aggregate alarms stats' <br>
and 'alarm time series':<br>
<meta http-equiv="content-type" content="text/html;
charset=ISO-8859-1">
<a
href="https://wiki.openstack.org/wiki/Ceilometer/blueprints/alarm-audit-api-group-by#Discussion">https://wiki.openstack.org/wiki/Ceilometer/blueprints/alarm-audit-api-group-by#Discussion</a>
<br>
Next to the overview page with predefined charts, we should have a
general filterable order-able <br>
charts (the similar interface as table view above).<br>
<br>
Here is pictured a one possible way of how the charts for Alarms
could look like on the overview page:<br>
(
<meta http-equiv="content-type" content="text/html;
charset=ISO-8859-1">
<a
href="http://file.brq.redhat.com/%7Ejcoufal/openstack-m/user_stories/racks_detail-overview.pdf">http://file.brq.redhat.com/~jcoufal/openstack-m/user_stories/racks_detail-overview.pdf</a>)
.<br>
Any feedback is welcome. Also we should figure out what Alarms will
be used for defining e.g. there is <br>
something bad happening (like health chart?). Or what alarms to set
and show as default (lot of them <br>
is already being set by e.g. Heat)<br>
<br>
4. There is a load of alerts used in wireframes, that are not
currently supported in Ceilometer (alerts can <br>
be only based on existing measurements), like instances failures,
disk failures, etc... We should write those <br>
down and probably write agents and pollsters for them. It make sense
to integrate them to Ceilometer, <br>
whatever they will be.<br>
<br>
<br>
Dynamic Ceilometer<br>
============<br>
<br>
Due to the dynamic architecture of the ceilometer, any user can
actually add his own agent or pollster and<br>
that will give him new metrics. We should count with that, when
showing charts of alarms or stats, it should<br>
not be hardcoded.<br>
<br>
E.g. user will define his own alarm (maybe of his own metrics) and
want to build a health chart from this alarm<br>
on his Overview page. So there should be only default overview
pages, that can be modified and reset back <br>
to default. That way user himself can define e.g. bad behaviour, he
wants to show.<br>
<br>
<meta http-equiv="content-type" content="text/html;
charset=ISO-8859-1">
Though this seems more like a future's future, we should think about
it at least a bit.<br>
<br>
</body>
</html>