How to test consuming irconic notifications from ceilometer:
- get the patchsets from gerrit into
/opt/stack/{ceilometer,ironic}
: 105486 and 72583 ./unstack.sh && ./stack.sh
- follow instructions at developer quick start to set up a new node
ipmitool ... session info all
is required to get the mac addr of the remote baremetal (hostname is a private secret)
- make sure in ironic.conductor.manager we don't filter on 'associated: True
- change ironic.conf:
notification_driver = messaging
control_exchange = ironic
send_sensor_data = true
send_sensor_data_interval = 60
- fix code according to 07-1{4,5} comments on review. Some classes will not instantiate and the parsing needs to be cooked a bit.
- confirm
rpc_backend = rabbit
inceilometer.conf
- restart ceilo notification agent and ironic conductor
- pray and wait
After much messing about I was finally able to get this (amongst other things):
plank:ceilometer(bp-ironic-notifications) $ ceilometer statistics -m hardware.ipmi.fan -q resource_id='d6e4b911-76de-4eb7-8b72-f359e9f68102-fan_1a_tach_(0x40)'
+--------+----------------------------+----------------------------+--------+--------+--------+---------+-------+----------+----------------------------+----------------------------+
| Period | Period Start | Period End | Max | Min | Avg | Sum | Count | Duration | Duration Start | Duration End |
+--------+----------------------------+----------------------------+--------+--------+--------+---------+-------+----------+----------------------------+----------------------------+
| 0 | 2014-07-15T16:13:53.848000 | 2014-07-15T16:13:53.848000 | 4800.0 | 4800.0 | 4800.0 | 19200.0 | 4 | 1047.797 | 2014-07-15T16:13:53.848000 | 2014-07-15T16:31:21.645000 |
+--------+----------------------------+----------------------------+--------+--------+--------+---------+-------+----------+----------------------------+----------------------------+
Todo
- figure out where user_id and project_id will be in the data structure (when they are there at all) and use accordingly when creating the sample (pending input from ironic)