OpenStack Trove Database-as-a-Service Overview
- 2. Current feature list. User
●
Provisioning database within instance
○
●
User/Database management
○
●
●
CRUD operations, access control management
Backup/Restore functionality
Resize instance
○
○
●
Single mysql or percona instance
volume
flavor
Quota usage status
© MIRANTIS 2013
PAGE
- 3. Current feature list. Management
●
●
●
Stop/reboot/migrate instance
DB diagnostic (specific for agent
implementation)
Quota management
○
○
○
●
instances
volumes
backups
Storage usage statistics by volume
© MIRANTIS 2013
PAGE
- 5. Community roadmap
●
IceHouse
○
○
○
○
○
○
○
○
○
Generalization of core in order to improve extensibility
Database multi-”engine type”-version support
Adding support of cluster provisioning and management
Extensibility Forming complete architecture (Conductor, Scheduler)
“Amazon parameters-group”-like feature
Automated scheduled tasks
Designate/Ceilometer support
Automated failover
Tempest test coverage
© MIRANTIS 2013
PAGE
- 7. Trove future architecture
External database client
RPC
Taskmanager
RPC
Trove CLI
API
RPC
REST
RPC
Scheduler
Database
engine
Guestagent
RPC
VM
Conductor
Trove DB
© MIRANTIS 2013
PAGE
- 8. Major gaps for Trove as production grade DBaaS solution
●
●
●
●
Provision MySQL HA
○ Percona XtraDB cluster
○ MySQL Replication
Support NoSQL DB clusters
○ MongoDB
○ Cassandra
○ Redis
○ CouchDB
○ CouchBase
In-memory databases
○ MemCached
○ VoltDB
Backup/restore of cluster databases
© MIRANTIS 2013
PAGE
- 9. Conclusion
●
●
●
●
Currently supports only single instance MySQL
database
Cluster and HA support is under design
Immature architecture (tightly coupled modules,
direct access to database from DB VM, interfaces
between modules are not defined)
Under active development
© MIRANTIS 2013
PAGE
- 10. Live Demo
Demo script:
1. Instance provisioning.
2. DB & Users CRUD operations.
3. Backuping.
4. Restoring from backup.
© MIRANTIS 2013
PAGE