Database Administration in a Cloud Native World with Terraform at Tumelo
Learn how HashiCorp Terraform can be used as a vehicle to configure the infrastructure of cloud native databases, as well as the rest of your infrastructure.
See examples of database management tools in the cloud native space, including Terraform.
In this new paradigm of software development, we have come to expect our software to be evermore portable and with it we reap the benefits. Similarly, we should expect the same of our databases.
Looking at MySQL, in its rawest and earliest form, it was a server with an implementation of SQL. That said, it has grown to be so much more than just that. It is an interface from which implementations can scale from a Docker container used for testing and local development, all the way to huge horizontal clusters like Vitess. Amazon even provides a serverless implementation of MySQL with Aurora. The manners in which you can connect to MySQL are also increasingly diverse as well, from simple unsecured connections, through SSH connection, and all the way to cloud-provider proxies.
HashiCorp Terraform is the vehicle to configure the infrastructure of these cloud native databases, as well as the rest of your infrastructure. Terraform empowers the developer to make the choice on where to split data: at instance/database or schema level. By demoing some work the talk will hopefully demonstrate the potential portability of the configuration.
What You'll Learn
The ability to test a setup and then deploy that setup in a production environment can become trivial. Finally, to illustrate some real-life benefits, the talk will briefly conclude with a use case at Tumelo that groups some of those ideals. At Tumelo, with the help of Terraform, we are moving from a model where each service owns its own database instance, to one where we now securely share the instance.
Speaker: Ben King