Difference between revisions of "Trove/ceilometer integration"
< Trove
(Created page with "= Ceilometer integration = == Notifications == Trove will emit events for resources as they are manipulated. These events can be used to meter the service and possibly used...") |
|||
Line 1: | Line 1: | ||
= Ceilometer integration = | = Ceilometer integration = | ||
− | |||
− | |||
− | |||
− | |||
=== Description === | === Description === | ||
Line 20: | Line 16: | ||
** backup.create.start|end|error | ** backup.create.start|end|error | ||
** backup.delete.start|end|error | ** backup.delete.start|end|error | ||
+ | |||
+ | === Justification/Benefits === | ||
+ | |||
+ | ==== Justification ==== | ||
+ | Trove should emit events for resources as they are manipulated. These events can be used to meter the service and possibly used to calculate bills. Notification Events: [[trove/trove-notifications]] | ||
+ | |||
+ | ==== Benefits ==== | ||
+ | * Ability to integrate with Ceilometer | ||
+ | * Ability to integrate with billing systems in terms of Public cloud deployments | ||
+ | |||
+ | |||
+ | === Impacts === | ||
+ | |||
+ | Existing notifications events are going to be changed: | ||
+ | * create -> instance.create.start|end|error | ||
+ | * delete -> instance.delete.start|end|error | ||
+ | * modify_flavor -> resize.flavor.start|end|error | ||
+ | * modify_volume -> resize.volume.start|end|error | ||
+ | |||
+ | New notifications are going to be added: | ||
+ | * backup.create.start|end|error | ||
+ | ** start and/or error notifications are going to be sent by taskmanager | ||
+ | ** end and/or error notifications are going to be sent by conductor (because conductor is the only one place to verify that backup was created properly) | ||
+ | * backup.delete.start|end|error (all notifications are emited by taskmanager) | ||
+ | |||
+ | |||
+ | ==== Configuration ==== | ||
+ | No changes | ||
+ | |||
+ | === Database === | ||
+ | No changes | ||
+ | |||
+ | === Public API === | ||
+ | |||
+ | ==== New routes ==== | ||
+ | No changes | ||
+ | |||
+ | ==== Modifications to existing ==== | ||
+ | No changes | ||
+ | |||
+ | === Internal API === | ||
+ | ------------------------------------------------------------------------------------------------------------------------------------- | ||
+ | |||
+ | ==== From trove-api to trove-taskamanger ==== | ||
+ | |||
+ | No changes | ||
+ | |||
+ | ------------------------------------------------------------------------------------------------------------------------------------- | ||
+ | |||
+ | ==== From trove-taskamanger to trove-guestagent ==== | ||
+ | No changes | ||
+ | |||
+ | |||
+ | |||
+ | = Ceilometer plugin = | ||
+ | |||
+ | Ceilometer plugin should be implemented right after all notification modifications are merged into Trove codebase | ||
+ | Ceilometer blueprint https://blueprints.launchpad.net/ceilometer/+spec/trove-plugin |
Revision as of 08:55, 21 July 2014
Ceilometer integration
Description
Trove should emit notifications in for different events, such as:
- Instance events:
- instance.create.start|end|error
- instance.delete.start|end|error
- instance.resize.start|end|error
- instance.migrate.start|end|error
- instance.reboot(restart?).start|end|error
- instance.fail
- Backup events:
- backup.create.start|end|error
- backup.delete.start|end|error
Justification/Benefits
Justification
Trove should emit events for resources as they are manipulated. These events can be used to meter the service and possibly used to calculate bills. Notification Events: trove/trove-notifications
Benefits
- Ability to integrate with Ceilometer
- Ability to integrate with billing systems in terms of Public cloud deployments
Impacts
Existing notifications events are going to be changed:
- create -> instance.create.start|end|error
- delete -> instance.delete.start|end|error
- modify_flavor -> resize.flavor.start|end|error
- modify_volume -> resize.volume.start|end|error
New notifications are going to be added:
- backup.create.start|end|error
- start and/or error notifications are going to be sent by taskmanager
- end and/or error notifications are going to be sent by conductor (because conductor is the only one place to verify that backup was created properly)
- backup.delete.start|end|error (all notifications are emited by taskmanager)
Configuration
No changes
Database
No changes
Public API
New routes
No changes
Modifications to existing
No changes
Internal API
From trove-api to trove-taskamanger
No changes
From trove-taskamanger to trove-guestagent
No changes
Ceilometer plugin
Ceilometer plugin should be implemented right after all notification modifications are merged into Trove codebase Ceilometer blueprint https://blueprints.launchpad.net/ceilometer/+spec/trove-plugin