博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
php-fpm定义成集群资源时报错解决方法
阅读量:6708 次
发布时间:2019-06-25

本文共 2344 字,大约阅读时间需要 7 分钟。

这是我在实验中碰到的问题,我们在定义php-fpm为资源的时候,用php程序包自带的脚本会报错。

笔者花了很多时间尝试了各种办法,最后找到了一位网友写的脚本,可以解决。

脚本如下:

#!/bin/sh
#=======================================================================================
# php-fpm - this script start and stop the php-fpm daemon
#
# chkconfig 35 on
# description: php-fpm is a FastCGI web server.
# processname: php-fpm
# config: /usr/local/php/etc/php-fpm.conf
# pidfile: /var/run/php-fpm.pid
#=======================================================================================
PATH=
/usr/local/sbin
:
/usr/local/bin
:
/sbin
:
/bin
:
/usr/sbin
:
/usr/bin
    
BINFILE=
"/usr/local/php/sbin/php-fpm"
CFGFILE=
"/usr/local/php/etc/php-fpm.conf"
PIDFILE=
"/var/run/php-fpm.pid"
LOCKFILE=
"/var/lock/php-fpm.lock"
    
RETVAL=0
    
start() {
    
[[ -x $BINFILE ]] || 
exit 
5
    
[[ -f $CFGFILE ]] || 
exit 
6
       
    
if 
[[ `
ps 
aux | 
grep 
php-fpm: | 
grep 
-
v 
grep 
wc 
-l` -gt 0 ]]; 
then
        
echo 
"The php-fpm is already running."
        
return 
1
    
fi
       
    
$BINFILE -t >
/dev/null 
2>&1
       
    
if 
[[ $? -
ne 
0 ]]; 
then
        
echo 
"The php-fpm configure has error."
        
return 
1
    
fi
       
    
echo 
-n 
"Starting php-fpm......"
    
$BINFILE -y $CFGFILE -g ${PIDFILE}
    
RETVAL=$?
    
echo
    
[[ $RETVAL -
eq 
0 ]] && 
touch 
$LOCKFILE
       
    
return 
$RETVAL
}
    
stop() {
    
if 
[[ `
ps 
aux | 
grep 
php-fpm: | 
grep 
-
v 
grep 
wc 
-l` -
eq 
0 ]]; 
then
        
echo 
"The php-fpm is not running."
        
return 
1
    
fi
       
    
echo 
-n 
"Shutting down php-fpm......"
       
    
if 
[[ -f $PIDFILE ]]; 
then
        
kill 
-QUIT `
cat 
${PIDFILE}`
    
else
        
kill 
-QUIT `
ps 
aux | 
grep 
php-fpm | 
awk 
'/master/{print $2}'
`
    
fi
       
    
RETVAL=$?
    
echo
    
[[ $RETVAL -
eq 
0 ]] && 
rm 
-f $LOCKFILE $PIDFILE
       
    
return 
$RETVAL
}
    
restart() {
    
stop
    
sleep 
1
       
    
while 
true
    
do
        
if 
[[ `
ps 
aux | 
grep 
php-fpm: | 
grep 
-
v 
grep 
wc 
-l` -
eq 
0 ]]; 
then
            
start
            
break
        
fi
        
sleep 
1
    
done
       
    
RETVAL=$?
    
echo
       
    
return 
$RETVAL
}
    
reload() {
    
if 
[[ `
ps 
aux | 
grep 
php-fpm: | 
grep 
-
v 
grep 
wc 
-l` -
eq 
0 ]]; 
then
        
echo 
"The php-fpm is not running."
        
return 
1
    
fi
       
    
echo 
-n $
"Reloading php-fpm......"
       
    
if 
[[ -f $PIDFILE ]]; 
then
        
kill 
-USR2 `
cat 
${PIDFILE}`
    
else
        
kill 
-USR2 `
ps 
aux | 
grep 
php-fpm | 
awk 
'/master/{print $2}'
`
    
fi
       
    
RETVAL=$?
    
echo
       
    
return 
$RETVAL
}
    
case 
"$1" 
in
start)
    
start
    
;;
       
stop)
    
stop
    
;;
       
restart)
    
restart
    
;;
       
reload)
    
reload
    
;;
       
*)
    
echo 
"Usage: service php-fpm {start|stop|restart|reload}"
    
RETVAL=1
esac
    
exit 
$RETVAL

此脚本出自 ” 博客,请务必保留此出处

将这个脚本替换掉php-fpm程序提供的脚本,然后在定义资源的时候不要使用资源监控(monitor)不然也会报错,笔者的定义方式如下:

crm configure primitive php-fpm lsb:php-fpm 

转载地址:http://qlnlo.baihongyu.com/

你可能感兴趣的文章
linux进程
查看>>
rabbitmq routing and binding relation
查看>>
clojure 备忘
查看>>
CentOS7上搭建Maven服务器
查看>>
关于dispatch_semaphore的使用
查看>>
VS2008编译工程缺少glaux库的解决方法
查看>>
Linux Crontab 定时任务 命令详解
查看>>
android APN cmnet切换cmwap
查看>>
Xcode环境变量列表
查看>>
openlava-4.0 安装教程(VMware/centos7)
查看>>
fineui实时监控(增、删、改)+CDC+长连接(一)
查看>>
mysql5.7的半同步复制
查看>>
Apache HttpClient (理解Http Client)
查看>>
Alibaba Sentinel 源码阅读(Part 2 LeapArray)
查看>>
Spring(三)装配Bean:手动装配Bean
查看>>
eclipse 调试时出现!MESSAGE Could not find bundle: or...
查看>>
ERROR Found the synthetic property @routerTransition
查看>>
js如何只获得Element自定义属性(自己手写在标签上的规定属性),不是自定义属性$(obj).attr("xx")...
查看>>
jquery support
查看>>
申奥动画长片名单出炉,动画质量大PK
查看>>