Metabase on Elastic Beanstalk
One of the most popular services AWS offers is called EC2, and stands for Elastic Cloud Compute. You can think of these EC2 instances as virtualized servers, and they are building blocks for many of the other services offered. We will be running Metabase on one or more of these EC2 instances and connecting it to a Postgres application database.
While we could deploy these services individually and connect them up, doing so is not easy. This is where the Elastic Beanstalk service comes in handy, and that is what we will use to deploy our Metabase application. The Elastic Beanstalk service abstracts away a lot of the challenges in software deployment, like installing the software, provisioning the database, monitoring the service, and handling spikes in traffic. In that sense, Elastic Beanstalk is similar to Heroku.
Specifically, when we use Elastic Beanstalk to deploy Metabase, it will automatically do the following with just a little bit of configuration...