ZooKeeper SyncManager
Today Ironic does database-backed locking for various things. Currently, there is a column in the node table, which a process can put its hostname in to "lock" the node so that other processes will not attempt to mess with the data. While this works, it is vulnerable to deadlock scenarios when a conductor is partitioned or dies, which can lead to nodes being locked in the database until a third party (be it human or script) intervenes and removes the lock. Apache ZooKeeper has built in mechanisms that allow for implementation of a safer locking mechanism that releases locks upon client disconnect. The purpose of this spec is to implement ZooKeeper backed locking.
Blueprint information
- Status:
- Not started
- Approver:
- None
- Priority:
- Undefined
- Drafter:
- Kyle Stevenson
- Direction:
- Needs approval
- Assignee:
- Kyle Stevenson
- Definition:
- New
- Series goal:
- None
- Implementation:
- Unknown
- Milestone target:
- None
- Started by
- Completed by
Related branches
Related bugs
Sprints
Whiteboard
Gerrit topic: https:/
Addressed by: https:/
Add ZooKeeper SyncManager spec to Kilo specs
Addressed by: https:/
Add implementation of ZooKeeper SyncManager
Addressed by: https:/
Add implementation of pluggable distributed sync