GithubHelp home page GithubHelp logo

zbrookle / avionix_airflow Goto Github PK

View Code? Open in Web Editor NEW
7.0 1.0 2.0 400 KB

Apache Airflow Hosted on a Kubernetes cluster, ready out of the box, with monitoring stack included (Grafana, ElasticSearch, Filebeat)

Home Page: https://avionix-airflow.readthedocs.io/en/latest/

License: BSD 3-Clause "New" or "Revised" License

Python 96.37% Dockerfile 1.09% Shell 2.31% JavaScript 0.23%
kubernetes airflow avionix helm helm-chart grafana elasticsearch filebeat chart-builder aws aws-eks cluster apache-airflow kubernetes-executor

avionix_airflow's Introduction

Avionix Airflow

image

Why are there so many guides on how to set up Apache Airflow when the code could just be given to you?!

Welcome to Avionix Airflow, an out of the box solution to installing airflow on Kubernetes.

Currently supported platforms are Minikube and AWS EKS (managed nodegroups only), pull requests adding support for GKE and AKS are welcome.

Overview of Avionix Airflow Capabilities

Avionix airflow provides the following out of the box solutions for airflow

  1. Airflow Webserver and Scheduler with configured RBAC for the KubernetesExecutor
  2. Airflow metric collection (statsd -> telegraf -> elasticsearch)
  3. Airflow log collection (stdout -> filebeat -> elasticsearch)
  4. Metric and log visualization (elasticsearch & postgres -> grafana)

Installation

pip install avionix_airflow

Requirements

Configuration

Avionix airflow is configured by using Options objects, there are currently 4 different objects:

  1. AirflowOptions
  2. PostgresOptions
  3. MonitoringOptions
  4. CloudOptions (Specified using LocalOptions or AwsOptions)
  5. RedisOptions (Only for use with CeleryExecutor, *not recommended*)

These options are then passed into the function get_chart_builder, which can be used to retrieve an avionix chart builder object. For instruction on how to use the builder object, see avionix

FAQ

  • How do I change the grafana dashboard?
    • You can change the dashboard by setting the MonitoringOptions role to "Admin"

Documentation

Additional documentation can be found here

avionix_airflow's People

Contributors

dependabot[bot] avatar zbrookle avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

avionix_airflow's Issues

ENH: Add id_rsa

Add ability to mount secret id_rsa onto each worker from a secret (for programs that need to use git or some other remote access)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.