Replace RPC cast() with notifications
Ceilometer uses rpc.cast() calls internally to send sample data from the pipeline to the collector. We chose that route because we wanted to be able to scale the collector horizontally, and there was no way at the time to subscribe multiple consumers to notifications. Now that there is, we should switch to a notification format, to make it easier for third-party consumers of our sample data. The message payload shouldn't need to change substantially to make that work, and we can continue to publish the old RPC endpoint for now to make upgrades easier.
Blueprint information
- Status:
- Complete
- Approver:
- gordon chung
- Priority:
- Undefined
- Drafter:
- Doug Hellmann
- Direction:
- Approved
- Assignee:
- Mehdi Abaakouk
- Definition:
- Approved
- Series goal:
- Accepted for juno
- Implementation:
- Implemented
- Milestone target:
- 2014.2
- Started by
- Julien Danjou
- Completed by
- Mehdi Abaakouk
Related branches
Sprints
Whiteboard
Gerrit topic: https:/
Addressed by: https:/
Consume notif. from multiple message bus
Addressed by: https:/
Use NotificationPlugin as an oslo.msg endpoint
Addressed by: https:/
Use oslo.msg retry API in rpc publisher
Addressed by: https:/
Permit usage of notifications for metering
Addressed by: https:/
Replace oslo.rpc by oslo.messaging
Addressed by: https:/
Allow to requeue a sample
Addressed by: https:/
Document pipeline publishers configuration
Work Items
Dependency tree
* Blueprints in grey have been implemented.