Ansible Role 大數(shù)據(jù) 之【airflow】

Ansible Role: airflow

安裝airflow

介紹

Airflow 被 Airbnb 內(nèi)部用來創(chuàng)建、監(jiān)控和調(diào)整數(shù)據(jù)管道。任何工作流都可以在這個使用 Python 編寫的平臺上運行(目前加入 Apache 基金會孵化器)。

Airflow 允許工作流開發(fā)人員輕松創(chuàng)建、維護(hù)和周期性地調(diào)度運行工作流(即有向無環(huán)圖或成為DAGs)的工具。在Airbnb中,這些工作流包括了如數(shù)據(jù)存儲、增長分析、Email發(fā)送、A/B測試等等這些跨越多部門的用例。這個平臺擁有和 Hive、Presto、MySQL、HDFS、Postgres和S3交互的能力,并且提供了鉤子使得系統(tǒng)擁有很好地擴(kuò)展性。除了一個命令行界面,該工具還提供了一個 基于Web的用戶界面讓您可以可視化管道的依賴關(guān)系、監(jiān)控進(jìn)度、觸發(fā)任務(wù)等。

github地址:https://github.com/apache/incubator-airflow
官方文檔地址:https://airflow.incubator.apache.org/

要求

此角色僅在RHEL及其衍生產(chǎn)品上運行。

測試環(huán)境

ansible 2.2.1.0
os Centos 6.7 X64

角色變量

airflow_home: "/airflow"
airflow_tmpdir: "/tmp/airflow"
airflow_bin: "/usr/local/bin/airflow"
airflow_user: "airflow"
airflow_extra: [hive,hdfs,jdbc,mysql,async,postgres,rabbitmq,qds,password,ldap]
airflow_db: "airflow"
mysql_host: ""
mysql_port: ""
mysql_user: ""
mysql_password: ""
create_db: true
change_utctime: true
airflow_port: 8080

env: "HOME=/home/{{ airflow_user }},AIRFLOW_HOME={{ airflow_home }},TMPDIR={{ airflow_tmpdir }}"
ansible_python_interpreter: /usr/bin/python2.6

依賴

python2.7
supervisor

github地址

https://github.com/kuailemy123/Ansible-roles/tree/master/airflow

Example Playbook

- hosts: node1
  vars:
    airflow_home: '/airflow'
    mysql_host: 192.168.77.128
    mysql_port: 3306
    mysql_user: root
    mysql_password: 123456
    supervisor_name: airflow
    airflow_port: 8081
    supervisor_program: 
      - { name: 'webserver', command: '/usr/local/bin/airflow webserver', user: 'airflow' }
      - { name: 'scheduler', command: '/usr/local/bin/airflow scheduler', user: 'airflow' }
  roles:
   - { role: python2.7 }
   - { role: airflow }
   - { role: supervisor }
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容