1、环境准备
参考文章: Ubuntu18 airflow安装及使用 [Ubuntu18 airflow安装及使用_ubuntu 安装airflow-CSDN博客] 要有Python3环境,和Pip环境。
sudo apt-get update
sudo apt-get upgrade -y
python3 -m pip install --upgrade pip
1.1 VMware Work 扩展磁盘空间
首先,要删除所有的镜像,只留一个。删除时要耐心等待全部删除,如果删除没完成取消。会出现删除不彻底,而无法扩展的情况。那么只要再次创建一个快照,那么那个没删除干净的快照就会出现。再次彻底删除。
然后要设置->磁盘扩容->输入100G
之后要安装一个软件:
sudo apt-get install gparted
启动
sudo gparted
之后,不要去创建,而是在使用的盘符上右键
选择调整选项
上面的进度条一样的进行拖拽增加空间
之后确定
2、安装airflow
2.1、激活zsh的conda命令
如果安装了conda,并且安装了zsh的话,会出现zsh无法使用conda命令的情况,这个时候要编辑“~/.zshrc”
vim ~/.zshrc
# 添加下面内容
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/home/zch/anaconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
eval "$__conda_setup"
else
if [ -f "/home/zch/anaconda3/etc/profile.d/conda.sh" ]; then
. "/home/zch/anaconda3/etc/profile.d/conda.sh"
else
export PATH="/home/zch/anaconda3/bin:$PATH"
fi
fi
unset __conda_setup
# <<< conda initialize <<<
之后一定要激活
source ~/.zshrc
验证是否好用:
conda env list
2.2、创建conda的env环境
conda create -n airflow python==3.11.4
激活
conda activate airflow
安装airflow
pip install apache-airflow
查看是否安装成功:
airflow
airflow version
3、配置数据库
在根目录下执行命令:
airflow db init
之后会在用户家目录下生成一个文件夹 /home/username/airflow 进入到里面有一个 "airflow.cfg"是配置文件,修改数据库(默认是sqlit)
vim airflow.cfg
sql_alchem_conn = dialect+driver://username:password@host:port/database
sql_alchem_conn = mysql://username:password@host:port/database
sql_alchemy_conn = postgresql+psycopg2://postgres:123456@localhost:5432/airflow
# 不加载提供的用例
load_example = False
如果修改使用postgresql+psycopg2会报错,需要安装插件:
sudo apt-get install libpq-dev
pip install psycopg2-binary
# 之后再次执行:
airflow db init
4、创建用户
airflow users create --role Admin --username zhuchenghai --email zhuchenghai@neusoft.com --firstname zhu --lastname chenghai --password 123456
5、启动服务
指定端口
airflow webserver -p 8090
airflow scheduler
后台启动的方法:
airflow webserver -p 8080 -D
airflow scheduler -D
关闭服务:
# 进入工作目录执行
cd ~/airflow
ps -ef|egrep 'scheduler|airflow-webserver'|grep -v grep|awk '{print $2}'|xargs kill -15
6、插件依赖
取决于环境要求,可能需要安装额外的插件依赖,比如若要使用Postgres DB,需要安装 postgres-devel yum package. 具体不同环境下的extra和provider可查阅以下链接。 Reference for package extras.