Open Source for Open Knowledge
Introducing Database as a Service on Cloud VPS
July 19, 2021
Cloud ServicesAndrew Bogott
This post introduces a new service, Database as a service, on Cloud VPS.
By Andrew Bogott, Senior Site Reliability Engineer

Screenshot, Andrew Bogott, CC BY-SA 4.0
Introducing Database as a Service on Cloud VPS
The addition of attachable block storage on Cloud VPS has cleared the path for several nifty cloud additions. The most recent of these is Trove, Openstack’s Database as a Service (DBaaS) implementation.
Historically, when users have asked where to put their databases, we’ve never had a perfect answer. Some databases wound up hosted on NFS (which provides dismal IO performance), or on local storage (decent performance but always one crash away from data loss), or borrowed from Toolforge (where they share a single host with hundreds or thousands of other tiny databases.) Trove provides a new path that is almost certainly better than the previous options.

Screenshot, Andrew Bogott, CC BY-SA 4.0
Trove provides a straightforward Horizon UI for creating new databases with a minimum of sysadmin expertise. When the database is launched from Horizon, Trove will create a Cinder volume for data storage and a database instance that runs the actual database engine. Both the backing volume and the engine instance are scalable, so as your data or traffic grows you can add storage or processing capacity without interrupting service or rebuilding your database.

Screenshot, Andrew Bogott, CC BY-SA 4.0
You can then copy and paste the hostname or connection details onto your working server, get a
prompt, and get to work. Or, if you prefer, the Trove Horizon UI also supports simple management tasks: creating users and databases and simple grants.
So far, we’ve enabled Postgres, MySQL, and MariaDB backends. A few other backends have been available from time to time with unclear support or reliability; if you crave a different database engine, it won’t hurt to ask.
Trove also supports Horizon-driven replication and backup; both of these features require object storage to work properly, and WMCS doesn’t currently provide an object storage backend. We plan to implement this within the coming year. In the meantime, I encourage users to do periodic backups by hand using something like
Trove databases consume separate project quotas from the existing instance and storage quotas. All projects have small database quotas enabled by default. When you’re ready to use this feature in earnest please open a quota request.
That’s the good news! Now, here’s the bad news:
Please give Trove a try, and let us know how it goes!
About this post
Noctilucent-clouds-msu-6817.jpg​, Matthias Süßen, CC BY-SA 4.0
Cloud Services databaseTrove Wikimedia Cloud Services
1 thought on “Introducing Database as a Service on Cloud VPS”
Raju says:
AUGUST 5, 2021 AT 2:52 PM
Your email address will not be published. Required fields are marked *
Save my name, email, and website in this browser for the next time I comment.
Notify me of follow-up comments by email.
Notify me of new posts by email.
Alone together: Wikimedia Hackathon 2021
Wikimania 2021 Hackathon: 24 hours to experiment with other Wikimedians
Privacy Policy | About
Wikipedia® and other Wikimedia project names and logos are registered trademarks of the Wikimedia Foundation, a non-profit organization.
Unless otherwise stated content is licensed under a CC BY-SA 4.0 international license.
Powered by VIP, Automattic Privacy Notice.
Learn more about the
Wikimedia Foundation
Follow us on Twitter @wikimediatech