安裝airflow


1. 設置環境變量

echo "export AIRFLOW_HOME=/opt/airflow" >> ~/.bashrc
  source ~/.bashrc

2.pip install apache-airflow==1.10.5

3.修改airflow.cfg 配置

注釋默認的DB 配置,設置為mysql DB url,在MySQL中 新建數據庫 airflow

#executor = SequentialExecutor
executor = LocalExecutor

#sql_alchemy_conn = sqlite:////opt/airflow/airflow.db
sql_alchemy_conn = mysql://root:123456@localhost:3306/airflow

4. airflow initdb

如果報錯 ModuleNotFoundError: No module named 'MySQLdb'

[2019-10-12 12:18:41,600] {settings.py:213} INFO - settings.configure_orm(): Using pool settings. pool_size=5, max_overflow=10, pool_recycle=1800, pid=5466
Traceback (most recent call last):
  File "/opt/anaconda3/bin/airflow", line 21, in <module>
    from airflow import configuration
  File "/opt/anaconda3/lib/python3.7/site-packages/airflow/__init__.py", line 44, in <module>
    settings.initialize()
  File "/opt/anaconda3/lib/python3.7/site-packages/airflow/settings.py", line 338, in initialize
    configure_orm()
  File "/opt/anaconda3/lib/python3.7/site-packages/airflow/settings.py", line 225, in configure_orm
    engine = create_engine(SQL_ALCHEMY_CONN, **engine_args)
  File "/opt/anaconda3/lib/python3.7/site-packages/sqlalchemy/engine/__init__.py", line 435, in create_engine
    return strategy.create(*args, **kwargs)
  File "/opt/anaconda3/lib/python3.7/site-packages/sqlalchemy/engine/strategies.py", line 87, in create
    dbapi = dialect_cls.dbapi(**dbapi_args)
  File "/opt/anaconda3/lib/python3.7/site-packages/sqlalchemy/dialects/mysql/mysqldb.py", line 118, in dbapi
    return __import__("MySQLdb")
ModuleNotFoundError: No module named 'MySQLdb'

解決方法:

 sudo apt-get install aptitude
sudo aptitude install  libmysqlclient-dev
pip install mysqlclient

Noted: **sudo apt-get install aptitude ** and sudo aptitude install libmysqlclient-dev 是用於解決

 ERROR: Complete output from command python setup.py egg_info:
    ERROR: /bin/sh: 1: mysql_config: not found
    /bin/sh: 1: mariadb_config: not found
    /bin/sh: 1: mysql_config: not found
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-install-1xi26n1k/mysqlclient/setup.py", line 16, in <module>
        metadata, options = get_config()
      File "/tmp/pip-install-1xi26n1k/mysqlclient/setup_posix.py", line 61, in get_config
        libs = mysql_config("libs")
      File "/tmp/pip-install-1xi26n1k/mysqlclient/setup_posix.py", line 29, in mysql_config
        raise EnvironmentError("%s not found" % (_mysql_config_path,))
    OSError: mysql_config not found
    ----------------------------------------
ERROR: Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-install-1xi26n1k/mysqlclient/

5.啟動服務

airflow webserver -p 9888
airflow scheduler


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM