RacksDB is an open source solution to modelize your datacenters infrastructures. It provides a simple database schema to store information about the equipments in your datacenters. This database can be used as reference source for many purposes in IT management.
- Inventory: Get permanent reference list of equipments charactistics and enable conformity testing.
- Automation: Adopt Infrastructure-as-Code by coupling generic configuration management logic with infrastructures model.
- Continuous deployment: Define advanced deployment rules based on nodes characteristics declared in RacksDB.
- Monitoring: Synchronize monitoring services with equipments database and define dynamic dashboard.
- Documentation: Get updated architecture diagrams and define generic adaptative procedures.
Generally speaking, RacksDB is a specialized CMDB dedicated to DCIM.
Compared to others products, RacksDB can be considered lightweight alternative to more advanced tools such as NetBox and RackTables.
The main characteristics of RacksDB that makes it unique among other solutions are the following:
- YAML based. The data are stored in plain files using human-readable YAML format, easily managed with Git.
- Simple and pragmatic. The database schema is intuitive and practical, infrastructures can be described in few minutes.
- Tag-based. Easy filtering of data and equipments based on associated tags.
- Decentralized architecture. RacksDB can be deployed without central server, just by replicating few plain YAML files.
- Extensibility. In addition to RacksDB simple format, custom schema extensions can be defined to store specific data.
RacksDB provides multiple interfaces to request the database with its CLI tool, a Python library, a REST API and a Web UI.
For more details, read the full description of RacksDB.
RacksDB is considered stable and ready for production.
To install and start using RacksDB in a few steps, follow the quickstart guide!
The full documentation of RacksDB is available online with complete database definition reference documentation, how-tos (extensions, positioning), CLI manpage and library API documentation.
Do you want to get in touch with developers and the community? Several channels are available:
-
Matrix Chat #racksdb:talk.rackslab.io: instant messaging for quick feedback and help.
[!NOTE] A Matrix account is required to access the chat room. It can be created in few steps on any Matrix network public provider such as matrix.org or gitter.im.
-
GitHub Discussions: send questions, ideas and suggestions.
RacksDB is developed and maintained by Rackslab. Please contact us for any questions or professionnal services.
The project has also received external contributions from great people:
To run the unit tests, launch this command:
$ python3 -m unittest discover -v .
RacksDB is distributed under the terms of the GNU General Public License v3.0 or later (GPLv3+).