HAproxy+Keepalived高可用负载均衡部署

2022-06-29 18:51:04 浏览数 (1)

HAproxy Keepalived高可用负载均衡部署

一、安装haproxy软件 wget http://haproxy.1wt.eu/download/1.4/src/haproxy-1.4.22.tar.gz tar zxvf haproxy-1.4.22.tar.gz cd haproxy-1.4.22 make TARGET=linux26 PREFIX=/usr/local/haproxy make install PREFIX=/usr/local/haproxy cd /usr/local/haproxy mkdir conf cd conf

二、在/usr/local/haproxy/conf/目录下创建配置文件(haproxy.cfg) global         maxconn 20480         chroot /usr/local/haproxy         uid 99         gid 99         daemon         quiet         nbproc 1         stats socket /usr/local/haproxy/haproxy.stat mode 666         log    127.0.0.1 local3         pidfile  /usr/local/haproxy/haproxy.pid         ulimit-n 65535 defaults         log    global         mode    http         maxconn 20480         #option  httplog clf         option  httplog         option  dontlognull         option httpclose         option abortonclose         option redispatch         retries 3       monitor-uri /site_status          contimeout      5000         clitimeout      50000         srvtimeout      50000 frontend WEB-BANMA-cluster          bind *:80          default_backend web_pool backend web_pool          balance source #      balance leastconn            cookie  SERVERID         option forwardfor         option  httpchk GET /check.html         server  app1_1 192.168.10.15:80  cookie app1inst1 check inter 2000 rise 2 fall 5 weight 3         server  app1_2 192.168.10.16:80  cookie app1inst2 check inter 2000 rise 2 fall 5 weight 6         stats refresh 5s         stats uri /status         stats realm Haproxy statistics         stats auth admin:admin123         stats admin if TRUE

三、如何给haproxy添加日志记录 ①、如果是CentOS6.0以下版本配置 一、 vi /etc/syslog.conf local3.*    /var/log/haproxy.log 二、vi /etc/sysconfig/syslog SYSLOGD_OPTIONS="-m 0" 改成 SYSLOGD_OPTIONS="-r -m 0" #enables logging from remote machines 三、重启动 /etc/init.d/syslog restart

②、Centos6.0或centos6.0以上版本

一、配置日志 vi /etc/rsyslog.conf(去掉下面两行前的注释,一定要去掉,否则不记录日志) ModLoad imudp.so UDPServerRun 514 ##添加日志记录 local3.*        /var/log/haproxy.log(添加haproxy日志记录文件)

二、重启动服务 /etc/init.d/rsyslog restart

四、启动haproxy,进行检查,并查看日志 /usr/local/haproxy/sbin/haporxy -f /usr/local/haproxy/conf/haproxy.cfg

####################################################################################### 一、keepalived安装(主备机器安装方法一样) wget http://rpm5.org/files/popt/popt-1.16.tar.gz tar zxvf popt-1.16.tar.gz cd popt-1.16 ./configure make && make install wget http://www.keepalived.org/software/keepalived-1.2.7.tar.gz tar zxvf keepalived-1.2.7.tar.gz cd keepalived-1.2.7 ./configure --prefix=/usr/local/keepalived make && make install

二、初始化脚本 cp /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/keepalived  cp /usr/local/keepalived/sbin/keepalived /usr/sbin/  cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/  mkdir -p /etc/keepalived/  ln -s  /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf  chmod x /etc/init.d/keepalived

三、主机器配置文件(vi /etc/keepalived/keepalived.conf ),备机器只要(修改有注释地方即可) ! Configuration File for keepalived global_defs { router_id LVS_DEVEL } vrrp_script chk_http_port { script "/usr/local/keepalived/check_haproxy.sh" interval 2 weight 2 } vrrp_instance VI_1 {         state MASTER  (备机,改MASTER为BACKUP)         interface eth0         virtual_router_id 51         priority 150  (备机,改150为149)         advert_int 1         authentication {         auth_type PASS         auth_pass 1111         }         track_script {                 chk_http_port         }         virtual_ipaddress {         10.1.1.60         } }

四、检测haproxy状态的文件 status=$(ps aux|grep haproxy | grep -v grep | grep -v bash | wc -l) if [ "${status}" = "0" ]; then   /etc/init.d/haproxy start   status2=$(ps aux|grep haproxy | grep -v grep | grep -v bash |wc -l)   if [ "${status2}" = "0"  ]; then       /etc/init.d/keepalived stop   fi fi

五、启动keepalived /etc/init.d/keepalived start

0 人点赞