dev_task是一款基于django-celery-beat调度执行的任务管理平台,平台基于celery4.1.1开发,实现了类似crontab定时执行任务的功能。(后期将作为运维平台dev_system的任务编排组件)
- 修复了邮件告警相关的bug
- 修复了任务结果分页
- 修复了任务显示状态
- 添加了client端celery状态监控
- 添加了rabbitmq部分状态监控
建议大家在centos7.0系统安装此项目
Python2.7,暂不支持python3.x
项目部署目录 /opt
关闭防火墙
setenforce 0
service iptables stop
安装mysql5.6,rabbitmq,并且启动服务
安装supervisor,必须是3.0以上的版本,centos6.5yum安装默认是2.+的版本,这里需要手动安装。
建议大家使用docker方式运行项目,使用docker方式运行项目,需要注意的是
mysql和rabbitmq都是安装在宿主机上的,也就是说,容器中并没有包含mysql和rabbitmq的服务
这也是提高了数据安全性和扩展性,所以安装好了mysql和rabbitmq服务以后,需要对容器的访问授权,然后利用启动容器的方式,把相关信息带入容器内部。
MYSQL_HOST:mysql主机ip
MYSQL_PORT:mysql端口号
RA_HOST:rabbitmq主机
LO_HOST:本机ip
RA_Q:rabbitmq queue
RA_ROUTING_KEY:rabbitmq routing_key
EM_HOST:发送服务器
EM_PORT:邮件端口号
EM_SEND_USER:发件人邮箱地址
EM_PASS:发件人邮箱密码
DEFAULT_EM_ADDR:默认收件人地址,多个地址以英文逗号区分
docker run -itd -p 80:8070
-e "MYSQL_HOST=192.168.100.10"
-e "MYSQL_PORT=3306"
-e "MYSQL_USER=root"
-e "MYSQL_PASS=123456"
-e "MYSQL_DB=dev_task"
-e "RA_HOST=192.168.100.10"
-e "LO_HOST=192.168.100.10"
-e "RA_Q=192.168.100.10"
-e "RA_ROUTING_KEY=192.168.100.10"
-e "EM_HOST=smtp.exmail.qq.com"
-e "EM_PORT=25"
-e "EM_SEND_USER=example@163.com"
-e "EM_PASS=123456"
-e "DEFAULT_EM_ADDR=user1@163.com,user2@163.com,user3@163.com"
--name dev_task
caiqing0204/dev_task
yum install -y epel-release
yum clean all
yum install -y python python-dev python-devel python-pip gcc msgpack-python openssl openssl-devel mysql-devel
cd /opt
git clone https://github.com/caiqing0204/dev_task.git
pip install -r requirements
关于rabbitmq日志文件等信息的配置,大家可以查官网,自行配置
rabbitmqctl add_user rabbitmqadmin 1234qwer
rabbitmqctl set_user_tags rabbitmqadmin administrator
rabbitmqctl add_vhost dev_task
rabbitmqctl set_permissions -p dev_task rabbitmqadmin ".*" ".*" ".*"
# 安装rabbitmq的管理页面
rabbitmq-plugins enable rabbitmq_management
pip install uwsgi==2.0.17.1
配置好相应的mysql,rabbitmq信息
cd /opt/dev_task/supply/django-celery-results-master/
python setup.py install
cd /opt/dev_task/
python manage.py makemigrations
python manage.py migrate
python /opt/dev_task/createsuperuser.py
cp /opt/dev_task/server_supervisord.conf /etc/supervisord.conf
supervisord -c /etc/supervisord.conf
chmod 777 /opt/dev_task/static/ -R
cp /opt/dev_task/nginx.conf /usr/local/nginx/conf/
http://ip:port
admin
password!23456
配置好相应的mysql,rabbitmq信息
cd /opt/dev_task/supply/django-celery-results-master/
python setup.py install
cp /opt/dev_task/client_supervisord.conf /etc/supervisord.conf
supervisord -c /etc/supervisord.conf
升级完python版本以后,需要重新安装一下pip,下载pip的tar包,解压安装。重新制定软连接,就可以使用了。 我这里是手动安装supervisord 3版本的,安装supervisord之前,需要安装setuptools,centos6.5 yum安装supervisord,版本是2.1, 有问题,欢迎随时提交issues!