Fluent API Client for Openstack – Trove
Trove Overview
OpenStack Trove is a DBaaS (Database as a service) solution. It offers IT organizations the ability to operate a complete DBaaS platform within the enterprise. IT organizations can offer a rich variety of databases to their internal customers with the same ease of use that Amazon offers with its AWS cloud and the RDS product. Openstack trove supports both RDBMS as well as NoSQL databases.
DBAAS
Database as a service on cloud intends to reduce complex and repetitive administrative tasks related to database management and maintenance. Tasks involve operations such as – Database instance deployments, database creation, configuration, periodic backups of database instances, patching. It also involves continuous health monitoring for database instances.
Trove Architecture

API’s for Trove
APIs are exposed to manage following service constructs –
- Database instances
- Database instance actions
- User management
- Databases
- Flavors
- Data stores
- Configuration groups
- Clusters
- Backups
Openstack4j Popularity
OpenStack4j is an open source Openstack client which allows provisioning and control of an OpenStack system. This library has gained quite popularity in the open source/java community for the simple reason that it has the most fluent API’s available to interact with Openstack.
It also lists in the Openstack official wiki as the Java library to interact with Openstack
https://wiki.openstack.org/wiki/SDKs
Support for Trove in Openstack4j
Openstack4j being popular and most preferred Java library has immense requirement for having trove API support. With its simplistic fluent API and intelligent error handling the experience of interacting Openstack has been made easy.
Example code snippets to interact with trove:
Create Database Instance:

Create Database:

Create Database User:

Contributors: Shital Patil – shital.patil@gslab.com & Sumit Gandhi – sumit.gandhi@gslab.com