marcusianlevine.airflow

Ansible Rolle: airflow

Build Status

Installieren und Konfigurieren eines airflow Hosts. Kann verwendet werden, um Master- und Worker-Knoten zu konfigurieren.

Anforderungen

Sie benötigen Sudo-Zugriff auf den bereitgestellten Host. Verwenden Sie Folgendes, um als Root auszuführen.

- name: Provisioniere airflow Master-Hosts
  hosts: airflow_hosts
  become: yes
  roles:
    - marcusianlevine.airflow

Rollenvariablen

Basisvariablen zur Konfiguration von airflow:

# Benutzer, unter dem airflow gestartet werden sollte
airflow_user: airflow

# Gruppe, unter der airflow gestartet werden sollte
airflow_group: "{{ airflow_user }}"

# Airflow-Version, die installiert werden soll
airflow_version: 1.8.1

# Verzeichnis, in das airflow installiert wird
airflow_install_directory: /usr/share/airflow

# Zusätzliche Pakete, die für airflow über pip install installiert werden
airflow_extra_packages:
  - celery
  - alldbs

# Dienste, die auf dem Host gestartet werden
airflow_services:
  - webserver
  - scheduler
  - worker

Zusätzliche Variablen zur Unterstützung spezifischer Bereitstellungsmuster:

# Bestimmen, ob und welchen Prozessmanager eingerichtet werden soll
use_systemd: yes
use_supervisor: no

# Unterstützung für die Installation von airflow in einer virtuellen Umgebung
# HINWEIS: Erforderlich für die Verwendung mit ansible-container
virtualenv_path: undefiniert

airflow.cfg

Die Hauptkonfiguration von airflow erfolgt mit YAML-Objekten, die einfach die Standardkonfiguration default_airflow sind, die mit überschreibungen im airflow-Objekt zusammengeführt wird. Alle Schlüsselpunkte werden in die airflow.cfg unter dem entsprechenden Abschnitt eingefügt. Alle Werte sind die Standardwerte von airflow.

airflow:
  core:
    dags_folder: "/usr/share/airflow_dags"
    base_log_folder: "/var/log/airflow"

  webserver:
    base_url: "{{ airflow_base_url }}"

  scheduler:
    statsd_on: True

Abhängigkeiten

Keine

Beispiel-Spielbuch

play.yml

- hosts: airflow-masters
  become: yes
  roles:
    - creditcardscom.airflow

vars/main.yml

airflow_user: airflow_user
airflow_version: 1.8.0
airflow_services:
  - webserver
  - scheduler

airflow:
  core:
    dags_folder: "/home/{{ airflow_user }}/dags"

Lizenz (MIT)

Copyright (c) 2017 CreditCards.com

Hiermit wird jedem, der eine Kopie dieser Software und der zugehörigen Dokumentationsdateien (die "Software") erhält, kostenlos die Erlaubnis erteilt, mit der Software ohne Einschränkung umzugehen, einschließlich, aber nicht beschränkt auf die Rechte zur Nutzung, Kopie, Modifizierung, Zusammenführung, Veröffentlichung, Verbreitung, Unterlizenzierung und/oder Verkauf von Kopien der Software und zur Erlaubnis an Personen, denen die Software bereitgestellt wird, dies zu tun, vorbehaltlich der folgenden Bedingungen:

Der obige Urheberrechtshinweis und dieser Erlaubnishinweis müssen in allen Kopien oder wesentlichen Teilen der Software enthalten sein.

DIE SOFTWARE WIRD "WIE BESEHEN" OHNE GARANTIE JEDER ART, WEDER AUSDRÜCKLICH NOCH IMPLIZIT, EINZUSCHLIESSEN, ABER NICHT BESCHRÄNKT AUF DIE GARANTIEN DER MARKTFÄHIGKEIT, EIGNUNG FÜR EINEN BESTIMMTEN ZWECK UND NICHTVERLETZUNG. IN KEINEM FALL SIND DIE AUTOREN ODER URHEBERRECHTSINHABER FÜR ANSPRÜCHE, SCHÄDEN ODER ANDERE HAFTUNGEN HAFTBAR, SEI ES IN EINER KLAGE AUS VERTRAG, DELIKT ODER ANDERS, DIE AUS, AUS ODER IM ZUSAMMENHANG MIT DER SOFTWARE ODER DER NUTZUNG ODER ANDEREN HANDELN IN DER SOFTWARE ENTSTEHEN.

Über das Projekt

Installs and configures the airflow project

Installieren
ansible-galaxy install marcusianlevine.airflow
GitHub Repository
Lizenz
other
Downloads
429
Besitzer
Data Science + DevOps = DataEng