参考:http://blog.csdn.net/wawa8899/article/details/52743861

参考:http://www.cnblogs.com/mountaingeek/p/5911291.html

参考:http://www.linuxyw.com/718.html

参考:http://www.iitshare.com/supervisord-manage-process.html

参考:http://stackoverflow.com/questions/20346851/running-celery-as-root

运行生成配置文件:

[root@host /]# echo_supervisord_conf > /etc/supervisord.conf
...
pkg_resources.DistributionNotFound: meld3>=0.6.
找到supervisor-3.3.-py2..egg-info/requires.txt,把文件里面meld3 >= 0.6.5注释掉,然后再执行

配置

[program:dopcelerybeat]
command=python manage.py celery beat
numprocs=
directory=/path/
autostart=true
startsecs=
startretries=
stopwaitsecs=
killasgroup=true
user=root
redirect_stderr=true
stdout_logfile=/path/logs/supervisord-celery-beat.log
stderr_logfile=/path/logs/supervisord-celery-beat-error.log [program:dopceleryworker]
command=python manage.py celery worker -l info
numprocs=
directory=/path/
autostart=true
startsecs=
startretries=
stopwaitsecs=
killasgroup=true
user=root
redirect_stderr=true
stdout_logfile=/path/logs/supervisord-celery-worker.log
stderr_logfile=/path/logs/supervisord-celery-worker-error.log [group:dopcelery]
programs=dopcelerybeat,dopceleryworker
; priority= ; the relative start priority (default )

运行celery时报错的解决方法:

1st solution - Manually type command at terminal
$ export C_FORCE_ROOT='true' 2nd solution - Edit shell configuration
$ vi ~/.bashrc # add following line
export C_FORCE_ROOT='true' $ source ~/.bashrc 3rd solution - Edit manage.py of Django
import os if __name__ == '__main__':
os.environ.setdefault('C_FORCE_ROOT', 'true')
os.environ.setdefault('DJANGO_SETTINGS_MODULE', '{PATH TO SETTINGS FILE}') execute_from_command_line(sys.argv)

命令supervisorctl可以使用start/stop/status管理每个进程

[root@d11092353 supervisor-3.3.-py2..egg-info]# supervisorctl
dopcelery:dopcelerybeat STOPPED Dec : PM
dopcelery:dopceleryworker RUNNING pid , uptime ::
supervisor> status dopcelery:dopcelerybeat
dopcelery:dopcelerybeat STOPPED Dec : PM
supervisor>

supervisorctl API:官方文档 http://www.supervisord.org/api.html

import xmlrpclib
server = xmlrpclib.Server('http://127.0.0.1:9900/RPC2')
server.supervisor.getState()
返回 >>> {'statename': 'RUNNING', 'statecode': 1}
server.supervisor.getProcessInfo('group:name')
返回 >>> 任务状态

【Python】supervisor安装和管理celery的更多相关文章

  1. python+selenium安装方法

    一.准备工具: 下载 python[python 开发环境] http://python.org/getit/ 下载 setuptools [python 的基础包工具] http://pypi.py ...

  2. 使用Supervisor管理Celery进程。

    讲过一篇celery的,但是celery启动后并不是daemon的,在生产环境中这肯定是不可以的,那怎么办呢? 这就需要使用supervisor进行进程管理了,下面详细介绍. 一. superviso ...

  3. celery和supervisor配合使用,实现supervisor管理celery进程

    在这里我选择redis作为celery异步任务的中间人,系统选择CentOS6.5 64位.redis.celery和supervisor的安装参见官方文档. 安装完毕后: 1, 创建celery的实 ...

  4. supervisor安装部署文档和管理实例

    Supervisord是用Python实现的一款非常实用的进程管理工具,类似于monit(关于monit见我的博客:用monit监控系统关键进程),monit和supervisord的一个比较大的差异 ...

  5. supervisor python开发的进程管理工具

    Supervisor (http://supervisord.org) 是一个用 Python 写的进程管理工具,可以很方便的用来启动.重启.关闭进程(不仅仅是 Python 进程).除了对单个进程的 ...

  6. Ubuntu 安装和使用 Supervisor(进程管理)

    服务器版本 Ubuntu 16.04 LTS. Supervisor 是一个用 Python 写的进程管理工具,可以很方便的对进程进行启动.停止.重启等操作. 安装命令: $ apt-get inst ...

  7. Supervisor安装与配置(Linux/Unix进程管理工具)

    原文链接:http://blog.csdn.net/xyang81/article/details/51555473 Supervisor(http://supervisord.org/)是用Pyth ...

  8. Mac下Supervisor进程监控管理工具的安装与配置

    Supervisor是一个类 unix 操作系统下的进程监控管理工具. Supervisor是由 Python 写成,可用 Python 的包安装管理工具 pip(Python Package Ind ...

  9. 使用 supervisor 管理 Celery 服务

    使用 supervisor 管理 Celery 服务 Celery 后台运行 如果我们想让celery worker运行在后台而不是终端上,在后台以守护进程的方式运行,我们可以使用supervisor ...

随机推荐

  1. java多线程基础

    多线程基础 读书练习照猫画虎 package Threadtest; import java.util.Date; import java.util.concurrent.ArrayBlockingQ ...

  2. 结对编程--基于android平台的黄金点游戏

    游戏内容: 阿超的课都是下午两点钟,这时班上不少的同学都昏昏欲睡,为了让大家兴奋起来,阿超让同学玩一个叫“黄金点”的游戏: N个同学(N通常大于10),每人写一个0~100之间的有理数 (不包括0或1 ...

  3. kuangbin_SegTree M (HDU 4553)

    put my gezi这句话不得不说我看了好几秒才反应过来什么意思(你咋不上天呢 目测了一下也是区间合并 但是是成段更新的区间合并 但是!我终于!自己!写出来了! 嗯还算是比较顺利的 query的地方 ...

  4. 2016-12-15 java开发工作中,尚未做的工作

    目前未涉及的工作内容: 1.将静态页导入工程,建成jsp文件.配置css.js.img文件.跳转路径 2.未用工具生成pojo dao service等源码文件 3.未签入自己写的代码 4.未搭建子系 ...

  5. [转] Linux下 config/configure/Configure、make 、make test/make check、sudo make install 的作用

    转自:http://blog.csdn.net/secondjanuary/article/details/8985795 这些都是典型的使用GNU的AUTOCONF和AUTOMAKE产生的程序的安装 ...

  6. C#:比较二个字符串,查找出相同字数和差异字符

            ;; i < n; i++)             {                 ) == s2.Substring(i, ))                 /*同位 ...

  7. 【转】JSch - Java实现的SFTP(文件下载详解篇)

    上一篇讲述了使用JSch实现文件上传的功能,这一篇主要讲述一下JSch实现文件下载的功能.并介绍一些SFTP的辅助方法,如cd,ls等.   同样,JSch的文件下载也支持三种传输模式:OVERWRI ...

  8. 一种扩大View点击范围的方法

    Rect rect = new Rect();mBt0.getHitRect(rect); rect.bottom += 400; TouchDelegate touchDelegate = new ...

  9. Oracle表空间(tablespaces)

    http://www.cnblogs.com/fnng/archive/2012/08/12/2634485.html 我们知道oarcle数据库真正存放数据的是数据文件(data files),Oa ...

  10. Linux环境下SVN服务器端的安装与配置

    最近尝试了下在Linux(CentOS6.5)环境下安装与配置SVN服务器端,安装过程中碰到了一些问题,参看了网友们分享的一些心得,并通过自己实际的操作,最终安装与配置成功!总的来说网上的说法芸芸,大 ...