前段时间部门要求研究airflow,大概记录一下安装的步骤。airflow是一个python实现的工作流管理平台,官网:http://airflow.incubator.apache.org/
安装环境和必要软件
ubuntu 16.04
Python3
mysql
redis
如果无法安装 某些软件 ,更新一下系统源
http://blog.csdn.net/Hehailiang_Dream/article/details/54094634
更改为阿里云源
简单步骤:
1 先安装Python3 ubuntu 16.04 自带python3 可以直接跳过
apt-get install python3
2 配置软链接
命令 python,进入python命令环境,看当前使用的版本是否是python3,如果不是,需要配置软链接
sudo ln -s /usr/bin/python3.5 /usr/bin/python
3 安装pip
命令 pip,确认pip是否正常 如果不正常 按照提示安装
apt install python3-pip
4 新增系统账号
adduser newuser
同时更改配置文件,使其有sudo权限
vim /etc/sudoers
在文档中添加如下
johnny ALL=(ALL:ALL) ALL
或者用命令方式新增:
sudo useradd -m johnny -s /bin/bash
sudo passwd johnny
sudo adduser johnny sudo
5 airflow安装
5.1通过pip安装
pip install airflow
还有其他安装方式,可以参考官方文档上的安装命令
5.2 在shell中配置环境airflow目录
export AIRFLOW_HOME=~/airflow
5.3 初始化数据库
airflow initdb
5.4 开启web服务, default port is 8080
airflow webserver -p 8080
然后 能在浏览器里打开 管理网页 airflow 安装成功
6 安装mysql
apt-get install mysql-server
apt-get install mysql-client
sudo apt-get install
libmysqlclient-dev
安装过程中会提示设置密码什么的,注意设置了不要忘了,安装完成之后可以使用如下命令来检查是否安装成功:sudo netstat -tap | grep mysql
通过上述命令检查之后,如果看到有mysql 的socket处于 listen 状态则表示安装成功。
登陆mysql数据库可以通过如下命令:
mysql -h ip -u root -p
启动service mysql start
python安装mysqldb库
sudo apt-get install python3-mysqldb
PS:
mysql远程访问有点问题 估计是哪里配置没配好
直接改账号为localhost 登录权限
grant all PRIVILEGES on airflow.* to airflow@'localhost' identified by 'password';
7 新建数据库 airflow
新增外部访问账号
grant all PRIVILEGES on airflow.* to airflow@'ip' (airflow@'10.16.7.114') identified by 'password';
PS:
mysql远程访问有点问题 估计是哪里配置没配好
直接改账号为localhost 登录权限
grant all PRIVILEGES on airflow.* to airflow@'localhost' identified by 'password';
8 Redis(未配置自动启动)
安装:
wget http://download.redis.io/releases/redis-2.8.17.tar.gz
tar xzf redis-2.8.17.tar.gz
cd redis-2.8.17
make
部署: http://www.cnblogs.com/wangchunniu1314/p/6339416.html
redis安装好了
在路径/usr/local/redis/bin 下
或者最快的方式就是用apt安装
sudo apt-get install redis-server
9 安装celery支持
pip install airflow[celery]
10 配置文件修改 支持mysql ,celery ,redis
有些不完整,具体配置见官方文档
executor = CeleryExecutor
sql_alchemy_conn =mysql://aiedlow:aeflow@locahost:3306/airflow
brker_url= redis://127.0.0.1:6379/2
celery_result_backend =redis://127.0.0.1:6379/
11 Celery + Rabbitmq: 安装Rabbitmq
参考如下文档进行
http://blog.csdn.net/sharetop/article/details/50523081
2 修改配置文件:
broker_url = amqp://admin:admin@localhost:5672
celery_result_backend = redis://127.0.0.1:6379/2