Phelps McManus
<Silver Donator>
- 311
- 321
First, how many Airflow instances do you have? If you have thousands of DAGs spread across many instances Astro becomes more useful.
We only run around 90 DAGs, so it fits on a single instance (one web server, one scheduler - still on 2.x). I have 3 environments though, each completely isolated: prod, dev, and local. We use Azure DevOps with CI/CD pipelines so you work locally, debug and iterate as needed, then PR to dev which updates that server in less than 30s. Make sure your changes doesn’t break other DAGs (dev runs mirror of every process) and then PR to main to roll it into production. This setup has worked really well for us.
I may have reinvented the wheel, but I built my own connection/variable system that syncs each environment with Azure KeyVault. That includes rapidly standing up new local dev instances using Docker. We have over a dozen external systems we connect to and this makes rotating certificates a breeze.
Still, having third party support, presumably 24/7, sounds like a dream.