what is openstack trove? trove day 2014

31
August 19, 2014 OpenStack Trove Day Nikhil Manchanda, Trove Project Technical Lead, HP Doug Shelley, VP of Product Development, Tesora What is Trove?

Upload: tesora

Post on 01-Dec-2014

907 views

Category:

Software


2 download

DESCRIPTION

Presentation at OpenStack Trove Day 2014 by Nikil Manchanda, Trove Project Lead, HP and Doug Shelley, VP of Products, Tesora

TRANSCRIPT

Page 1: What is OpenStack Trove? Trove Day 2014

August 19, 2014

OpenStack Trove Day

Nikhil Manchanda, Trove Project Technical Lead, HPDoug Shelley, VP of Product Development, Tesora

What is Trove?

Page 2: What is OpenStack Trove? Trove Day 2014

Mission StatementTo 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.

8/19/14 tesora.com 2

Page 3: What is OpenStack Trove? Trove Day 2014

What is Trove?

• Service to provision and manage Databases in an OpenStack Cloud

• Integrated OpenStack Project

• Exposes APIs to• Provision Instances• Scale instance sizes (memory / cpu)• Scale storage size• Take backups of data• Manage databases/schemas• Manage db users and permissions

8/19/14 tesora.com 3

Page 4: What is OpenStack Trove? Trove Day 2014

Cinder VolumeCinder VolumeCinder VolumeCinder Volume CinderCinderCinder VolumeCinder Volume

trove-apitrove-api

trove-conductortrove-conductor

trove-taskmanager

trove-taskmanager

Message Bus

Message Bus

NovaNovaCompute InstanceCompute InstanceGuest AgentGuest Agent

SwiftSwift

SQL/NoSQLSQL/NoSQL

BackupBackup

DataData

BackupBackupDB BackupDB Backup

DBDB

GlanceGlanceBackupBackupBackupBackupGuest ImageGuest Image

KeystoneKeystone

Nova-N

etworking/N

eutronN

ova-Netw

orking/Neutron

DataDataDataData

Trove Architecture

TroveTrove

8/19/14 tesora.com 4

Page 5: What is OpenStack Trove? Trove Day 2014

Managing a Trove Database

• Create Database / Schema

• Create users

• Grant permissions to a User to a Schema

• Enable Root User

• Resize flavor

• Resize volume

8/19/14 tesora.com 5

Page 6: What is OpenStack Trove? Trove Day 2014

Trove Backups

• Fully Managed

• Triggered and Tracked via API

• Streamed to Swift (OpenStack Object Storage)

• Incremental as well as Full backups

• Formats:• XtraBackup (Percona)• mysqldump

8/19/14 tesora.com 6

Page 7: What is OpenStack Trove? Trove Day 2014

Trove is Tuned

• Automatically tune my.cnf by Flavor• Buffer Pool Size• Log file size• max_connections

• Sane defaults• InnoDB only• Disable load data infile• Disable select into outfile

• New API to programmatically set configuration groups

8/19/14 tesora.com 7

Page 8: What is OpenStack Trove? Trove Day 2014

Trove is Secure

• Security Groups to manage Access

• Turn off SSH

• Remove anonymous user

• Remove non-localhost users

• Remove local file access

• Mangle root user password

• Apply security patches automatically

8/19/14 tesora.com 8

Page 9: What is OpenStack Trove? Trove Day 2014

Features in Icehouse

Page 10: What is OpenStack Trove? Trove Day 2014

Non Relational DB Types• Support for datastore type, and version

• Support for • Cassandra• MongoDB• Redis• Couchbase

• Currently only supports single instances

8/19/14 tesora.com 10

Page 11: What is OpenStack Trove? Trove Day 2014

DNS Support

• Integration with Designate

• Provision Trove instances with DNS name

8/19/14 tesora.com 11

Page 12: What is OpenStack Trove? Trove Day 2014

Configuration Groups

• Support for user defined configuration settings

• Supports defining certain mysql (my.cnf) settings

• Allow grouping settings, and targeting groups to instances

8/19/14 tesora.com 12

Page 13: What is OpenStack Trove? Trove Day 2014

Heat Integration

• Support for configuration based “heat” mode

• Default heat templates for each datastore provided

• Supports user-defined custom heat templates per datastore

8/19/14 tesora.com 13

Page 14: What is OpenStack Trove? Trove Day 2014

Incremental Backup / Restore

• No longer necessary to perform full backups every time

• Specify a “parent” backup in API call

• Leverages xtrabackup to perform incremental backup

8/19/14 tesora.com 14

Page 15: What is OpenStack Trove? Trove Day 2014

Trove Conductor

• New component added to Trove Control Plane

• Guest no longer needs direct connection to the Trove DB

• Uses RPC messages to communicate with guest

• Supports heartbeat messages, and backup / restore checks

8/19/14 tesora.com 15

Page 16: What is OpenStack Trove? Trove Day 2014

Miscellaneous

• Goodbye XML API

• Support for Tempest API tests

• Trove Deployment Guide

8/19/14 tesora.com 16

Page 17: What is OpenStack Trove? Trove Day 2014

New in Juno

Page 18: What is OpenStack Trove? Trove Day 2014

Replication

• Asynchronous mysql master-slave replication

• Support for new, and existing instances

• Ability to Promote / Detach Slave

8/19/14 tesora.com 18

Page 19: What is OpenStack Trove? Trove Day 2014

Neutron Support

• Add Neutron NICs on instance create

• Support default Neutron Networks

• Horizon (Trove dashboard) enhancements

8/19/14 tesora.com 19

Page 20: What is OpenStack Trove? Trove Day 2014

Configuration Groups Enhancements

• Configuration Groups per datastore and version

• Configuration Groups for MongoDB

• Configuration Groups Enhancements• Allow users to add descriptions to groups• Better schema-based validation for values

8/19/14 tesora.com 20

Page 21: What is OpenStack Trove? Trove Day 2014

Datastore Improvements

• Associate flavors with datastores

• Initial Support for other datastores• PostgreSQL • Vertica

8/19/14 tesora.com 21

Page 22: What is OpenStack Trove? Trove Day 2014

Enhancements to Backups

• Cross-region availability of backups

• Backup/restore for non-mysql datastores• Cassandra• Couchbase

8/19/14 tesora.com 22

Page 23: What is OpenStack Trove? Trove Day 2014

Testing Enhancements

• More Tempest tests• Guest level API tests• Client tests• Scenario tests

• Support for Upgrade testing through Grenade

8/19/14 tesora.com 23

Page 24: What is OpenStack Trove? Trove Day 2014

Miscellaneous

• Support for Capabilities

• Migrate to oslo.messaging

• Heat enhancements

• Improved Logging and Documentation

8/19/14 tesora.com 24

Page 25: What is OpenStack Trove? Trove Day 2014

Replication in Trove

Page 26: What is OpenStack Trove? Trove Day 2014

8/19/14 tesora.com 26

• Community decided on a versioned approach• First version is in Juno• Goal is to provide read replicas for MySQL• Subsequent releases will add more

capabilities:• Master-master• Failover• Multi-zone disaster recovery• Choice of replication strategies

Replication - Overview

Page 27: What is OpenStack Trove? Trove Day 2014

8/19/14 tesora.com 27

• Launch slave from existing master• Slave bootstrapped with snapshot of master• Uses MySQL native asynch replication• Started from snapshot provided binlog position• Master can support many slaves• Replication is monitored; instance status

changes for delay or disconnect• Slaves can be promoted (i.e. detached from

Master)

Replication – Juno Capabilities

Page 28: What is OpenStack Trove? Trove Day 2014

Replication DemoSneak preview of Tesora DBaaS Platform Enterprise Edition

Page 29: What is OpenStack Trove? Trove Day 2014

Your Idea Here!

• Growing community of contributors

• Open to new ideas, and code

• Lots of room for improvement

• Find us at #openstack-trove on FreeNode.

8/19/14 tesora.com 29

Page 30: What is OpenStack Trove? Trove Day 2014

Questions?

Page 31: What is OpenStack Trove? Trove Day 2014

Thank You

8/19/14 tesora.com 31