Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

How eBay Uses OpenStack Trove in Production

DZone's Guide to

How eBay Uses OpenStack Trove in Production

· Cloud Zone ·
Free Resource

Learn how to migrate and modernize stateless applications and run them in a Kubernetes cluster.

I came across a conference video starring Auston McReynolds and Mat Lowery, both software engineers at eBay, who go on to describe the use and role of OpenStack Trove in eBay's process.

Mat Lowery opens the video with a discussion of eBay's private cloud, and how it needs to be a multi-tenant environment to handle all the various subsidiaries that eBay services. The eBay cloud is private, but it seems similar to a public cloud setup--it has shared infrastructure, is multi-tenant, and has on-demand access. This eBay private cloud is built on OpenStack, and one of the major resources that needs to go into their cloud infrastructure is databases--hence where Trove comes on board.

Auston McReynolds joins the discussion to elaborate on how they use OpenStack Trove for database deployments at scale. They currently at eBay have Icehouse rolled out, and they support datastores for the latest builds of MongoDB, MySQL, Cassandra, Couchbase, and Redis. He also goes into more about the details of deployment, and some of the obstacles facing eBay such as deploying multi-region datastores, implementing RabbitMQ, and various other roll-outs. eBay developers can now choose from six databases, which demonstrates eBay's agility in providing these kinds of resources for developers, and what can be accomplished with Trove.

For a better look at their presentation, including graphics for topologies and architecture, watch the video of it below.

Trove in Production at eBay from Tesora on Vimeo.

Join us in exploring application and infrastructure changes required for running scalable, observable, and portable apps on Kubernetes.

Topics:

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}