Centos6下Varnish启动失败解决方法

街角谁来陪

街角谁来陪

2016-03-31 15:41

今天天气好晴朗处处好风光,好天气好开始,图老师又来和大家分享啦。下面给大家推荐Centos6下Varnish启动失败解决方法,希望大家看完后也有个好心情,快快行动吧!

Centos6下Varnish启动失败解决方法

 Centos6下Varnish启动失败解决方法 图老师

  Varnish是一款高性能的Web加速器,缓存性能非常好,于是我也学学这么好的东西。

  看到官网的最新版是4.0,毫不犹豫下载了4.0,安装上,安装非常顺利,可是用起来就没那么幸运了

  rpm –nosignature -i https://repo.varnish-cache.org/redhat/varnish-4.0.el6.rpm

  yum install varnish

  准备启动varnish,却一直提示失败

  [root@localhost ~]# service varnish start

  Starting Varnish Cache: [FAILED]

  根据官网的教程,使用手动方式启动,一切正常,分析结论是启动脚本有问题,于是先更改了 /etc/sysconfig/varnish 开启debug模式

  在DAEMON_OPTS变量末尾 加上一个 -d ,让其以debug模式启动:

  DAEMON_OPTS="-a ${VARNISH_LISTEN_ADDRESS}:${VARNISH_LISTEN_PORT}

  -f ${VARNISH_VCL_CONF}

  -T ${VARNISH_ADMIN_LISTEN_ADDRESS}:${VARNISH_ADMIN_LISTEN_PORT}

  -t ${VARNISH_TTL}

  -p thread_pool_min=${VARNISH_MIN_THREADS}

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/fuwuqi/)

  -p thread_pool_max=${VARNISH_MAX_THREADS}

  -p thread_pool_timeout=${VARNISH_THREAD_TIMEOUT}

  -u varnish -g varnish

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/fuwuqi/)

  -S ${VARNISH_SECRET_FILE}

  -s ${VARNISH_STORAGE} -d"

  然后启动发现一直卡在那里,不动了,再改一下 /etc/init.d/varnish中的start函数,开始有提示信息了( /dev/null 2&1 是屏蔽任何输出信息)

  代码如下:

  daemon --pidfile $pidfile $exec -P $pidfile "$DAEMON_OPTS" /dev/null 2&1

  终于有提示信息了

  [root@localhost ~]# service varnish start

  Starting Varnish Cache: Failed to change owner on ./vcl.qQKfF5iP.c: Operation not permitted

  Running VCC-compiler failed, exited with 2

  VCL compilation failed

  [FAILED]

  原来是权限问题,觉得可能是个4.0的新版本bug,只能将启动的用户和组改成root(-u 和 -p),先将就用用吧,反正只是拿来学习一下。如果是生产系统,建议不要用root启动,因为一旦varnish存在漏洞,如远程溢出或者命令执行,直接就是root权限。

  DAEMON_OPTS="-a ${VARNISH_LISTEN_ADDRESS}:${VARNISH_LISTEN_PORT}

  -f ${VARNISH_VCL_CONF}

  -T ${VARNISH_ADMIN_LISTEN_ADDRESS}:${VARNISH_ADMIN_LISTEN_PORT}

  -t ${VARNISH_TTL}

  -p thread_pool_min=${VARNISH_MIN_THREADS}

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/fuwuqi/)

  -p thread_pool_max=${VARNISH_MAX_THREADS}

  -p thread_pool_timeout=${VARNISH_THREAD_TIMEOUT}

  -u root -g root

  -S ${VARNISH_SECRET_FILE}

  -s ${VARNISH_STORAGE}"

  不要忘了把-d去除,启动成功

  终极解决办法:

  后来找到了问题的根源,是因为Centos/Redhat的Selinux问题(貌似是bug),参见:https://bugzilla.redhat.com/show_bug.cgi?id=1125165

  只要执行如下命令即可正确启动Varnish:

  #setenforce 0

Varnish不能启动问题的解决办法
展开更多 50%)
分享

猜你喜欢

Centos6下Varnish启动失败解决方法

服务器
Centos6下Varnish启动失败解决方法

Centos6下Varnish启动失败的解决办法

服务器
Centos6下Varnish启动失败的解决办法

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

Windows 2008R2 HyperV下安装CentOS6

服务器
Windows 2008R2 HyperV下安装CentOS6

cwRsync server服务启动失败的解决方法

电脑入门
cwRsync server服务启动失败的解决方法

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

Linux grub2启动失败的解决方法

电脑入门
Linux grub2启动失败的解决方法

实例讲解启动mysql server失败的解决方法

编程语言 网络编程
实例讲解启动mysql server失败的解决方法

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

ios9怎么用回4位密码?

ios9怎么用回4位密码?

iPhone6s和三星S6 Edge哪个好

iPhone6s和三星S6 Edge哪个好
下拉加载更多内容 ↓