airflow安装
  lSvCjgN1ezxk 2023年11月02日 76 0

环境初始化

系统选择 centos 7.4,在 thor 平台上先择的基础镜像,什么都没有安装。

使用 root 用户用 yum 工具做一些初始化安装

yum install -y wget

yum install -y screen

yum install -y gcc

yum install -y gcc-c++

yum install -y openssl-devel

yum install -y readline readline-devel

yum install -y lrzsz # rz sz 传输文件

yum install -y libxml2 libxml2-devel

yum install -y cmake

yum install -y curl curl-devel

yum install -y libpng libpng-devel

yum install -y autoconf

yum install -y net-tools # ifconfig 命令

yum install -y dos2unix

yum install -y bc

yum install -y zip

yum install -y unzip

yum install -y jq # 命令行解 json

yum install -y cloc # 统计代码行数

yum install -y dstat # 查看机器运行情况

yum install -y traceroute # traceroute 诊断网络连接情况

yum install -y expect # mkpasswd 生成随机密码

yum install -y tree

yum install -y git

yum install -y lsof # 查看端口占用情况

yum install -y p7zip # 7zip 命令是 7za

yum install -y bzip2 # 使用 tar 解压 .tar.bz2 文件

yum install -y xorg-x11-xauth

yum install -y libffi-devel

redis

分发任务可以使用 redis,需要在本机安装一个redis。

折叠源码

mkdir ~/install/

cd ~/install/

wget http://download.redis.io/releases/redis-2.8.13.tar.gz

tar xzvf redis-2.8.13.tar.gz

cd redis-2.8.13

make && make install

mkdir -p /home/rong/bin/redis/bin

mkdir -p /home/rong/bin/redis/conf

mkdir -p /home/rong/bin/redis/log

mkdir -p /home/rong/bin/redis/var

cp src/redis-benchmark /home/rong/bin/redis/bin/

cp src/redis-check-aof /home/rong/bin/redis/bin/

cp src/redis-check-dump /home/rong/bin/redis/bin/

cp src/redis-cli /home/rong/bin/redis/bin/

cp src/redis-sentinel /home/rong/bin/redis/bin/

cp src/redis-server /home/rong/bin/redis/bin/

然后再启动 reids-server 就可以。

redis-server &

mysql

airflow 依赖 mysql,先安装 mysql。

centos 会自带 mariadb,需要先卸载。

折叠源码

#找到要卸载的模块名称

rpm -qa | grep mariadb

rpm -e --nodeps mariadb-libs-5.5.65-1.el7.x86_64

# 安装库

rpm -ivh https://repo.mysql.com//mysql57-community-release-el7-11.noarch.rpm

yum install -y mysql

yum install -y mysql-devel

# 安装 mysql 服务

yum -y install mysql-server

启动 mysql 服务

# 启动mysql服务

systemctl start mysqld

# 可以察看mysql运行状态

systemctl status mysqld

使用以下命令获取 mysql 的初始密码

grep 'temporary password' /var/log/mysqld.log

登录mysql,重新设置 mysql 的密码

-- 设置mysql环境变量

set global validate_password_policy=0;

set global validate_password_length=1;

-- 重新设置 root 用户的 mysql 密码

alter user 'root'@'localhost' identified by '***';

-- 初始化 airflow 需要使用的库

CREATE DATABASE airflow;

CREATE DATABASE celery_result_airflow;

-- 赋予权限

GRANT all privileges on airflow.* TO 'airflow'@'%' IDENTIFIED BY 'airflow';

GRANT all privileges on celery_result_airflow.* TO 'airflow'@'%' IDENTIFIED BY 'airflow';

FLUSH PRIVILEGES;

-- 这个一定要设置,否则会报错

set global explicit_defaults_for_timestamp =1;

以上为通用。

下面为不同版本安装

airflow 2.1.0

安装 python3

采用 python 版本 3.8.6,下载 pytyon3 源文件

mkdir ~/install

cd ~/install

# 官网的源比较慢

# wget https://www.python.org/ftp/python/3.8.6/Python-3.8.6.tgz

# 这个源比较快

wget http://npm.taobao.org/mirrors/python/3.8.6/Python-3.8.6.tgz

tar xzvf Python-3.8.6.tgz

cd Python-3.8.6

mkdir /home/rong/bin/

./configure --prefix=/home/rong/bin/python3 --with-system-ffi

make

make install

配置 环境变量到 ~/.bash_profile

# python3

export PYTHON_HOME=/home/rong/bin/python3

export PATH=$PATH:$PYTHON_HOME/bin

安装pip及依赖

# 使用 -i 指定源为腾讯云的源服务,可以加快安装速度

ln -s /home/rong/bin/python3/bin/pip3 /usr/bin/pip3

# 更新 pip

pip3 install --upgrade pip -i https://mirrors.cloud.tencent.com/pypi/simple

pip3 install mysqlclient -i https://mirrors.cloud.tencent.com/pypi/simple

pip3 install apache-airflow==2.1.0 -i https://mirrors.cloud.tencent.com/pypi/simple

pip3 install apache-airflow[mysql] -i https://mirrors.cloud.tencent.com/pypi/simple

安装配置 airflow

先配置 airflow 相关的环境配置

# 部署路径

export AIRFLOW_HOME=/home/rong/airflow

export SLUGIFY_USES_TEXT_UNIDECODE=yes

先运行初始化db命令

airflow db init

此时命令会失败,但会生成配置文件。

修改配置文件 /home/rong/airflow/airflow.cfg,变动点如下

# sql_alchemy_conn = sqlite:////home/rong/airflow/airflow.db

sql_alchemy_conn = mysql://airflow:airflow@127.0.0.1:3306/airflow

再运行 初始化db命令就可以了。

最后启动airflow

# 启动 web server

airflow webserver -p 8009

# 启动调度

airflow scheduler -D

生成一个登录用户

# 运行命令后输入登录密码

airflow users create --username admin --firstname admin --lastname admin --role Admin --email xxx

环境配置

host 配置

# 线下的airflow

192.168.xx.xx airflow_dev

访问地址 http://airflow_dev:8009/home

用户名 admin

密码 123456

# 访问mysql

mysql -uairflow -pairflow

mysql -uroot -p123456

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  KRe60ogUm4le   2024年05月31日   29   0   0 算法leetcodepython
  KRe60ogUm4le   2024年04月26日   32   0   0 列表算法python
  KRe60ogUm4le   2024年05月31日   27   0   0 算法leetcodepython
  KRe60ogUm4le   2024年05月31日   39   0   0 链表算法python
  KRe60ogUm4le   2024年05月31日   32   0   0 算法python
  KRe60ogUm4le   2024年05月31日   39   0   0 算法python
  KRe60ogUm4le   2024年05月31日   36   0   0 二叉树算法python
lSvCjgN1ezxk
作者其他文章 更多
最新推荐 更多

2024-05-31