HAProxy 入门使用、安装 (资源)

HAProxy 简介

HAProxy提供高可用性负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机, 它是免费、快速并且可靠的一种解决方案。HAProxy特别适用于那些负载特大的web站点, 这些站点通常又需要会话保持或七层处理。HAProxy运行在当前的硬件上,完全可以支持数以万计的并发连接。并且它的运行模式使得它可以很简单安全的整 合进您当前的架构中, 同时可以保护你的web服务器不被暴露到网络上。

HAProxy 是一个提供高可用、负载均衡,以及基于TCP和HTTP的代理程序。

HAProxy实现了一种事件驱动, 单一进程模型,此模型支持非常大的并发连接数。多进程或多线程模型受内存限制 、系统调度器限制以及无处不在的锁限制,很少能处理数千并发连接。

HAProxy架构

9c03004ab06f9a8ea372d50937c1e6bf7a8.jpg

 

环境

centos 7.0 3.10.0-514.el7.x86_64

haproxy 1.7.9

haproxy 编译依赖:gcc、make、autoconf、openssl

编译安装

编译依赖安装

 

  1. yum install gcc pcre pcre-devel openssl openssl-devel -y  

编译安装

# PREFIX参数指定安装的目录  

  1. make TARGET=linux2628 PREFIX=/usr/local/haproxy  
  2. make install PREFIX=/usr/local/haproxy  

安装完成后检查版本

/usr/local/haproxy/sbin/haproxy -v  

 

配置

创建软连接,因为haproxy.init 脚本默认会到/usr/sbin目录下找haproxy

 

  1. ln -s /usr/local/haproxy/sbin/haproxy /usr/sbin/haproxy  

进入编译的目录下的example目录,将haproxy.init文件复制到/etc/init.d/

 

  1. cp haproxy.init /etc/init.d/haproxy  

在赋予/etc/init.d/haproxy 755权限

 

  1. chmod 755 haproxy  

创建配置文件

在/etc/下创建haproxy目录

 

  1. mkdir /etc/harpoxy  

在配置目录下创建文件,haproxy.cfg

配置内容:

 

  1.         #全局配置  
  2.     global  
  3.         #设置日志  
  4.         log 127.0.0.1 local3 info  
  5.         chroot /usr/local/haproxy  
  6.         #用户与用户组  
  7.         user haproxy  
  8.         group haproxy  
  9.         #守护进程启动  
  10.         daemon  
  11.         #最大连接数  
  12.         maxconn 4000  
  13.   
  14.     #默认配置  
  15.     defaults  
  16.         log global  
  17.         mode http  
  18.         option httplog  
  19.         option dontlognull  
  20.         timeout connect 5000  
  21.         timeout client 50000  
  22.         timeout server 50000  
  23.   
  24.     #前端配置,http_front名称可自定义  
  25.     frontend http_front  
  26.         # 发起http请求道80端口,会被转发到设置的ip及端口  
  27.         bind *:80  
  28.         #haproxy的状态管理页面,通过/haproxy?stats来访问  
  29.         stats uri /haproxy?stats  
  30.         default_backend http_back  
  31.   
  32.     #后端配置,http_back名称可自定义  
  33.     backend http_back  
  34.         #负载均衡方式  
  35.         #source 根据请求源IP  
  36.         #static-rr 根据权重  
  37.         #leastconn 最少连接者先处理  
  38.         #uri 根据请求的uri  
  39.         #url_param 根据请求的url参数  
  40.         #rdp-cookie 据据cookie(name)来锁定并哈希每一次请求  
  41.         #hdr(name) 根据HTTP请求头来锁定每一次HTTP请求  
  42.         #roundrobin 轮询方式  
  43.         balance roundrobin  
  44.         #设置健康检查页面  
  45.         option httpchk GET /index.html  
  46.         #传递客户端真实IP  
  47.         option forwardfor header X-Forwarded-For  
  48.         # inter 2000 健康检查时间间隔2秒  
  49.         # rise 3 检测多少次才认为是正常的  
  50.         # fall 3 失败多少次才认为是不可用的  
  51.         # weight 30 权重  
  52.         # 需要转发的ip及端口  
  53.         server node1 192.168.179.131:8081 check inter 2000 rise 3 fall 3 weight 30  
  54.         server node2 192.168.179.131:8082 check inter 2000 rise 3 fall 3 weight 30  

配置haproxy日志,haproxy默认是不记录日志,需要借助rsyslog来记录

方法一:直接在/etc/rsyslog.conf中配置

 

  1. vim /etc/rsyslog.conf  

取消注释#
$ModLoad imudp
$UDPServerRun 514
添加
local3.* /var/log/haproxy.log
重启rsyslog
systemctl restart rsyslog

这样配置会haproxy的日志还会记录到/var/log/messages中

因此需要在*.info;mail.none;authpriv.none;cron.none后面追加local3.none

重启rsyslog

方法二:在/etc/rsyslog.d/下创建日志配置

从/etc/rsyslog.conf中的如下配置,可以看出rsyslog会读取/etc/rsyslog.d/目录下的所有以.conf结尾的配置文件

# Include all config files in /etc/rsyslog.d/

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

因此在/etc/rsyslog.d/下创建

haproxy.conf配置

 

  1. #配置haproxy的rsyslog日志  
  2. $ModLoad imudp  
  3. $UDPServerRun 514  
  4.   
  5. local3.* /var/log/haproxy.log  

为了不需要将日志写入到/var/log/messages中,还需要和方法一种配置一样在/etc/rsyslog.conf中

*.info;mail.none;authpriv.none;cron.none后面追加local3.none

重启rsyslog即可

启动服务

注意如果系统开启了防火墙需要打开对应的端口

第一次启动haproxy先使用

service命令,以后就可以使用systemctl命令来操作

service haproxy start

systemctl start haproxy

 

链接 : 

在CentOS上安装和使用代理软件HAProxy的完全攻略  :  

https://www.jb51.net/os/RedHat/409840.html

Linux系统下使用HAProxy配置HTTP负载均衡系统的方法  : https://www.jb51.net/LINUXjishu/236561.html
HAproxy健康检查的三种方式        :    https://www.cnblogs.com/liang-wei/p/6726487.html

 

 

 

转载于:https://my.oschina.net/u/3803405/blog/1820688

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值