ts2009 发表于 2019-1-1 09:12:27

haproxy1.8安装配置

  1 下载最新的版本的haproxy(最新版本为1.8),此链接需要×××才能打开
下载链接为:http://www.haproxy.org/download/1.8/src/
简介
目前正在维护的版本有 1.41.51.61.7的 和正在测试的1.8版本。haproxy与keepalived一样,重CentOS6.4以后开始被收录到base仓库,随系统反向光盘直接提供,由此,我们可以看到他的市场占有率和被大众接受的程度,同时,他的可靠性也足以被验证;haproxy是随base仓库提供的,但nginx没有,还属于epel仓库才有。也就意味着,我们将来要配置使用haproxy要比使用nginx还要容易一些。至少从来源方面来说如此;
2 源码安装
2.1 安装依赖的软件包
yum -y install gcc systemd-devel
2.2 解压源码包
tar zxvf haproxy-1.8.0.tar.gz
cd haproxy-1.8.0/
2.3 注意点
如果不安装system-devel软件包的话,进行make编译的时候,报如下错误
http://i2.运维网.com/images/blog/201712/15/026c1020dc38e94115705695e1bcd9b7.png
2.4 编译安装
make TARGET=linux3100 USE_PCRE=1 USE_OPENSSL=1 USE_ZLIB=1 USE_SYSTEMD=1
TARGET=linux3100,这个值是根据系统当前版本而定,uname -r查询当前内核的版本
http://i2.运维网.com/images/blog/201712/15/86f8b6ee198699f1ae40dcab0f886857.png
将haproxy安装到/usr/local/haproxy目录
make install PREFIX=/usr/local/haproxy
2.5 将haproxy命令复制到/usr/sbin目录下
cp -rf /usr/local/haproxy/sbin/haproxy /usr/sbin/
查看haproxy的版本为1.8
http://i2.运维网.com/images/blog/201712/15/ac01f58c8bda155da849680878aa4503.png
3 配置haproxy的配置文件
3.1 定义一个haproxy.cfg的文件
mkdir /etc/haproxy
vim /etc/haproxy/haproxy.cfg
global
log 127.0.0.1 local2
maxconn 65536
chroot /var/lib/haproxy
pidfile /var/run/haproxy.pid
user haproxy
group haproxy
daemon
  defaults
log global
option dontlognull
retries 3
option redispatch
maxconn 65536
timeout connect 70000
timeout client 70000
timeout server 70000
  listen admin_stats
bind 192.168.24.148:48800
stats uri /admin-status
stats auth admin:admin
mode http
option httplog
  listen test1
bind 192.168.24.148:3307
mode tcp
balance roundrobin
server dev-haproxy00.cz 192.168.24.148:3306 check port 3306 inter 5s rise 2 fall 3
3.2 定义服务的配置文件
3.2.1 vim /lib/systemd/system/haproxy.service

Description=HAProxy Load Balancer
After=syslog.target network.target
  
ExecStartPre=/usr/sbin/haproxy -f /etc/haproxy/haproxy.cfg -c -q
ExecStart=/usr/sbin/haproxy -Ws -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid
ExecReload=/bin/kill -USR2 $MAINPID
  
WantedBy=multi-user.target
3.2.2 执行daemon-reload
systemctl daemon-reload
3.2.3 查看haprox的状态
systemctl status haproxy
http://i2.运维网.com/images/blog/201712/15/6494c53f469596050675226ec81ccc02.png
3.2.4 启动haproxy
systemctl start haproxy
http://i2.运维网.com/images/blog/201712/15/9a905ac9e2e1ec034eb36b44f18f4cd6.png
http://i2.运维网.com/images/blog/201712/15/08bd3cf167fb5963af6930ee8a7a4fef.png
3.2.5 加入开机启动
http://i2.运维网.com/images/blog/201712/15/e4d7f37a30575bb519e69b0adb1a185e.png
  4 负载httpd
4.1 定义配置文件
vim /etc/haproxy/haproxy.cfg
global
log 127.0.0.1 local2
maxconn 65536
chroot /var/lib/haproxy
pidfile /var/run/haproxy.pid
user haproxy
group haproxy
daemon
  defaults
log global
option dontlognull
retries 3
option redispatch
maxconn 65536
timeout connect 70000
timeout client 70000
timeout server 70000
  listen admin_stats
bind 192.168.24.148:48800
stats uri /admin-status
stats auth admin:admin
mode http
option httplog
  frontend web
bind 0.0.0.0:80
default_backend webser
backend webser
balance roundrobin
server web1 192.168.26.130:80 check port 80 inter 5s rise 2 fall 3
server web2 192.168.26.131:80 check port 80 inter 5s rise 2 fall 3
4.2 配置后端的两台web服务器
分别在192.168.26.130和192.168.26.131配置
192.168.26.130
yum -y install httpd
vim /var/www/html/index.html
Backend Server: 192.168.26.130
  192.168.26.131
yum -y install httpd
vim /var/www/html/index.html
Backend Server: 192.168.26.131
4.3 查看haproxy的监控页面
http://i2.运维网.com/images/blog/201712/15/cb721be618640c87e16777716772d6e2.png
4.4 进行验证是否负载均衡
http://i2.运维网.com/images/blog/201712/15/d7bf51f04fcedc604c05da2acdf36b9c.png
可以看到是轮询的进行负载的
5 常用命令
5.1 haproxy -c -f   检测配置语法
haproxy -c -f /etc/haproxy/haproxy.cfg
http://i2.运维网.com/images/blog/201712/15/2107f6ae12d4dc690c9da3176e3d0c4a.png
5.2 haproxy -D -fconfig.cfg启动 守护进程
hproxy -D -f config.cfg-p $PIDFILE -sf $(cat $PIDFILE)



页: [1]
查看完整版本: haproxy1.8安装配置