haproxy 試した

L7ロードバランサプロキシ。cookie insertによるpersistenceなんかも出来るとのこと。

install

debianで。

# apt-get insatll haproxy

  • /etc/default/haproxy
ENABLED=1

RHEL系の場合はepelから入れる。

# yum install --enablerepo=epel haproxy

source install

tar.gzをとってきて展開。

$ make TARGET=linux26
$ sudo make install

./examples/ 以下にhaproxy.cfg やinit scriptのsampleがある。

config

/etc/haproxy/haproxy.cfg

  • option httpchk について

mode http のときにreal serverにOPTIONS ヘッダで死活監視をしている?
が、OPTIONSヘッダはセキュリティ的に無効化したほうが良いと言われていることもあってhttpdで許可されていない場合がある。(apacheはTraceEnable Off で無効、nginxはdefaultで無効?)

そんな場合は

#option httpchk <medhod> <url>
option httpchk HEAD /index.html

などとヘルスチェックのメソッド、URLを指定する。

追記

epelからinstallしたhaproxy 1.4.22 使ってみたら、defualt のhealth checkはOPTIONSじゃなくて、portがlistenいているかのcheckになった?
(httpd のログには400 Bad Requestが出てた)