Awesome, thanks for the update!

On Fri, Apr 10, 2020 at 6:57 PM Greg Neiheisel <g...@astronomer.io> wrote:

> Hey everyone, just wanted to post a quick update on the helm chart. We're
> in the process of removing any references to Astronomer specific things and
> making them more general features. That work is happening on this PR here
> https://github.com/astronomer/airflow-chart/pull/66. Hoping to wrap up
> the last few outstanding items and open up a PR to Airflow next week
> sometime!
>
> On Fri, Apr 3, 2020 at 10:19 AM Daniel Imberman <daniel.imber...@gmail.com>
> wrote:
>
>> Hi Jarek,
>>
>> Congrats on getting the image out! This is going to make a lot of things
>> easier :). We’ve actually been working on separating out KinD as well (and
>> in fact moving it out of travis and into GitHub issues). Let me circle back
>> with Steven (the engineer who’s been working on that) and get a status
>> report from him.
>>
>> I will also take some time today to get our helm chart to work with
>> the airflow master image. It’s been a bit crazy around here in the last few
>> weeks but I am consistently pushing to make sure we make the final changes
>> of ripping out any remaining platform components before we donate :).
>>
>> I agree that docker hub automation will be great. This will also allow us
>> to have a nightly build for any integration/UI tests we build.
>>
>> Thanks again Jarek!
>>
>> Daniel
>>
>> via Newton Mail
>> <https://cloudmagic.com/k/d/mailapp?ct=dx&cv=10.0.32&pv=10.14.6&source=email_footer_2>
>>
>> On Fri, Apr 3, 2020 at 1:04 AM, Jarek Potiuk <jarek.pot...@polidea.com>
>> wrote:
>>
>> Hello Greg and Daniel,
>>
>> Production image is merged and it's also going to be released in 1.10.10.
>> For now, I will manually tag the release in DockerHub when we release but
>> we will automate that in the future. Currently, we have *airflow:master*
>> and *airflow:v1-10-test* images (for all supported python versions) that
>> you can use for testing with the Helm chart!
>>
>> The next things from my side:
>>
>> * I will automate DockerHub building for the prod image from master - for
>> now only CI is automated but we need to add prod image as well
>> * I will move kind-cluster creation outside of the container and use
>> production image for our CI Kubernetes tests. I have a WIP branch on it and
>> I think I should have it early next week
>> * The next step will be to switch our CI to Github Actions finally. I
>> think we will run both Travis and GA for a short time to make sure it works
>> * I will ask people for options they would like to have in the image -
>> additional packages etc. so that I can work on the next iteration of the
>> image. Also if you have any needs to see for the Helm integration, I am
>> super happy to incorporate them in the next version. I plan to keep the
>> "master" and "v1-10-test" images updated with any new changes and push
>> images regularly
>> * I am happy to help with the Helm Chart, so let me know if you need
>> anything!
>>
>> J.
>>
>>
>> On Mon, Mar 30, 2020 at 11:21 PM Jarek Potiuk <jarek.pot...@polidea.com>
>> wrote:
>>
>>> Hello Daniel and Greg.
>>>
>>> I think the production image for Airflow is quite ready for the final
>>> review and merge. I did some tests and I think it's quite complete now.
>>>
>>> The PR is running it's Travis build:
>>> https://github.com/apache/airflow/pull/7832
>>>
>>> I already pushed the image to DockerHub - so that the next time it is
>>> merged It will use it as a base and will be rather quickly built using
>>> those images as a cache. Once it is merged, I will add the automated build
>>> in DockerHub and merge it to 1.10. As the next step I also plan to use the
>>> prod image for our Kubernetes tests (that will help with moving to the
>>> GitHub Actions from Travis).
>>>
>>> I added quite a comprehensive documentation - explaining all ins- and
>>> outs- of both CI and PROD images
>>> https://github.com/PolideaInternal/airflow/blob/add-production-docker-image/IMAGES.rst
>>> .
>>>
>>> You can build it yourself using manual build process described in the
>>> doc or (easier) using Breeze. That includes using the same Dockerfile to
>>> build older Airflow version from the 1.10.* line.
>>>
>>> Feel free to use the new image in the Helm Chart you have - happy to
>>> review the PRs. The image is available at 'apache/airflow:master-python3.6'
>>> and 'apache/airflow:master-python3.7` - once we merge it to 1.10 and
>>> release 1.10.10 we will also have it automatically published for 1.10.10
>>> and beyond.
>>>
>>> Happy to hear your review comments and hope to merge it very soon.
>>> J.
>>>
>>> On Thu, Mar 26, 2020 at 4:38 PM Jarek Potiuk <jarek.pot...@polidea.com>
>>> wrote:
>>>
>>>> Absolutely! Please do :). The more eyes on this the better!
>>>>
>>>> On Thu, Mar 26, 2020 at 4:32 PM Daniel Imberman <
>>>> daniel.imber...@gmail.com> wrote:
>>>>
>>>>> @Jarek Steven and I will look into getting KinD to work on GitHub
>>>>> actions today. If we can get that working, we can donate the helm chart 
>>>>> and
>>>>> possibly even deprecate the old Kubernetes tests in the process.
>>>>> On Mar 26, 2020, 8:27 AM -0700, Jarek Potiuk <jarek.pot...@polidea.com>,
>>>>> wrote:
>>>>> > We have A POC for Github Actions done by Tomek, and the blocker there
>>>>> > was precisely Kubernetes tests and specifically running kind cluster
>>>>> > in the Github Actions
>>>>> > https://github.com/PolideaInternal/airflow/pull/542 . In the
>>>>> meantime
>>>>> > Jiaje Zhong is trying to make it works on GA we discussed this very
>>>>> > thing today at slack:
>>>>> >
>>>>> https://apache-airflow.slack.com/archives/CCPRP7943/p1585073249374200
>>>>> >
>>>>> > For me this is the next thing I will look at after merging
>>>>> > requirements PR and Prod image PR (and those two are a bit
>>>>> > pre-requisites to make it stable and fast). I want to switch to the
>>>>> > Production Image to run Kubernetes tests (they will be much faster)
>>>>> > and then we can work out much faster how to run them on Github
>>>>> > Actions. Then we can add Helm charts to run all those different
>>>>> > deployments. I am really looking forward to it!
>>>>> >
>>>>> > I hope - this weekend I move forward all of that and have a PR that
>>>>> we
>>>>> > can start running tests on and replacing the resources with helm
>>>>> > chart.
>>>>> >
>>>>> > J.
>>>>> >
>>>>> > On Thu, Mar 26, 2020 at 4:20 PM Daniel Imberman
>>>>> > <daniel.imber...@gmail.com> wrote:
>>>>> > >
>>>>> > > @Steven glad to help you out on that.
>>>>> > >
>>>>> > > For the moment we only use travis, but I believe @jarek has been
>>>>> looking to move to GitHub CI/CD. Perhaps we can use this as our first
>>>>> GitHub tests?
>>>>> > > On Mar 26, 2020, 8:17 AM -0700, Steven Miller
>>>>> <ste...@astronomer.io.invalid>, wrote:
>>>>> > > > Hey I’m happy to PR in the chart and get the CI working to test
>>>>> it. Where
>>>>> > > > do we want to run it? Do you all just use Travis only?
>>>>> > > >
>>>>> > > > Steven
>>>>> > > >
>>>>> > > > On Thu, Mar 26, 2020 at 10:59 AM Daniel Imberman <
>>>>> daniel.imber...@gmail.com>
>>>>> > > > wrote:
>>>>> > > >
>>>>> > > > > @Jarek I think with the helm chart + prod image we can go even
>>>>> further
>>>>> > > > > than that :). We can test CeleryExecutor, with KEDA
>>>>> autoscaling, and a
>>>>> > > > > bunch of other configurations.
>>>>> > > > > On Mar 26, 2020, 7:45 AM -0700, Jarek Potiuk <
>>>>> jarek.pot...@polidea.com>,
>>>>> > > > > wrote:
>>>>> > > > > > Yeah. I meant Custom Resources not CRDs in my original email
>>>>> :)
>>>>> > > > > >
>>>>> > > > > > > On Thu, Mar 26, 2020 at 3:38 PM Daniel Imberman <
>>>>> > > > > daniel.imber...@gmail.com> wrote:
>>>>> > > > > > > > We’re not using CRDs for the tests at the moment. We
>>>>> just have
>>>>> > > > > deployment files. If anything having the helm chart as a part
>>>>> of the
>>>>> > > > > airflow repo could mean that the helm chart becomes the
>>>>> defacto system for
>>>>> > > > > testing airflow on kubernetes (we can get rid of all the yams
>>>>> files and run
>>>>> > > > > multiple k8s tests with different settings).
>>>>> > > > > > > > On Mar 26, 2020, 7:20 AM -0700, Greg Neiheisel
>>>>> > > > > <g...@astronomer.io.invalid>, wrote:
>>>>> > > > > > > > > Yep, we can absolutely pull it into the airflow repo.
>>>>> We've also
>>>>> > > > > been
>>>>> > > > > > > > > building up a test suite that currently runs on
>>>>> CircleCI and uses
>>>>> > > > > kind
>>>>> > > > > > > > > (Kubernetes in Docker) to test several kubernetes
>>>>> versions with
>>>>> > > > > some
>>>>> > > > > > > > > different settings. Right now we're mostly testing the
>>>>> different
>>>>> > > > > executors
>>>>> > > > > > > > > since that has the biggest impact on what gets
>>>>> deployed, but that
>>>>> > > > > can be
>>>>> > > > > > > > > expanded.
>>>>> > > > > > > > >
>>>>> > > > > > > > > What CRDs are currently being used to run Airflow for
>>>>> the tests?
>>>>> > > > > > > > >
>>>>> > > > > > > > > On Wed, Mar 25, 2020 at 11:06 AM Jarek Potiuk <
>>>>> > > > > jarek.pot...@polidea.com>
>>>>> > > > > > > > > wrote:
>>>>> > > > > > > > >
>>>>> > > > > > > > > > One thing for the donation.
>>>>> > > > > > > > > >
>>>>> > > > > > > > > > Did you you want to have separate repository Greg ?
>>>>> > > > > > > > > >
>>>>> > > > > > > > > > I think we should simply create a folder in Airflow
>>>>> repo and
>>>>> > > > > keep it
>>>>> > > > > > > > > > there (similarly as we keep Dockerfile). I am going
>>>>> to switch our
>>>>> > > > > > > > > > Kubernetes Tests to the production image (will make
>>>>> the tests
>>>>> > > > > much
>>>>> > > > > > > > > > faster) and I am going to test the Dockerfile
>>>>> automatically in
>>>>> > > > > CI -
>>>>> > > > > > > > > > for now we are using some custom Resource
>>>>> definitions to start
>>>>> > > > > Airflow
>>>>> > > > > > > > > > on Kubernetes Cluster for the tests, but we could
>>>>> switch to
>>>>> > > > > using the
>>>>> > > > > > > > > > helm chart - this way we can test all three things
>>>>> at once:
>>>>> > > > > > > > > > - Kubernetes Executor
>>>>> > > > > > > > > > - Dockerfile
>>>>> > > > > > > > > > - Helm Chart
>>>>> > > > > > > > > > and we could also add more tests - for example
>>>>> testing different
>>>>> > > > > > > > > > deployment options for the helm chart.
>>>>> > > > > > > > > >
>>>>> > > > > > > > > > Having the Helm chart in Airflow repo would help
>>>>> with that -
>>>>> > > > > > > > > > especially in terms of future changes and testing
>>>>> them
>>>>> > > > > automatically.
>>>>> > > > > > > > > >
>>>>> > > > > > > > > > J.
>>>>> > > > > > > > > >
>>>>> > > > > > > > > > On Tue, Mar 24, 2020 at 9:09 PM Aizhamal Nurmamat
>>>>> kyzy
>>>>> > > > > > > > > > <aizha...@apache.org> wrote:
>>>>> > > > > > > > > > >
>>>>> > > > > > > > > > > +1 on the donation. Always happy to see more
>>>>> useful stuff for
>>>>> > > > > the
>>>>> > > > > > > > > > > community :)
>>>>> > > > > > > > > > >
>>>>> > > > > > > > > > > On Tue, Mar 24, 2020 at 9:20 AM Greg Neiheisel <
>>>>> > > > > g...@astronomer.io>
>>>>> > > > > > > > > > wrote:
>>>>> > > > > > > > > > >
>>>>> > > > > > > > > > > > Yep, the cleanup_pods script is set up now as an
>>>>> optional
>>>>> > > > > Kubernetes
>>>>> > > > > > > > > > > > CronJob (
>>>>> > > > > > > > > > > >
>>>>> > > > > > > > > >
>>>>> > > > >
>>>>> https://github.com/astronomer/airflow-chart/blob/master/templates/cleanup/cleanup-cronjob.yaml
>>>>> > > > > > > > > > )
>>>>> > > > > > > > > > > > that we have run periodically to clean failed
>>>>> pods up and
>>>>> > > > > could stay
>>>>> > > > > > > > > > > > separate.
>>>>> > > > > > > > > > > >
>>>>> > > > > > > > > > > > The wait_for_migrations script could definitely
>>>>> be pulled
>>>>> > > > > into Airflow.
>>>>> > > > > > > > > > > > For context, we deploy an initContainer on the
>>>>> scheduler (
>>>>> > > > > > > > > > > >
>>>>> > > > > > > > > >
>>>>> > > > >
>>>>> https://github.com/astronomer/airflow-chart/blob/master/templates/scheduler/scheduler-deployment.yaml#L77-L84
>>>>> > > > > > > > > > )
>>>>> > > > > > > > > > > > that runs the upgradedb command before booting
>>>>> the
>>>>> > > > > scheduler. This new
>>>>> > > > > > > > > > > > wait_for_migration script runs in an
>>>>> initContainer on the
>>>>> > > > > webserver and
>>>>> > > > > > > > > > > > workers (
>>>>> > > > > > > > > > > >
>>>>> > > > > > > > > >
>>>>> > > > >
>>>>> https://github.com/astronomer/airflow-chart/blob/master/templates/webserver/webserver-deployment.yaml#L58-L65
>>>>> > > > > > > > > > )
>>>>> > > > > > > > > > > > so that they don't boot up ahead of a potentially
>>>>> > > > > long-running
>>>>> > > > > > > > > > migration
>>>>> > > > > > > > > > > > and attempt to operate on new or missing
>>>>> columns/tables
>>>>> > > > > before the
>>>>> > > > > > > > > > > > migrations run. This prevents these pods from
>>>>> entering a
>>>>> > > > > CrashLoop.
>>>>> > > > > > > > > > > >
>>>>> > > > > > > > > > > > On Tue, Mar 24, 2020 at 11:48 AM Jarek Potiuk <
>>>>> > > > > > > > > > jarek.pot...@polidea.com>
>>>>> > > > > > > > > > > > wrote:
>>>>> > > > > > > > > > > >
>>>>> > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > @Tomasz great question. Our images are
>>>>> currently
>>>>> > > > > generated from
>>>>> > > > > > > > > > > > > Dockerfiles
>>>>> > > > > > > > > > > > > > in this repo
>>>>> https://github.com/astronomer/ap-airflow
>>>>> > > > > and get
>>>>> > > > > > > > > > > > > published to
>>>>> > > > > > > > > > > > > > DockerHub
>>>>> > > > > > > > > > > > > >
>>>>> > > > >
>>>>> https://hub.docker.com/repository/docker/astronomerinc/ap-airflow.
>>>>> > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > For the most part those are typical Airflow
>>>>> images.
>>>>> > > > > There's an
>>>>> > > > > > > > > > > > > entrypoint
>>>>> > > > > > > > > > > > > > script that we include in the image that
>>>>> handles waiting
>>>>> > > > > for the
>>>>> > > > > > > > > > > > > database
>>>>> > > > > > > > > > > > > > and redis (if used) to come up, which is
>>>>> pretty generic.
>>>>> > > > > > > > > > > > >
>>>>> > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > I already added waiting for the database (both
>>>>> metadata
>>>>> > > > > and celery
>>>>> > > > > > > > > > URL) in
>>>>> > > > > > > > > > > > > the PR:
>>>>> > > > > > > > > > > > >
>>>>> > > > > > > > > > > > >
>>>>> > > > > > > > > >
>>>>> > > > >
>>>>> https://github.com/apache/airflow/pull/7832/files#diff-3759f40d4e8ba0c0e82e82b66d376741
>>>>> > > > > > > > > > > > > .
>>>>> > > > > > > > > > > > > It's functionally the same but more generic.
>>>>> > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > The only other
>>>>> > > > > > > > > > > > > > thing that I think the Helm Chart uses would
>>>>> be the
>>>>> > > > > scripts in this
>>>>> > > > > > > > > > repo
>>>>> > > > > > > > > > > > > >
>>>>> https://github.com/astronomer/astronomer-airflow-scripts.
>>>>> > > > > Our
>>>>> > > > > > > > > > > > > Dockerfiles
>>>>> > > > > > > > > > > > > > pull this package in. These scripts are used
>>>>> to
>>>>> > > > > coordinate running
>>>>> > > > > > > > > > > > > > migrations and cleaning up failed pods.
>>>>> > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > I see two scripts:
>>>>> > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > * cleanup_pods -> this is (I believe) not
>>>>> needed to run in
>>>>> > > > > airflow -
>>>>> > > > > > > > > > this
>>>>> > > > > > > > > > > > > could be run as a separate pod/container?
>>>>> > > > > > > > > > > > > * waiting for migrations -> I think this is a
>>>>> good
>>>>> > > > > candidate to add
>>>>> > > > > > > > > > > > > *airflow
>>>>> > > > > > > > > > > > > db wait_for_migration* command and make it
>>>>> part of airflow
>>>>> > > > > itself.
>>>>> > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > I think we also have to agree on the Airflow
>>>>> version
>>>>> > > > > supported by the
>>>>> > > > > > > > > > > > > official helm chart. I'd suggest we support
>>>>> 1.10.10+ and we
>>>>> > > > > > > > > > incorporate
>>>>> > > > > > > > > > > > > all
>>>>> > > > > > > > > > > > > the changes needed to airflow (like the "db
>>>>> > > > > wait_for_migration")
>>>>> > > > > > > > > > into 2.0
>>>>> > > > > > > > > > > > > and 1.10 and we support both - image and helm
>>>>> chart for
>>>>> > > > > those versions
>>>>> > > > > > > > > > > > > only. That would help with people migrating to
>>>>> the latest
>>>>> > > > > version.
>>>>> > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > WDYT?
>>>>> > > > > > > > > > > > >
>>>>> > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > On Tue, Mar 24, 2020 at 10:49 AM Daniel
>>>>> Imberman <
>>>>> > > > > > > > > > > > > > daniel.imber...@gmail.com>
>>>>> > > > > > > > > > > > > > wrote:
>>>>> > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > @jarek I agree completely. I think that
>>>>> pairing an
>>>>> > > > > official helm
>>>>> > > > > > > > > > chart
>>>>> > > > > > > > > > > > > > > with the official image would make for a
>>>>> REALLY
>>>>> > > > > powerful “up and
>>>>> > > > > > > > > > > > > running
>>>>> > > > > > > > > > > > > > > with airflow” story :). Tomek and I have
>>>>> also been
>>>>> > > > > looking into
>>>>> > > > > > > > > > > > > > > operator-sdk which has the ability to
>>>>> create custom
>>>>> > > > > controllers
>>>>> > > > > > > > > > from
>>>>> > > > > > > > > > > > > helm
>>>>> > > > > > > > > > > > > > > charts. We might even able to get a 1-2
>>>>> punch from the
>>>>> > > > > same code
>>>>> > > > > > > > > > base
>>>>> > > > > > > > > > > > > :).
>>>>> > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > @kaxil @jarek @aizhamal @ash if there’s no
>>>>> issues, can
>>>>> > > > > we please
>>>>> > > > > > > > > > start
>>>>> > > > > > > > > > > > > > the
>>>>> > > > > > > > > > > > > > > process of donation?
>>>>> > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > +1 on my part, of course :)
>>>>> > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > Daniel
>>>>> > > > > > > > > > > > > > > On Mar 24, 2020, 7:40 AM -0700, Jarek
>>>>> Potiuk <
>>>>> > > > > > > > > > > > > jarek.pot...@polidea.com>,
>>>>> > > > > > > > > > > > > > > wrote:
>>>>> > > > > > > > > > > > > > > > +1. And it should be paired with the
>>>>> official image
>>>>> > > > > we have
>>>>> > > > > > > > > > work in
>>>>> > > > > > > > > > > > > > > > progress on. I looked a lot at the
>>>>> Astronomer's
>>>>> > > > > image while
>>>>> > > > > > > > > > > > > preparing
>>>>> > > > > > > > > > > > > > my
>>>>> > > > > > > > > > > > > > > > draft and we can make any adjustments
>>>>> needed to make
>>>>> > > > > it works
>>>>> > > > > > > > > > with
>>>>> > > > > > > > > > > > > the
>>>>> > > > > > > > > > > > > > > helm
>>>>> > > > > > > > > > > > > > > > chart - and I am super happy to
>>>>> collaborate on that.
>>>>> > > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > > PR here:
>>>>> https://github.com/apache/airflow/pull/7832
>>>>> > > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > > J.
>>>>> > > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > > On Tue, Mar 24, 2020 at 3:15 PM Kaxil
>>>>> Naik <
>>>>> > > > > kaxiln...@gmail.com
>>>>> > > > > > > > > > >
>>>>> > > > > > > > > > > > > > wrote:
>>>>> > > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > > > @Tomasz Urbaszek <
>>>>> tomasz.urbas...@polidea.com> :
>>>>> > > > > > > > > > > > > > > > > Helm Chart Link:
>>>>> > > > > https://github.com/astronomer/airflow-chart
>>>>> > > > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > > > On Tue, Mar 24, 2020 at 2:13 PM Tomasz
>>>>> Urbaszek <
>>>>> > > > > > > > > > > > > > turbas...@apache.org>
>>>>> > > > > > > > > > > > > > > > > wrote:
>>>>> > > > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > > > > An official helm chart is something
>>>>> our
>>>>> > > > > community needs!
>>>>> > > > > > > > > > Using
>>>>> > > > > > > > > > > > > your
>>>>> > > > > > > > > > > > > > > > > > chart as the official makes a lot of
>>>>> sens to me
>>>>> > > > > because as
>>>>> > > > > > > > > > you
>>>>> > > > > > > > > > > > > > > > > > mentioned - it's battle tested.
>>>>> > > > > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > > > > One question: what Airflow image do
>>>>> you use?
>>>>> > > > > Also, would you
>>>>> > > > > > > > > > > > > mind
>>>>> > > > > > > > > > > > > > > > > > sharing a link to the chart?
>>>>> > > > > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > > > > Tomek
>>>>> > > > > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > > > > On Tue, Mar 24, 2020 at 2:07 PM Greg
>>>>> Neiheisel
>>>>> > > > > > > > > > > > > > > > > > <g...@astronomer.io.invalid> wrote:
>>>>> > > > > > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > > > > > Hey everyone,
>>>>> > > > > > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > > > > > Over the past few years at
>>>>> Astronomer, we’ve
>>>>> > > > > created,
>>>>> > > > > > > > > > managed,
>>>>> > > > > > > > > > > > > > and
>>>>> > > > > > > > > > > > > > > > > > hardened
>>>>> > > > > > > > > > > > > > > > > > > a production-ready Helm Chart for
>>>>> Airflow (
>>>>> > > > > > > > > > > > > > > > > > >
>>>>> https://github.com/astronomer/airflow-chart)
>>>>> > > > > that is
>>>>> > > > > > > > > > being
>>>>> > > > > > > > > > > > > used
>>>>> > > > > > > > > > > > > > by
>>>>> > > > > > > > > > > > > > > > > both
>>>>> > > > > > > > > > > > > > > > > > our
>>>>> > > > > > > > > > > > > > > > > > > SaaS and Enterprise customers.
>>>>> This chart is
>>>>> > > > > > > > > > battle-tested and
>>>>> > > > > > > > > > > > > > > running
>>>>> > > > > > > > > > > > > > > > > > > hundreds of Airflow deployments of
>>>>> varying
>>>>> > > > > sizes and
>>>>> > > > > > > > > > runtime
>>>>> > > > > > > > > > > > > > > > > > environments.
>>>>> > > > > > > > > > > > > > > > > > > It’s been built up to encapsulate
>>>>> the issues
>>>>> > > > > that Airflow
>>>>> > > > > > > > > > > > > users
>>>>> > > > > > > > > > > > > > run
>>>>> > > > > > > > > > > > > > > > > into
>>>>> > > > > > > > > > > > > > > > > > in
>>>>> > > > > > > > > > > > > > > > > > > the real world.
>>>>> > > > > > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > > > > > While this chart was originally
>>>>> developed
>>>>> > > > > internally for
>>>>> > > > > > > > > > our
>>>>> > > > > > > > > > > > > > > Astronomer
>>>>> > > > > > > > > > > > > > > > > > > Platform, we’ve recently decoupled
>>>>> the chart
>>>>> > > > > from the
>>>>> > > > > > > > > > rest of
>>>>> > > > > > > > > > > > > our
>>>>> > > > > > > > > > > > > > > > > > platform
>>>>> > > > > > > > > > > > > > > > > > > to make it usable by the greater
>>>>> Airflow
>>>>> > > > > community. With
>>>>> > > > > > > > > > these
>>>>> > > > > > > > > > > > > > > changes
>>>>> > > > > > > > > > > > > > > > > in
>>>>> > > > > > > > > > > > > > > > > > > mind, we want to start a
>>>>> conversation about
>>>>> > > > > donating this
>>>>> > > > > > > > > > > > > chart
>>>>> > > > > > > > > > > > > > to
>>>>> > > > > > > > > > > > > > > the
>>>>> > > > > > > > > > > > > > > > > > > Airflow community.
>>>>> > > > > > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > > > > > Some of the main features of the
>>>>> chart are:
>>>>> > > > > > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > > > > > - It works out of the box. With
>>>>> zero
>>>>> > > > > configuration, a user
>>>>> > > > > > > > > > > > > will
>>>>> > > > > > > > > > > > > > get
>>>>> > > > > > > > > > > > > > > > > a
>>>>> > > > > > > > > > > > > > > > > > > postgres database, a default user
>>>>> and the
>>>>> > > > > > > > > > KubernetesExecutor
>>>>> > > > > > > > > > > > > > ready
>>>>> > > > > > > > > > > > > > > > > to
>>>>> > > > > > > > > > > > > > > > > > run
>>>>> > > > > > > > > > > > > > > > > > > DAGs.
>>>>> > > > > > > > > > > > > > > > > > > - Support for Local, Celery (w/
>>>>> optional KEDA
>>>>> > > > > > > > > > autoscaling) and
>>>>> > > > > > > > > > > > > > > > > > > Kubernetes executors.
>>>>> > > > > > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > > > > > Support for optional pgbouncer. We
>>>>> use this to
>>>>> > > > > share a
>>>>> > > > > > > > > > > > > > configurable
>>>>> > > > > > > > > > > > > > > > > > > connection pool size per
>>>>> deployment. Useful
>>>>> > > > > for limiting
>>>>> > > > > > > > > > > > > > > connections to
>>>>> > > > > > > > > > > > > > > > > > the
>>>>> > > > > > > > > > > > > > > > > > > metadata database.
>>>>> > > > > > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > > > > > - Airflow migration support. A
>>>>> user can push a
>>>>> > > > > newer
>>>>> > > > > > > > > > version
>>>>> > > > > > > > > > > > > of
>>>>> > > > > > > > > > > > > > > > > > Airflow
>>>>> > > > > > > > > > > > > > > > > > > into an existing release and
>>>>> migrations will
>>>>> > > > > > > > > > automatically run
>>>>> > > > > > > > > > > > > > > > > > cleanly.
>>>>> > > > > > > > > > > > > > > > > > > - Prometheus support. Optionally
>>>>> install and
>>>>> > > > > configure a
>>>>> > > > > > > > > > > > > > > > > > statsd-exporter
>>>>> > > > > > > > > > > > > > > > > > > to ingest Airflow metrics and
>>>>> expose them to
>>>>> > > > > Prometheus
>>>>> > > > > > > > > > > > > > > > > automatically.
>>>>> > > > > > > > > > > > > > > > > > > - Resource control. Optionally
>>>>> control the
>>>>> > > > > ResourceQuotas
>>>>> > > > > > > > > > and
>>>>> > > > > > > > > > > > > > > > > > > LimitRanges for each deployment so
>>>>> that no
>>>>> > > > > deployment can
>>>>> > > > > > > > > > > > > > overload
>>>>> > > > > > > > > > > > > > > a
>>>>> > > > > > > > > > > > > > > > > > > cluster.
>>>>> > > > > > > > > > > > > > > > > > > - Simple optional Elasticsearch
>>>>> support.
>>>>> > > > > > > > > > > > > > > > > > > - Optional namespace cleanup.
>>>>> Sometimes
>>>>> > > > > > > > > > KubernetesExecutor and
>>>>> > > > > > > > > > > > > > > > > > > KubernetesPodOperator pods fail
>>>>> for reasons
>>>>> > > > > other than the
>>>>> > > > > > > > > > > > > actual
>>>>> > > > > > > > > > > > > > > > > > task.
>>>>> > > > > > > > > > > > > > > > > > > This feature helps keep things
>>>>> clean in
>>>>> > > > > Kubernetes.
>>>>> > > > > > > > > > > > > > > > > > > - Support for running locally in
>>>>> KIND
>>>>> > > > > (Kubernetes in
>>>>> > > > > > > > > > Docker).
>>>>> > > > > > > > > > > > > > > > > > > - Automatically tested across many
>>>>> Kubernetes
>>>>> > > > > versions
>>>>> > > > > > > > > > with
>>>>> > > > > > > > > > > > > Helm
>>>>> > > > > > > > > > > > > > 2
>>>>> > > > > > > > > > > > > > > > > > and 3
>>>>> > > > > > > > > > > > > > > > > > > support.
>>>>> > > > > > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > > > > > We’ve found that the cleanest and
>>>>> most
>>>>> > > > > reliable way to
>>>>> > > > > > > > > > deploy
>>>>> > > > > > > > > > > > > > DAGs
>>>>> > > > > > > > > > > > > > > to
>>>>> > > > > > > > > > > > > > > > > > > Kubernetes and manage them at
>>>>> scale is to
>>>>> > > > > package them
>>>>> > > > > > > > > > into
>>>>> > > > > > > > > > > > > the
>>>>> > > > > > > > > > > > > > > actual
>>>>> > > > > > > > > > > > > > > > > > > docker image, so we have geared
>>>>> this chart
>>>>> > > > > towards that
>>>>> > > > > > > > > > > > > method of
>>>>> > > > > > > > > > > > > > > > > > > operation, though adding other
>>>>> methods should
>>>>> > > > > be
>>>>> > > > > > > > > > > > > straightforward.
>>>>> > > > > > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > > > > > We would love thoughts from the
>>>>> community and
>>>>> > > > > would love
>>>>> > > > > > > > > > to
>>>>> > > > > > > > > > > > > see
>>>>> > > > > > > > > > > > > > > this
>>>>> > > > > > > > > > > > > > > > > > chart
>>>>> > > > > > > > > > > > > > > > > > > help others to get up and running
>>>>> on
>>>>> > > > > Kubernetes!
>>>>> > > > > > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > > > > > --
>>>>> > > > > > > > > > > > > > > > > > > *Greg Neiheisel* / Chief Architect
>>>>> > > > > Astronomer.io
>>>>> > > > > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > > --
>>>>> > > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > > Jarek Potiuk
>>>>> > > > > > > > > > > > > > > > Polidea <https://www.polidea.com/> |
>>>>> Principal
>>>>> > > > > Software
>>>>> > > > > > > > > > Engineer
>>>>> > > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > > > M: +48 660 796 129
>>>>> <+48%20660%20796%20129>
>>>>> > > > > <+48660796129
>>>>> > > > > > > > > > > > > <+48%20660%20796%20129>>
>>>>> > > > > > > > > > > > > > > > [image: Polidea] <
>>>>> https://www.polidea.com/>
>>>>> > > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > > --
>>>>> > > > > > > > > > > > > > *Greg Neiheisel* / Chief Architect
>>>>> Astronomer.io
>>>>> > > > > > > > > > > > > >
>>>>> > > > > > > > > > > > >
>>>>> > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > --
>>>>> > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > Jarek Potiuk
>>>>> > > > > > > > > > > > > Polidea <https://www.polidea.com/> |
>>>>> Principal Software
>>>>> > > > > Engineer
>>>>> > > > > > > > > > > > >
>>>>> > > > > > > > > > > > > M: +48 660 796 129 <+48%20660%20796%20129>
>>>>> <+48660796129
>>>>> > > > > > > > > > > > > <+48%20660%20796%20129>>
>>>>> > > > > > > > > > > > > [image: Polidea] <https://www.polidea.com/>
>>>>> > > > > > > > > > > > >
>>>>> > > > > > > > > > > >
>>>>> > > > > > > > > > > >
>>>>> > > > > > > > > > > > --
>>>>> > > > > > > > > > > > *Greg Neiheisel* / Chief Architect Astronomer.io
>>>>> > > > > > > > > > > >
>>>>> > > > > > > > > >
>>>>> > > > > > > > > >
>>>>> > > > > > > > > >
>>>>> > > > > > > > > > --
>>>>> > > > > > > > > >
>>>>> > > > > > > > > > Jarek Potiuk
>>>>> > > > > > > > > > Polidea | Principal Software Engineer
>>>>> > > > > > > > > >
>>>>> > > > > > > > > > M: +48 660 796 129
>>>>> > > > > > > > > >
>>>>> > > > > > > > >
>>>>> > > > > > > > >
>>>>> > > > > > > > > --
>>>>> > > > > > > > > *Greg Neiheisel* / Chief Architect Astronomer.io
>>>>> > > > > >
>>>>> > > > > >
>>>>> > > > > > --
>>>>> > > > > > Jarek Potiuk
>>>>> > > > > > Polidea | Principal Software Engineer
>>>>> > > > > > M: +48 660 796 129
>>>>> > > > > >
>>>>> > > > >
>>>>> >
>>>>> >
>>>>> >
>>>>> > --
>>>>> >
>>>>> > Jarek Potiuk
>>>>> > Polidea | Principal Software Engineer
>>>>> >
>>>>> > M: +48 660 796 129
>>>>>
>>>>
>>>>
>>>> --
>>>>
>>>> Jarek Potiuk
>>>> Polidea <https://www.polidea.com/> | Principal Software Engineer
>>>>
>>>> M: +48 660 796 129 <+48660796129>
>>>> [image: Polidea] <https://www.polidea.com/>
>>>>
>>>>
>>>
>>> --
>>>
>>> Jarek Potiuk
>>> Polidea <https://www.polidea.com/> | Principal Software Engineer
>>>
>>> M: +48 660 796 129 <+48660796129>
>>> [image: Polidea] <https://www.polidea.com/>
>>>
>>>
>>
>> --
>>
>> Jarek Potiuk
>> Polidea <https://www.polidea.com/> | Principal Software Engineer
>>
>> M: +48 660 796 129 <+48660796129>
>> [image: Polidea] <https://www.polidea.com/>
>>
>>
>
> --
> *Greg Neiheisel* / Chief Architect Astronomer.io
>


-- 

Jarek Potiuk
Polidea <https://www.polidea.com/> | Principal Software Engineer

M: +48 660 796 129 <+48660796129>
[image: Polidea] <https://www.polidea.com/>

Reply via email to