CreditCardsCom.airflow
Ansibleロール: airflow
airflow ホストをインストールして設定します。マスターとワーカーノードの設定に使用できます。
要件
プロビジョニングされるホストにsudoアクセスが必要です。以下のようにしてrootとして実行します。
- name: airflowマスターのホストをプロビジョニング
hosts: airflow_hosts
become: yes
roles:
- creditcardscom.airflow
ロール変数
基本的なairflowの設定変数:
# airflowが実行されるユーザー
airflow_user: airflow
# インストールするairflowのバージョン
airflow_version: 1.8.1
# airflowがインストールされるディレクトリ
airflow_install_directory: /usr/share/airflow
# pip installでairflowに追加インストールされるパッケージ
airflow_extra_packages:
- celery
- alldbs
# ホストで起動されるサービス
airflow_services:
- webserver
- scheduler
- worker
airflow.cfg
主なairflowの設定はyamlオブジェクトで行われます。デフォルトの設定default_airflow
がairflow
オブジェクトの上書きとマージされます。すべてのオブジェクトキーは適切なセクションのairflow.cfg
にテンプレート化されます。すべての値はデフォルトの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
依存関係
なし
例プレイブック
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"
ライセンス (MIT)
Copyright (c) 2017 CreditCards.com
本ソフトウェアおよび関連する文書ファイル(以下「ソフトウェア」)のコピーを取得したすべての人は、無制限にソフトウェアを扱う権利をここに付与します。これには、使用、コピー、変更、結合、出版、配布、サブライセンス、販売などの権利が含まれ、ソフトウェアが提供される人にこれを許可することが含まれます。ただし、以下の条件に従う必要があります:
上記の著作権表示とこの許可表示は、すべてのコピーまたはソフトウェアの重要な部分に含めなければなりません。
このソフトウェアは「現状のまま」で提供され、いかなる種類の保証もなく、明示または黙示を問わず、商品性、特定目的への適合性および非侵害の保証を含みますが、これらに限定されません。著作権者または著作者は、契約、不法行為、その他の何らかの理由で、ソフトウェアまたはその使用またはその他の取引に関連して発生した請求、損害、その他の責任について、一切責任を負いません。