Hey guys, I would like to try and give it a shot t...
# announcements
d
Hey guys, I would like to try and give it a shot to run Meltano in Kubernetes, do you have any pointers on how to correctly proceed? If I understand it from the docs properly, initContainer should create a project and then the main process should spawn UI for the project. Any hints or yamls would be greatly appreciated.. 🙂
b
Hey @dejwoo! Right. So as long as you can get a
pip install meltano
working on your image, that gets you a large part of the way
d
what I have so far is, create stateful set to be able to run multiple projects by just scaling the stateful set (i know it seems a bit of a hack on the service part) but by selectors I can create services for each project
ports 5000 and airflow one (5100?) are no problem
I was thinking about using the docker container from the docs
b
Cool
Honestly as you’re working through the Kubernetes build, we’d love any docs you could generate on your process
I know we’d love to have documentation on that, but the team isn’t working on that at the moment
d
yeah, no problem I can share my findings, I am just trying to figure out how to streamline the most the project creation with the UI process
Probably Kubernetes Operator is the most correct way, to create CRD for Meltano Projects, that way spawning Deployments for each project is a breeze (also with all other necessary parts)
m
At some point we'll have to figure this one out be we ain't there yet. Happy to look at what you are doing with that and feel free to contribute to https://gitlab.com/meltano/meltano/issues/1018
I would think that Meltano projects should probably live in source control, so you build a docker image with the latest version in CI and Deploy that image. As for Airflow it probably will end up being in a different pod because you don't need/want to autoscale the master process.
but this is just theoretical, because we need an access to the airflow CLI
Then you'd have a Pod for Airflow workers using the docker image with your project inside it.