您的位置:首页 > 其它

HAProxy 学习笔记-- 配置日志

2012-06-27 15:47 225 查看
HAProxy, "The Reliable, High Performance TCP/HTTP Load Balancer"

使用HAProxy负载若干python websocket实例,安装完HAProxy后,默认情况下,HAProxy为了节省读写IO所消耗的性能,默认情况下没有日志输出,以下是我配置log的过程:
Fedora16 默认使用的是rsyslog管理log
[align=center] [/align]
可通过以下shell来检查:
#rpm -q sysklogd syslog-n rsyslog
package sysklogd is not installed

package syslog-n is not installed

rsyslog-5.8.7-1.fc16.i686
#rpm -ql rsyslog | grep conf$
/etc/rsyslog.conf
1.
vim /etc/rsyslog.conf
添加local0.* /var/log/haproxy.log
这里对路径如果修改为/home/xinz/haproxytest/log目录下,由于rsyslog默认情况下,没有访问home目录下的权限,可以参考:

You can generate a local policy module to allow this access.

Do

allow this access for now by executing:

# grep rsyslogd /var/log/audit/audit.log | audit2allow -M mypol

# semodule -i mypol.pp
2.

rsyslog 默认情况下,需要在514端口监听UDP,所以可以把/etc/rsyslog.conf如下的注释去掉

# Provides UDP syslog reception

$ModLoad imudp

$UDPServerRun 514
3.重启 rsyslog
service rsyslog restart

service rsyslog status
4.在任意工作目录下,配置如下文件
Haproxy.conf代码

global

log 127.0.0.1 local0 info

maxconn 10000

ulimit-n 30000

defaults

log global

mode http

frontend pub-srv 0.0.0.0:8080

maxconn 10000

timeout client 40s

use_backend websocket if { hdr(Upgrade) -i WebSocket }

default_backend http

backend websocket

timeout connect 100s

timeout server 600s

server ws1 localhost:8084 weight 1 maxconn 5000 check

server ws2 localhost:8085 weight 1 maxconn 5000 check

backend http

timeout connect 40s

timeout server 30s

server www1 localhost:8084 weight 1 maxconn 5000 check

server www2 localhost:8085 weight 1 maxconn 5000 check

5. 如果是public 80端口需要root权限执行,这里简单测试使用8080

haproxy -f ./haproxy.conf

6. 日志输出在/var/log/haproxy.log下

在另一台linux26机器上配置log如下,使用的是syslog

vim /etc/sysconfig/syslog

SYSLOGD_OPTIONS="-m 0 -r"

[align=center] [/align]
添加-r参数

-r:enables logging from remote machines

vim /etc/syslog.conf

添加如下内容:

local0.* /var/log/haproxy.log

/sbin/service syslog restart

其他的配置内容步骤是一样的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐