Managing Cassandra Databases with
OpenStack Trove
September 24, 2015
Amrith Kumar
CTO, Tesora, Inc
@amrithkumar
What are we going to be talking about?
What’s Cassandra?
What’s Datastax
What’s OpenStack? What’s Trove?
Architecture of OpenStack Trove
Capabilities of OpenStack Trove
How OpenStack Trove supports multiple databases
OpenStack Trove capabilities for Cassandra
…
Q&A
September 24, 2015
Managing Cassandra Databases with
OpenStack Trove
2
What is OpenStack? What is Trove?
September 24, 2015
Managing Cassandra Databases with
OpenStack Trove
3
The OpenStack Mission: to produce the ubiquitous Open Source Cloud
Computing platform that will meet the needs of public and private clouds
regardless of size, by being simple to implement and massively scalable.
OpenStack is open source, openly designed, openly developed by an open
community.
https://wiki.openstack.org/wiki/Main_Page
The OpenStack Open Source Database as a Service Mission: To provide scalable
and reliable Cloud Database as a Service provisioning functionality for both
relational and non-relational database engines, and to continue to improve its
fully-featured and extensible open source framework.
https://wiki.openstack.org/wiki/Trove
The Core OpenStack Services
September 24, 2015
Managing Cassandra Databases with
OpenStack Trove
4
Image from OpenStack Installation Guide (Havana) http://docs.openstack.org/havana/install-guide/install/apt/content/ch_overview.html
RackSpace
& HP
Brief History of OpenStack Trove
September 24, 2015
Managing Cassandra Databases with
OpenStack Trove
5
Started by
Rackspace &
HP as Red
Dwarf - MySQL
Enters
incubation,
multi-DB
support, eBay
joins
community
Part of
integrated
release,
Tesora joins
community
PostgreSQL
support,
MySQL
replication,
MongoDB
cluster
support
MySQL
clusters,
failover, DB2,
CouchDB
“Havana”
Oct 2013
“Icehouse”
Apr 2014
“Juno”
Oct 2014
“Kilo”
Apr 2015
OpenStack Trove Architecture
September 24, 2015
Managing Cassandra Databases with
OpenStack Trove
6
Trove Functionality
• Provisioning
– Single instances, Replicated groups, Clusters
• Backup and Restore
• Replication
• Clustering
• Database configuration management
• Resizing instances and storage
September 24, 2015
Managing Cassandra Databases with
OpenStack Trove
7
Why this makes sense
• Databases are complex
– Setup is complex and unforgiving
– Failure modes are complex
– Configuration options are numerous
• Data Loss and Data Security are paramount
• There are a number of databases in the organization
– SQL, NoSQL, Relational, Object Store, Graph, Key-Value, …
– Expertise is often fragmented
September 24, 2015
Managing Cassandra Databases with
OpenStack Trove
8
What Trove offers
• A common API for standard operations
– Across all databases
• Abstractions for popular database constructs
– Replication, Clustering, HA
• Management and Data plan clearly isolated
– Applications have direct database access
• Integrates best practices for each database
– Built into Trove
September 24, 2015
Managing Cassandra Databases with
OpenStack Trove
9
Provisioning workflow (single instance)
September 24, 2015
Managing Cassandra Databases with
OpenStack Trove
10
Generate a database backup
September 24, 2015
Managing Cassandra Databases with
OpenStack Trove
11
Provisioning workflow (from a backup)
September 24, 2015
Managing Cassandra Databases with
OpenStack Trove
12
Provision a database replica
September 24, 2015
Managing Cassandra Databases with
OpenStack Trove
13
Provision a database cluster
September 24, 2015
Managing Cassandra Databases with
OpenStack Trove
14
Apply a configuration change
September 24, 2015
Managing Cassandra Databases with
OpenStack Trove
15
Grow a cluster
September 24, 2015
Managing Cassandra Databases with
OpenStack Trove
16
Resize an instance
September 24, 2015
Managing Cassandra Databases with
OpenStack Trove
17
Database support
September 24, 2015
Managing Cassandra Databases with
OpenStack Trove
18
MySQL Percona including PXC MariaDB
Cassandra MongoDB Redis
PostgreSQL Couchbase CouchDB
Vertica DB2 Express Oracle 11g and Oracle 12c*
* Support for Oracle 11g and Oracle 12c are provided by Tesora DBaaS Platform
Not all databases support all capabilities.
Support for Cassandra and Datastax
• Trove has supported Cassandra from inception (Icehouse release)
• Support for clustered configurations coming soon
• Tesora will be adding support for Datastax
September 24, 2015
Managing Cassandra Databases with
OpenStack Trove
19
Who is Tesora?
September 24, 2015
Managing Cassandra Databases with
OpenStack Trove
20
Kilo Release Commits (March 2015)
• Leading contributor to the project
• Provides Tesora DBaaS Platform
• An enterprise grade platform
• Based on Trove
• Differentiation
• Certified Guest Images
• Support and Services
• Additional databases
• Early access to new features
• Customizations to Horizon UI
About Tesora
• The Trove company
• We wrote the book on Trove (literally)
• Web: http://www.tesora.com
• Twitter: @tesoracorp
• We’re hiring!
– Boston (Cambridge)
– Toronto (Mississauga)
– Email careers@tesora.com
September 24, 2015
Managing Cassandra Databases with
OpenStack Trove
21

Tesora: Managing Cassandra Databases with OpenStack Trove

  • 1.
    Managing Cassandra Databaseswith OpenStack Trove September 24, 2015 Amrith Kumar CTO, Tesora, Inc @amrithkumar
  • 2.
    What are wegoing to be talking about? What’s Cassandra? What’s Datastax What’s OpenStack? What’s Trove? Architecture of OpenStack Trove Capabilities of OpenStack Trove How OpenStack Trove supports multiple databases OpenStack Trove capabilities for Cassandra … Q&A September 24, 2015 Managing Cassandra Databases with OpenStack Trove 2
  • 3.
    What is OpenStack?What is Trove? September 24, 2015 Managing Cassandra Databases with OpenStack Trove 3 The OpenStack Mission: to produce the ubiquitous Open Source Cloud Computing platform that will meet the needs of public and private clouds regardless of size, by being simple to implement and massively scalable. OpenStack is open source, openly designed, openly developed by an open community. https://wiki.openstack.org/wiki/Main_Page The OpenStack Open Source Database as a Service Mission: To provide scalable and reliable Cloud Database as a Service provisioning functionality for both relational and non-relational database engines, and to continue to improve its fully-featured and extensible open source framework. https://wiki.openstack.org/wiki/Trove
  • 4.
    The Core OpenStackServices September 24, 2015 Managing Cassandra Databases with OpenStack Trove 4 Image from OpenStack Installation Guide (Havana) http://docs.openstack.org/havana/install-guide/install/apt/content/ch_overview.html
  • 5.
    RackSpace & HP Brief Historyof OpenStack Trove September 24, 2015 Managing Cassandra Databases with OpenStack Trove 5 Started by Rackspace & HP as Red Dwarf - MySQL Enters incubation, multi-DB support, eBay joins community Part of integrated release, Tesora joins community PostgreSQL support, MySQL replication, MongoDB cluster support MySQL clusters, failover, DB2, CouchDB “Havana” Oct 2013 “Icehouse” Apr 2014 “Juno” Oct 2014 “Kilo” Apr 2015
  • 6.
    OpenStack Trove Architecture September24, 2015 Managing Cassandra Databases with OpenStack Trove 6
  • 7.
    Trove Functionality • Provisioning –Single instances, Replicated groups, Clusters • Backup and Restore • Replication • Clustering • Database configuration management • Resizing instances and storage September 24, 2015 Managing Cassandra Databases with OpenStack Trove 7
  • 8.
    Why this makessense • Databases are complex – Setup is complex and unforgiving – Failure modes are complex – Configuration options are numerous • Data Loss and Data Security are paramount • There are a number of databases in the organization – SQL, NoSQL, Relational, Object Store, Graph, Key-Value, … – Expertise is often fragmented September 24, 2015 Managing Cassandra Databases with OpenStack Trove 8
  • 9.
    What Trove offers •A common API for standard operations – Across all databases • Abstractions for popular database constructs – Replication, Clustering, HA • Management and Data plan clearly isolated – Applications have direct database access • Integrates best practices for each database – Built into Trove September 24, 2015 Managing Cassandra Databases with OpenStack Trove 9
  • 10.
    Provisioning workflow (singleinstance) September 24, 2015 Managing Cassandra Databases with OpenStack Trove 10
  • 11.
    Generate a databasebackup September 24, 2015 Managing Cassandra Databases with OpenStack Trove 11
  • 12.
    Provisioning workflow (froma backup) September 24, 2015 Managing Cassandra Databases with OpenStack Trove 12
  • 13.
    Provision a databasereplica September 24, 2015 Managing Cassandra Databases with OpenStack Trove 13
  • 14.
    Provision a databasecluster September 24, 2015 Managing Cassandra Databases with OpenStack Trove 14
  • 15.
    Apply a configurationchange September 24, 2015 Managing Cassandra Databases with OpenStack Trove 15
  • 16.
    Grow a cluster September24, 2015 Managing Cassandra Databases with OpenStack Trove 16
  • 17.
    Resize an instance September24, 2015 Managing Cassandra Databases with OpenStack Trove 17
  • 18.
    Database support September 24,2015 Managing Cassandra Databases with OpenStack Trove 18 MySQL Percona including PXC MariaDB Cassandra MongoDB Redis PostgreSQL Couchbase CouchDB Vertica DB2 Express Oracle 11g and Oracle 12c* * Support for Oracle 11g and Oracle 12c are provided by Tesora DBaaS Platform Not all databases support all capabilities.
  • 19.
    Support for Cassandraand Datastax • Trove has supported Cassandra from inception (Icehouse release) • Support for clustered configurations coming soon • Tesora will be adding support for Datastax September 24, 2015 Managing Cassandra Databases with OpenStack Trove 19
  • 20.
    Who is Tesora? September24, 2015 Managing Cassandra Databases with OpenStack Trove 20 Kilo Release Commits (March 2015) • Leading contributor to the project • Provides Tesora DBaaS Platform • An enterprise grade platform • Based on Trove • Differentiation • Certified Guest Images • Support and Services • Additional databases • Early access to new features • Customizations to Horizon UI
  • 21.
    About Tesora • TheTrove company • We wrote the book on Trove (literally) • Web: http://www.tesora.com • Twitter: @tesoracorp • We’re hiring! – Boston (Cambridge) – Toronto (Mississauga) – Email careers@tesora.com September 24, 2015 Managing Cassandra Databases with OpenStack Trove 21