Rackslab announces the release of new version RacksDB v0.3.0! It notably brings GPU support and drawing parameters.

RacksDB is an open source solution to modelize your datacenters infrastructures. This new release brings many new interesting features, such as:

Along with its share of minor bugs fixes and general improvements.

This version has received great contributions and feedback from Bruno Travouillon (Mila), thank you so much!

The next version is already on its way, with a nice and clean web UI developed by Florian Lespérant, already available as a technical preview. This web UI provides a new user experience to explore your RacksDB database content, in addition to the REST API, the CLI and the Python library.

Here is the full content of the release notes :


  • ui: new web UI (in beta version)
  • schema:
    • Add support of optional list of GPU on NodeType (from @btravouillon).
    • Add optional initial property on RackType to define initial slot index.
    • Add support of miscellaneous equipments with MiscEquipmentType and MiscEquipment objects (#29).
    • Add support of :recursive object default to make the property default the corresponding object with all its defaults properties recursively.
    • Add optional tags property on Rack objects.
  • core:
    • Add bits defined type.
    • Add watts defined type (#23).
  • cli: Add --parameters and --drawings-schema options to draw subcommands to specify paths to respectively drawing parameters database and drawing parameters schema in YAML format.
  • draw:
    • Add schema for drawing parameters.
    • Add possibility to tune drawings settings (eg. margin, spacing, etc) with drawings parameters.
    • Add ~hexcolor defined type.
    • Add possiblity to define racks and equipment coloring rules with tags and type associations in drawing parameters (#34).
  • docs:
    • Mention web extra package installation from PyPI in quickstart guide.
    • Mention new optional list of NodeTypeGpu on NodeType in OpenAPI specification and structure reference documentation (from @btravouillon).
    • Add nodetype with GPU in examples databases.
    • Mention new ~bits and ~watts defined types.
    • Mention new optional initial property on RackType in structure reference documentation and OpenAPI specification.
    • Mention new MiscEquipmentType and MiscEquipment objects in OpenAPI specification and structure reference documentation.
    • Add miscellaneous equipment in example database.
    • Mention drawing parameters options --parameters and --drawings-schema options in racksdb and racksdb-web manpages.
    • Add documentation page for drawing parameters with howto and reference.
    • Mention new tags property on Rack object in reference documentation.
    • Mention schema properties default :recursive special value in schema documentation.
    • Prefix objects from RacksDB shema with RacksDB and add objects from drawing parameters schema in OpenAPI specification and structure reference documentation.
    • Add new datacenter and infrastructures in example database.


  • Database schema is moved from /usr/share/racksdb/schema.yml to /usr/share/racksdb/schemas/racksdb.yml.
  • schema: Use ~bits defined type instead of ~bytes for NodeTypeNetif, StorageEquipmentTypeNetif and NetworkEquipmentTypeNetif bandwidth properties (#21).
  • draw: Start rack slot numbering from rack type initial index (1 by default) instead of hard-coded 0 in infrastructure graphical representations (#24).
  • web:
    • Return REST API errors in JSON object.
    • Changed /draw route method from GET to POST with optional JSON or YAML drawing parameters in request body.
    • Add version to REST API paths.
  • docs:
    • Update supported Linux distributions in quickstart guide.
    • Update structure reference documentation and OpenAPI specification after bandwidths defined type changed from ~bytes to ~bits.
    • Use ~watts defined type in example extension and extension documentation.
    • Update examples database to new rack type initial slot index value set to 1.
    • Update equipments positionning howto to mention new default initial slot 1 and possibility to change it in database.
    • Report default value as example in REST API reference documentation when example is not defined in schema.
    • Update REST API reference documentation paths with version.


  • core:
    • Warn with message instead of failing with stack trace when defined type module cannot be loaded.
    • Report error instead of stack trace when the content of an object is not a valid mapping of properties.
  • schema: Fix typo on example attributes of some properties.
  • draw: Fix inverted represention of reversed racks row in infrastructures (#27) (from @btravouillon)
  • docs:
    • Fix URLs to defined types in structure reference after module rename (from @btravouillon).
    • Add missing properties examples in OpenAPI specification.


  • core: Remove support of bits ([MBG]b) suffix on bytes defined type in favor of new bits defined type.

For more details about RacksDB, please read its full description.

Ready to try? Follow the quickstart guide!

Useful links: