centos7离线安装airflow1.10.10(真正离线)
一:环境及包准备:
1、外网服务器一台,内网服务器一台
2、python3.7+airflow1.10.10+redis4.0.6+mysql5.7
3、从https://github.com/apache/airflow找到对应版本的requirements-python3.7.txt列表单
基础软件安装python、mysql及redis 略过,安装简单,再次略过,注意一点mysql集成airflow 需要在mysql配置文件下添加:
explicit_defaults_for_timestamp = 1
二:外网服务器下载airflow程序包
注意事项:
1、因为不知道后面的需求及下载包是否完整,强烈推荐全部下载
2、指定pypi源,用的是清华的,不要用官方的(有条件可以云机下载更快)
下载命令:
pip download apache-airflow[all]==1.10.10 --constraint /data/soft/airflow-1.10.12/requirements-python3.7.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
注意all
把下载的程序包拷贝到内网服务器目录即可
三:内网安装airflow程序包
重点来了,安装切记不要all安装,不要all安装,血的教训,否则版本匹配让你怀疑人生!!!
首先安装airflow
pip3 install apache-airflow==1.10.10 --constraint /opt/constraints-3.7.txt --no-build-isolation --no-index -f ./ 这块老铁门记得加上红色字体,解决缺胳膊少腿问题,卡了一天。
其次根据需要选择组件安装,
mysql组件:pip3 install apache-airflow[mysql]==1.10.10 --constraint /opt/constraints-3.7.txt --no-build-isolation --no-index -f ./
添加密码组件:pip3 install apache-airflow[password]==1.10.10 --constraint /opt/constraints-3.7.txt --no-build-isolation --no-index -f ./
添加celery执行引擎:pip3 install apache-airflow[celery]==1.10.10 --constraint /opt/constraints-3.7.txt --no-build-isolation --no-index -f ./
添加redis组件: pip3 install apache-airflow[redis]==1.10.10 --constraint /opt/constraints-3.7.txt --no-build-isolation --no-index -f ./
剩下的一些杂事比如8小时问题,添加密码等网上一大堆雷同资料。
最后附上一个添加用户密码的python脚本吧
import airflow
from airflow import models, settings
from airflow.contrib.auth.backends.password_auth import PasswordUser
def main():
user = PasswordUser(models.User())
user.username = 'test'
user.password = 'xxxxoooo'
user.superuser = 1
session = settings.Session()
session.add(user)
session.commit()
session.close()
exit()
最后秀一个丑不拉几的airflow页面吧,老铁们 安装一切顺利!!!
本文地址:https://blog.csdn.net/silentanytime/article/details/110929208