The mission for Bilean project is to provide a generic billing service for an OpenStack cloud, it implements trigger-type billing based on other OpenStack services' notification.
The primary features of the Bilean service are listed below:
- Trigger-type billing: listens on AMQP and do bill when user has resource changes.
- Seconds-level billing: provides user high-accuracy and real-time balance.
- Plugin-based object rule management enabling the creation and management for any chargeable resources.
- Flexible policy management: a policy consists of several rules and enable to add/remove rule.
An overall summary of Bilean logical architecture.
The main components of Bilean are:
- The bileanclient component is A CLI communicates with the bilean-api.
- The bilean-api component provides an OpenStack-native ReST API that processes API requests by sending them to the bilean-engine over RPC.
- The bilean-scheduler component manages all the jobs related to users and scheduler jobs to bilean-engine over RPC, a job is a timing task related to a user(Notify user to recharge .e.g.).
- The bilean-notification component monitors the message bus for data provided by other OpenStack components such as Nova, then converts notifications into billing resources and sends to bilean-engine over AMQP.
- The bilean-engine does the main billing work, operates all users, rules and policies.
- Projects on Launchpad
- Bilean: https://launchpad.net/bilean - BileanClient: https://launchpad.net/python-bileanclient
- Code Repositories
- Bilean: https://git.openstack.org/openstack/bilean - BileanClient: https://git.openstack.org/openstack/python-bileanclient
- Bug Tracking
- Bilean: https://bugs.launchpad.net/bilean - BileanClient: https://bugs.launchpad.net/python-bileanclient
- IRC channel
- #openstack-bilean at FreeNode
- Mailing list (prefix subjects with [Bilean] for faster responses)