This document outlines how to deploy AWS resources for Metaflow's AWS integrations and configure your Metaflow installation to interact with these resources. After you have deployed the server-side on AWS, you need to provide the corresponding configuration to all the users of Metaflow.
We provide two alternative approaches for deploying Metaflow on AWS. The first one is the easiest approach if you are not opinionated about your AWS setup. Choose the second manual approach if you want more flexibility.
Deploying and configuring AWS resources can be non-trivial. To address that, we have an AWS CloudFormation template that completely automates the entire process of standing up all AWS resources needed by Metaflow.
We also provide an equivalent Terraform template, in case you prefer Terraform over AWS Cloudformation.
We also understand that at times, for various organizational reasons, you might not be comfortable deploying an external CloudFormation template within your AWS account. To that end, we have also listed steps that can help you set up all the AWS resources needed manually via the AWS console.
We have an open GitHub issue for native Terraform support if you are interested in contributing. Terraform also supports directly creating a cloud formation stack, wherein you can directly embed our CloudFormation template in your Terraform configuration.