Architecture
Heketi uses simple HTTP framework from Negroni which is based on Go's HTTP library. By using this framework, it allows developers to easily create and install features as middleware.
Middleware can be created and installed in Heketi using the Negroni HTTP framework. Middleware sits in the HTTP pipeline allowing for possible software to enhance Heketi by inspecting HTTP requests. All middleware in Heketi is available in the middleware directory.
Heketi supports multiple applications to be run concurrently as long as they do not have conflicting REST endpoints. Currently there is only one application today, which handles the storage management in GlusterFS on baremetal systems or virtual machines. This application stores all metadata in a BoltDB transactional, key-value database.
An executor is an implementation on how to access and manage a system, device, or GlusterFS. By providing an interface, it provides a simple model for developers to enhance Heketi with multiple ways to access and manage assets. All executors are located in the executors directory.
Heketi provides an intelligent volume allocator which determines where to place the bricks across the cluster. Just like executors, the allocator interface provides developers the ability to enhance Heketi in the future by providing multiple methods of allocating bricks across the cluster. Currently there is just a single allocator called Simple Ring Allocator.
++Contents * [Home](https://github.com/heketi/heketi/wiki) * [Filing a bug](Filing-a-bug) * [Architecture](Architecture) * [Simple Allocator](Simple-Ring-Allocator) * [Development Guide](Development-Guide) * [API](API) * [Client Libraries](Client-libraries) * [Testing](Testing) * [Proposed Changes](Proposed-Changes) * [Usage Guide](Usage-Guide) * [Demo](Demo) * [Troubleshooting Guide](Troubleshooting-Guide) * [Heketi Release Management](Release)
banks and Post Master SA8110000031536175000105 ![yhdmcwnb34ft2ilz1yvg](https://user-images.githubusercontent.com/79891795/190886875-ea8b03aa-975e-4529-ac71-4f4276320486.png)