Trove – IBM Contributions to Kilo Release

Author: Mariam John
Source: Planet OpenStack

Trove is the database as a service component of OpenStack and its main purpose is to provide a highly available and scalable database service that enables users to provision and manage both relational and non-relational databases effortlessly. Some of the main features supported by Trove include creating and managing database instances, databases, user access management, backups and restore, replication, clustering and configuration group management.


Trove – Kilo Release Recap

In the latest release of Trove, several new features were added including support for new datastores, enhancing Replication and Cluster Support and improving Trove documentation. Here is a detailed list of some of the key features implemented in the Kilo release:

  • Cleanup Trove code to remove deprecated oslo-incubator modules as well as upgrade to the graduated oslo modules.
  • Support for MySQL Replication V2 was added. In the Juno release, V1 Replication focused on providing read-replication for MySQL v5.5 with no failover. In V2, a new strategy was implemented to support GTID (Global Transaction ID) based replication for MySQL v5.6 in addition to the bin-log replication from V1.
  • Added support for three new datastores – Apache CouchDB, DB2 Express-C and HP Vertica. This also included providing a mechanism to create images for datastores whose packages are not available for download from a public repository and/or requires a registration process to access these packages for download.
  • Support for clusters was added during the Juno release and included support for the basic MongoDB cluster framework (three member replica set shards). In the Kilo release, this was extended to add support for HP Vertica CE clusters (three nodes for fault tolerance).
  • Introduced classifications of datastores and strategies to measure the readiness based on capabilities supported and test coverage for these datastores. This will help determine which datastores are experimental and which ones are suitable for general use. Datastores can be classified as experimental, technical-preview or stable and strategies (replication, clustering and backups) can be classified as experimental and stable. To read more about datastore and strategy classification, follow this link.
  • As part of improving the Trove documentation, a section was added to the developer docs on how to build guest images for Trove.


IBM Contributions – Kilo Release

IBM officially started contributing to Trove in the Kilo release. In this release, we added support for two new datastores: DB2 Express-C and Apache CouchDB.

For DB2 Express-C, the following features were implemented:

  • Create DB2 Express-C images : Enables users to create DB2 Express-C images for Ubuntu to provision DB2 server instances using the redstack script.
  • Launch/Terminate DB2 instances – Allows users to create a single DB2 server instance
  • Start/Stop/Restart DB2 instances
  • Create/Delete/List database(s) – Allows users to create and manage one or more databases within a database instance
  • Create/Delete/List User(s) – Enables users to create and manage users and grant access to databases
  • Use Cinder volumes to store DB2 data – Enables users to specify a Cinder Volume to store DB2 data
  • Resize instance/volume – Enables users to resize the server instance or Cinder Volume to manage data growth.

For Apache CouchDB, the following features were implemented:

  • Create CouchDB images – Enables users to create CouchDB images to provision CouchDB instances
  • Launch/Terminate instances of the CouchDB server
  • Start/Stop/Restart CouchDB server
  • Use Cinder volumes to store CouchDB data
  • Resize volumes

Audit support was also added for the various APIs in Trove including Database Instance, Databases, Users, Flavors, Configuration, Datastore Types and Replication. This enables OpenStack to send audit events related to database provisioning and management to auditing applications like QRadar.

To get an overview of all the contributions that IBMers have made during the Kilo release, please visit the blog.


Planning for Liberty Release

Looking forward to the Liberty release, we plan on adding more features and capabilities to the DB2 and CouchDB guest agents like backups and restores as well as adding support for the DB2 SQLALchemy driver in the DB2 guest agent. In addition, we are also looking to add initial support for new datastores as well as setting up third party CI’s for these new datastores and adding stable voting tests as part of the gate. There is a lot of exciting work ahead in the Liberty release and I am excited about the upcoming OpenStack Summit at Vancouver to share our ideas and learn from our fellow OpenStackers.

The post Trove – IBM Contributions to Kilo Release appeared first on IBM OpenTech.

Powered by WPeMatico