HAProxy的基本配置和高可用及负载均衡

HAProxy是一个使用C语言编写的自由及开放源代码软件,其提供高可用性、负载均衡,以及基于TCP和HTTP的应用程序代理。

linux 6.5 源码

server1 172.25.254.100

一、haproxy的安装及配置

解压源码包

HAProxy的基本配置和高可用及负载均衡_第1张图片

yum install rpm-build -y   安装rpm-build软件

rpmbuild -tb haproxy-1.4.24.tar.gz  源码编译,制作rpm包

HAProxy的基本配置和高可用及负载均衡_第2张图片

yum install -y gcc pcre-devel 解决依赖性包安装

HAProxy的基本配置和高可用及负载均衡_第3张图片

rpm -ivh haproxy-1.4.24.x86_64.rpm     安装rpm包

[root@server ~]# cd haproxy-1.4.24/examples

[root@server examples]# cp content-sw-sample.cfg /etc/haproxy/haproxy.cfg

cp: overwrite `/etc/haproxy/haproxy.cfg'? y

[root@server examples]# find -name *.spec

./haproxy.spec

[root@server examples]# cd /etc/haproxy/

[root@server haproxy]# ls

haproxy.cfg

二、haproxy的负载均衡

[root@server haproxy]# groupadd -g 200 haproxy

[root@server haproxy]# useradd -u 200 -g 200 -M haproxy

[root@server haproxy]# id haproxy

uid=200(haproxy) gid=200(haproxy) groups=200(haproxy)

[root@server haproxy]# vim /etc/security/limits.conf

[root@server haproxy]# cd /etc/haproxy/

[root@server haproxy]# vim haproxy.cfg

HAProxy的基本配置和高可用及负载均衡_第4张图片

HAProxy的基本配置和高可用及负载均衡_第5张图片

HAProxy的基本配置和高可用及负载均衡_第6张图片

/etc/init.d/haproxy start ##打开服务 
在server2和server3中分别打开httpd 
/etc/init.d/httpd start

三、haproxy的高可用

haproxy+rhcs红帽套件实现haproxy的高可用

在浏览器访问:https://server1:8084,luci自动开启8084端口接受集群节点的11111端口的数据包 
使用server1的root密码登陆

HAProxy的基本配置和高可用及负载均衡_第7张图片

创建集群并添加集群节点:

HAProxy的基本配置和高可用及负载均衡_第8张图片

在浏览器添加Failover Domains:用来做节点隔离,或业务切换

HAProxy的基本配置和高可用及负载均衡_第9张图片

添加共享服务VIIP:

HAProxy的基本配置和高可用及负载均衡_第10张图片

添加haproxy脚本:

HAProxy的基本配置和高可用及负载均衡_第11张图片

将添加的资源放在一个资源组里: 
注意:添加的资源顺序就是集群启动后服务启动的顺序,所以要先添加vip,再添加haproxy

HAProxy的基本配置和高可用及负载均衡_第12张图片

HAProxy的基本配置和高可用及负载均衡_第13张图片

HAProxy的基本配置和高可用及负载均衡_第14张图片

测试:

HAProxy的基本配置和高可用及负载均衡_第15张图片

HAProxy的基本配置和高可用及负载均衡_第16张图片

刚开始haproxy 在server4上,当关闭server4的haproxy服务,就由server1接管,则实现haproxy的高可用,haproxy不会因为节点的关闭而不能使用。如上图所示

四、haproxy的日志

vim /etc/rsyslog.conf
去掉这两行注释

增加日志位置

/etc/init.d/rsyslog restart ###重启日志服务
测试: 在浏览器中访问后,查看日志


动静分离

vim /etc/haproxy/haproxy.cfg
修改配置

use_backend dynamic if { path_end -i .php } ###如果是以.php结尾的都会去访问server3

default_backend static ###默认去访问server2

HAProxy的基本配置和高可用及负载均衡_第17张图片

测试:在浏览器访问:IP
IP+.php

HAProxy的基本配置和高可用及负载均衡_第18张图片

 

 

 

 

 

 

你可能感兴趣的:(HAProxy的基本配置和高可用及负载均衡)