当前位置: 首页>>技术教程>>正文


haproxy 没有启动

, ,

问题描述

安装了一个新的 Ubuntu 10.04 服务器并以 root 身份登录我使用 apt-get 安装了 haproxy。

我可以直接将 haproxy 作为守护进程运行,但是当我执行 /etc/init.d/haproxy start 时什么也没有发生……甚至没有错误消息。

netstat -a 显示没有任何东西在使用 http 端口 我正试图用 haproxy 来平衡……

想法?

编辑

  1. 我注意到apt-get install haproxy最后说了这个:update-rc.d:警告:/etc/init.d/haproxy缺少LSB信息update-rc.d:见http://wiki.debian.org/LSBInitScripts

  2. /etc/default/haproxy 表示 ENABLED=1

sh -xv /etc/init.d/haproxy start 的调试输出

#!/bin/sh
#
# chkconfig: - 85 15
# description: HA-Proxy is a TCP/HTTP reverse proxy which is particularly suited \
#              for high availability environments.
# processname: haproxy
# config: /etc/haproxy.cfg
# pidfile: /var/run/haproxy.pid

# Source function library.
if [ -f /etc/init.d/functions ]; then
  . /etc/init.d/functions
elif [ -f /etc/rc.d/init.d/functions ] ; then
  . /etc/rc.d/init.d/functions
else
  exit 0
fi
+ [ -f /etc/init.d/functions ]
+ [ -f /etc/rc.d/init.d/functions ]
+ exit 0
root@li267-63:~#

最佳思路

编辑 /etc/default/haproxy 并确保其中有一行写着 ENABLED=1

默认值为 ENABLED=0。这样做是因为 haproxy 没有健全的默认配置,所以你需要先配置它,然后启用它。

次佳思路

我遇到了同样的问题,由于 “test” 线总是失败,因此设置 ENABLED 不起作用。找到原因:你必须编辑 /etc/default/haproxy 而不是 init 脚本。

第三种思路

我知道这是一个一年前的线程..但只是想分享我所学到的..

使用 /etc/init.d/haproxy reloadservice haproxy reload,它会重新加载好.. 毕竟我们只是希望它正确启动;)

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/12355.html,未经允许,请勿转载。