Implement load-balancing and failover in SQL-based backends using HAAlchemy

Registered by Rohit Jaiswal

Ceilometer has pluggable storage backends including SQL-based that use the SQLAlchemy library for connection and session management. The conventional way is to use HAProxy between the controller node and the database cluster to load-balance database requests, which requires additional configuration.

Instead, the proposal is to use HAAlchemy (http://haalchemy.readthedocs.org/en/latest/) that is a Python implementation of HAProxy in the application space and tightly integrated with SQLAlchemy connection pool.

Blueprint information

Status:
Complete
Approver:
gordon chung
Priority:
Undefined
Drafter:
Rohit Jaiswal
Direction:
Needs approval
Assignee:
Rohit Jaiswal
Definition:
Superseded
Series goal:
None
Implementation:
Unknown
Milestone target:
None
Completed by
gordon chung

Related branches

Sprints

Whiteboard

disclaimer: i've never used haalchemy... that said this seems like a sane solution... my question is this an optional path where it still allows users to use HAProxy? also, what's the intended scope of this? events only? -- gordc (28.05.15)

gordc: We can make it optional so that HAProxy can still be used, however HAalchemy seems like a better solution..This should cover both samples and events.

i see. you can open a spec i guess. not sure how this is any different from sharding in sqlalchemy -- gordc (10.7.15)

not applicable, deprecated for http://gnocchi.xyz -- gordc (2017.06)

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.