Ken Rugg is a founder and CEO of Tesora.
Private clouds are here and delivering real value and ROI for enterprises across the board. From self-service compute to storage resources, private clouds are indispensable tools for IT managers to deliver necessary resources. With success in rolling out these initial core services, IT managers are expanding the scope of the services they provide to the users of these private clouds. Next up is the database tier, a critical function of a private cloud data center and central to enabling the largest and most important workloads in the enterprise.
As mission critical as they are, database workloads can also be the hardest to accommodate in cloud computing for a number of reasons. First, it’s well known that database servers are typically resource intensive and perform best on dedicated physical servers, rather than virtual servers and abstracted compute resources. Then, there is the issue of maintaining security and privacy of all the data contained in those databases stored outside locked-down physical servers. However, the biggest hurdle of all is probably that databases are “stateful” services, meaning that a sequence of actions are dependent on one another and any failure could result in a loss of critical information. Trying to scale or build out capacity in a reliable way, therefore, can become complex very quickly.
Here’s the good news: In April 2014, OpenStack introduced its Database-as-a Service (DBaaS) component, called OpenStack Trove. Simply put, its goal is to make it as quick and easy to deploy and manage relational or non-relational databases as it is to provision simple virtual machines or raw storage. To accomplish this, Trove automates complex administrative tasks including deployment, configuration, patching, backups, restores, and monitoring.
Shared Service Architecture
Trove leverages core components and shared services of OpenStack so that enterprises can provision DBaaS in their environment. For example, Trove uses the Nova compute service to create virtual machines on which to run database servers, Cinder block storage to provision database storage, and Swift’s object storage to capture backups.
This architecture means that Trove can leverage OpenStack shared services to take advantage of the latest services and technology. For example, an enterprise may decide to leverage OpenStack’s open APIs for standardizing high-performance storage for Cinder storage or utilize Software Defined Networking (SDN) capabilities to enhance Neutron. Since Trove is layered on these core services, its users can take advantage of these services without any special customization.
Guest Agents and Guest Images – Keys to Multi-Database Support
One of the most powerful Trove features is the way that database instances are launched and managed. Prepackaged guest images of virtual machine configurations are stored in an OpenStack repository called Glance. When a guest image boots, it unpacks itself and produces a full-service, ready-to-use database instance, eliminating the need to provision and configure the database from scratch.
The guest image includes a guest agent that manages the database instance on behalf of Trove. The guest agent is a small software module that serves as a proxy for Trove to start, stop and manage the various processes that constitute the data store. The result is an architecturally simple construct for provisioning and managing multiple database technologies.
Advantages of the Trove Architecture
A common management and provisioning RESTful API provides access to DBaaS functionality in a database-agnostic manager. Using this interface, administrators can perform a variety of functions in unified, simplified ways, such as:
- Spin up instances
- Create replicas
- Resize instances
- Add users and databases
- Manage database backups
- Change the instance configuration
Applications interact with individual database management systems using native data access APIs that execute the functions in the manner specific to that database. By separating provisioning and management from the intricacies of accessing data within individual databases, Trove makes life easy for both operators and developers. Trove provides self-service capabilities for developers to provision databases that they can query and update in the manner that they are used and on whatever database is best suited for the task at hand. At the same time, operators can manage all of these database technologies in a consistent way without requiring that they be experts in a particular database. In effect, the database becomes just another service rather than a time-consuming central focus.
The net result is a new model for how enterprises interact with their databases.
OpenStack Trove benefits include:
- Multi-database support and certification: For example, Tesora’s DBaaS platform implementation of Trove currently supports Cassandra, CouchBase, MariaDB, MongoDB, MySQL, Oracle, Percona Server, PostgreSQL and Redis. Support for additional databases is under development.
- Single management interface for many database technologies: Common administrative tasks including provisioning, deployment, configuration, tuning and monitoring are achieved in a simple, unified way.
- Automated backup and recovery: Minimizes data loss and protects against hardware failure with redundant backups.
- When OpenStack is deployed as a private cloud inside the data center, it adheres with enterprise best practices and policies, such as data retention, data privacy, encryption and backups.
Trove has made fast progress in its short life and is currently in production on a very large scale at Rackspace and HP in their public cloud offerings. Also, eBay and several other major enterprises have also started using Trove in their business operations in private clouds. So, as you can see, Trove has become a big part of IT's transition to the cloud, and is ready for the real world.
Industry Perspectives is a content channel at Data Center Knowledge highlighting thought leadership in the data center arena. See our guidelines and submission process for information on participating. View previously published Industry Perspectives in our Knowledge Library.