Creating an issue to outline the overall approach here. We can break things out from here into a README or separate issues as needed.
The purpose of this repository is to setup a deploy process using terraform to deploy osm-seed instances onto a Kubernetes cluster on Azure.
This repository will contain:
Terraform templates for all the resources that need to be created on Azure: a Kubernetes cluster, required node pools / VMs to be part of the cluster, storage containers that are required, and terraform templates to install the Helm charts required to run osm-seed and dependencies.
Scripts to deploy the stack via terraform, delete a stack, etc.
Setup with Github Actions to manage CI / auto-deploys
Documentation on setting up, debugging issues, etc.
A few questions:
If we are running multiple instances of osm-seed, how do we want to manage this? I would ideally find a good way to run all the instances on a single kubernetes cluster, primary for cost-saving reasons. We could just add terraform resource definitions for additional helm installs of osm-seed instances onto separate namespaces onto the cluster.
Are we going to need custom containers / customized versions of any of the containers provided by osm-seed? If yes, we should follow a pattern that allows us to over-ride and add individual containers into osm-seed as needed. We can roughly follow a similar pattern to https://github.com/OpenHistoricalMap/ohm-deploy/ where we:
create a helm chart for hot-osm-seed or so, that has the upstream osm-seed chart as a requirement.
We can get started in scaffolding out all the terraform stuff and get something working from our local machines to deploy onto Azure, and then figure out some of the details above as well as setup CI.
Creating an issue to outline the overall approach here. We can break things out from here into a README or separate issues as needed.
The purpose of this repository is to setup a deploy process using terraform to deploy osm-seed instances onto a Kubernetes cluster on Azure.
This repository will contain:
A few questions:
osm-seed
? If yes, we should follow a pattern that allows us to over-ride and add individual containers into osm-seed as needed. We can roughly follow a similar pattern to https://github.com/OpenHistoricalMap/ohm-deploy/ where we:hot-osm-seed
or so, that has the upstreamosm-seed
chart as a requirement.chartpress
to build any custom containers and over-ridevalues
inosm-seed
with locations of custom images, roughly like so: https://github.com/OpenHistoricalMap/ohm-deploy/blob/main/chartpress.yamlWe can get started in scaffolding out all the terraform stuff and get something working from our local machines to deploy onto Azure, and then figure out some of the details above as well as setup CI.
cc @geohacker @dakotabenjamin @Rub21