CentOS 6.5 安裝haproxy

來源:互聯網
上載者:User

標籤:haproxy   配置   centos   



 1、安裝haproxy


 #tar xzvf haproxy-1.5.9.tar.gz

 #cd haproxy-1.5.9

# make TARGET=linux26 PREFIX=/usr/local/haproxy

# make install PREFIX=/usr/local/haproxy


# mkdir /usr/local/haproxy/etc

# mkdir -p /data/logs/haproxy



2、編輯haproxy 設定檔

# vi   /usr/local/haproxy/etc/haproxy.conf

global  log 127.0.0.1   local0  maxconn 4096  chroot /usr/local/haproxy  uid 0  gid 0daemon  nbproc 1  pidfile /usr/local/haproxy/haproxy.pid  #debugulimit-n 65535defaults    log global    mode http    retries 3    option httplog    option httpclose    option dontlognull    option forwardfor    option abortonclose    log 127.0.0.1 local3    #balance roundrobin    maxconn 2048   timeout connect 5000   timeout client 50000   timeout server 50000listen admin_stats       bind   *:8000       stats refresh 30s       stats uri /status       stats realm Haproxy Manager       stats auth  admin:admintest       stats hide-versionfrontend  wwwbind  *:80acl  web_fp   path_beg -i  /use_backend   www_site   if    web_fpfrontend   web_managebind  *:8080acl  web_mgr  path_beg -i  /web_manageuse_backend   mgr_site   if    web_mgrbackend  www_site#mode http#fullconn 4000option  httpchk GET  /about.jspstats refresh  2balance roundrobincookie SERVERID  insert indirectserver web_fp1  192.168.0.2:10000   cookie 1a check inter 2000 rise 2 fall 3  weight 50server web_fp2  192.168.0.2:11000   cookie 2a check inter 2000 rise 2 fall 3  weight 50backend  mgr_site server web_mgr  192.168.0.2:9000   check inter 2000 rise 2 fall 2




3、編輯haproxy 服務指令碼

#vi /etc/init.d/haproxy

#!/bin/sh#chkconfig: 35 86 86#description: HAProxy is a TCP/HTTP reverse proxy.#processname: haproxy# config: /usr/local/haproxy/etc/haproxy.conf# pidfile: /usr/local/haproxy/haproxy.pid#PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin                                               BINFILE="/usr/local/haproxy/sbin/haproxy"CFGFILE="/usr/local/haproxy/etc/haproxy.conf"PIDFILE="/usr/local/haproxy/haproxy.pid"LOCKFILE="/usr/local/haproxy/haproxy.lock"                                               RETVAL=0                                               start() {    [[ -x $BINFILE ]] || exit 5    [[ -f $CFGFILE ]] || exit 6                                                      $BINFILE -c -q -f $CFGFILE    [[ $? -ne 0 ]] && echo "The HAProxy configure has error." && return 1                                                      echo -n "Starting HAProxy......"    $BINFILE -f $CFGFILE -p $PIDFILE                                                      RETVAL=$?    echo    [[ $RETVAL -eq 0 ]] && touch $LOCKFILE                                                      return $RETVAL}                                               stop() {    echo -n "Shutting down HAProxy......"                                                      while true    do        killall  $BINFILE        [[ -z `ps aux | grep sbin/haproxy | grep -v grep` ]] && break    done                                                      RETVAL=$?    echo    [[ $RETVAL -eq 0 ]] && rm -f $LOCKFILE $PIDFILE                                                      return $RETVAL}                                               restart() {    stop    sleep 1    start}                                               reload() {    [[ -z `ps aux | grep sbin/haproxy | grep -v grep` ]] && echo "The HAProxy is not running." && return 1    echo -n $"Reloading HAProxy......"                                                      if [[ -f $PIDFILE ]]; then        $BINFILE -f $CFGFILE -st `cat $PIDFILE`    else        $BINFILE -f $CFGFILE -st `ps aux | grep sbin/haproxy | grep -v grep | awk ‘{print $2}‘`    fi                                                      RETVAL=$?    echo                                                      return $RETVAL}                                               case "$1" instart)    start    ;;                                                  stop)    stop    ;;                                                  restart)    restart    ;;                                                  reload)    reload    ;;                                                  condrestart)    [[ -e $LOCKFILE ]] && restart || :    ;;                                                  check)    $BINFILE -c -q -V -f $CFGFILE    ;;                                                  *)    echo "Usage: service haproxy {start|stop|restart|reload|condrestart|check}"    RETVAL=1esac                                               exit $RETVAL



4、編輯系統日誌配置


 # vim /etc/rsyslog.conf

 預設有下面的設定,會讀取 /etc/rsyslog.d/*.conf目錄下的設定檔

 $IncludeConfig /etc/rsyslog.d/*.conf


5、為haproxy建立一個獨立的設定檔


# vim  /etc/rsyslog.d/haproxy.conf

$ModLoad imudp

$UDPServerRun 514

local3.*     /var/log/haproxy.log

#如果不加下面的的配置則除了在/var/log/haproxy.log中寫入日誌外,也會寫入message檔案



6、配置rsyslog的主設定檔,開啟遠程日誌


# vim /etc/sysconfig/rsyslog

 SYSLOGD_OPTIONS="  -c 2 -r -m 0"

 #-c 2 使用相容模式,預設是 -c 5

 #-r 開啟遠程日誌

 #-m 0 標記時間戳記。單位是分鐘,為0時,表示禁用該功能


7、重啟haproxy和rsyslog服務



#/etc/init.d/rsyslog restart

#/etc/init.d/haproxy restart


8、查看haproxy 狀態

#/etc/init.d/haproxy status


haproxy 安裝完成。





本文出自 “工作日記” 部落格,請務必保留此出處http://3920625.blog.51cto.com/3910625/1691924

CentOS 6.5 安裝haproxy

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.