多语言展示
当前在线:1600今日阅读:23今日分享:25

进程守护神器supervisord安装使用(redis为例)

supervisor 一款用于进程守护的运维管理神器,基本可以守护所有的非daemon运行方式的程序。swoole php 、tomcat、redis、memeche等等都可以。而且supervisor提供了webUI来启动停止以及查看你所守护的进程的日志,很方便很好管理
工具/原料

centos6.8x64

方法/步骤
1

python2.7安装(python 2.6 也可以用,所以这里是否安装都行。安装有风险,操作需谨慎。首先需要确定python的版本,2.4的不行,2.6以上都可以)先判断 python版本,如果是2.6 也可以用,这里就不需要安装python2.7.了。 #安装,这里我是挂载的,大家可以去网站下载一个python2.7的安装包即可。 cp /mnt/yqh/Python-2.7.tar.bz2 /usr/local/src cd !$ && tar -xf Python-2.7.tar.bz2 cd Python-2.7 && ./configure && make && make install #备份原有的python.如果不备份,后面你的操作系统的yum就用不了了 mv /usr/bin/python /usr/bin/python2.6.6 #修改/usr/bin/yum #将首行 #!/usr/bin/python =>改成 #!/usr/bin/python2.6.6 #将新版本python创建软连接 ln -sf /usr/local/bin/python /usr/bin 执行pip 提示 ImportError: No module named pkg_resources wget https://bootstrap.pypa.io/ez_setup.py -O - | python

2

setuptools安装#同样的 这个setuptools的安装包,大家可以网上找到 cp /mnt/yqh/setuptools-33.1.1.zip /usr/local/src cd $! && unzip setuptools-33.1.1.zip cd setuptools-33.1.1 && python setup.py install

3

pip安装#输入pip 如果提示命令未找到,需要安装pip 网站下载pip的安装包,然后按照下列方法安装以及更新pip(因为我的版本时1.5.4 有点老,所以需要upgrade一下) cp /mnt/yqh/pip-1.5.4.tar.gz /usr/local/src #升级pip pip install --upgrade pip

4

使用pip安装supervisorpip install supervisor可能遇到的问题:pkg_resources.DistributionNotFound: meld3>=0.6.5 解决办法: pkg_resources.DistributionNotFound: meld3>=0.6.5

5

写入supervisor配置#通过写配置命令检查supervisor是否安装成功 echo_supervisord_conf > /etc/supervisord.conf #创建一个supervisord的目录用来管理所有需要被守护的服务配置文件 mkdir /etc/supervisord # 创建一个redis.conf touch /etc/supervisord/redis.conf #redis.conf 配置如下,配置中需要一个log文件夹,所以需要先在/home/northloong/redis-3.2.8 创建一个log文件夹,否则可能会报错。 [program:redis] command=/home/northloong/redis-3.2.8/src/redis-server /home/northloong/redis-3.2.8/redis.conf directory=/home/northloong/redis-3.2.8 process_name=%(program_name)s umask=022 priority=100 autostart=true autorestart=true startsecs=10 startretries=3 stopsignal=TERM stopwaitsecs=10 stopasgroup=false killasgroup=false user=northloong redirect_stderr=false stdout_logfile=/home/northloong/redis-3.2.8/log/log.stdout stdout_logfile_maxbytes=100MB stdout_logfile_backups=10 stdout_events_enabled=false stderr_logfile=/home/northloong/redis-3.2.8/log/log.stderr stderr_logfile_maxbytes=100MB stderr_logfile_backups=10 stderr_events_enabled=false

6

将redis.conf配置引入到supervisord.conf中#编辑/etc/supervisord.conf,将配置文件最后这两行的注释去掉;[include];files = relative/directory/*.ini修改为:[include]files = /etc/supervisord/redis.conf#这个位置就是redis.conf的存放位置

7

Redis 安装配置#redis 的安装包可以去redis官网下载 cp /mnt/redis-3.2.8.tar.gz /home/northloong/ cd /home/northloong tar -zvxf redis-3.2.8.tar.gz && cd redis-3.2.8 && make && make install #修改redis.conf,关闭进程守护,为了让他通过supervisord来守护 #找到这一项 确认为no即可。 daemonize no

8

supervisor 启动redis#刚才上面我们已经把redis的配置导入到supervisord中了,所以我们只需要启动supervisord即可。 supervisord -c /etc/supervisord.conf #启动完成后,也可以通过supervisorctl status 来看redis的状态。

9

维护操作supervisorctl tail redis 查看日志 supervisorctl restart redis 重启redis服务。 #添加开机启动 echo 'supervisord -c /etc/supervisord.conf' >> /etc/rc.local

10

redis 优化配置redisecho never > /sys/kernel/mm/transparent_hugepage/enabled

推荐信息