Haproxy介绍
HAProxy提供高可用性、负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费、快速并且可靠的一种解决方案。HAProxy特别适用于那些负载特大的web站点,这些站点通常又需要会话保持或七层处理。HAProxy运行在当前的硬件上,完全可以支持数以万计的并发连接。并且它的运行模式使得它可以很简单安全的整合进您当前的架构中, 同时可以保护你的web服务器不被暴露到网络上。
HAProxy基础配置文件详解
haproxy 配置中分成五部分内容,分别如下:
global: 设置全局配置参数,属于进程的配置,通常是和操作系统相关。
defaults:配置默认参数,这些参数可以被用到frontend,backend,Listen组件;
frontend:接收请求的前端虚拟节点,Frontend可以更加规则直接指定具体使用后端的backend;
backend:后端服务集群的配置,是真实服务器,一个Backend对应一个或者多个实体服务器;
Listen :frontend和backend的组合体。
haproxy实现负载均衡
环境要求
三台rhe6.5的虚拟机
server1上做haproxy部署,server2和server3作为后端服务器
- 安装软件(大家可以到官网下载最新版本)
https://www.haproxy.com/
tar zxf haproxy-1.7.3.tar.gz ##首先解压
rpmbuild -tb haproxy-1.7.3.tar.gz
yum install -y gcc ##安装必要的软件
yum install -y rpm-build
yum install -y pcre-devel
rpmbuild -tb haproxy-1.7.3.tar.gz
cd rpmbuild/RPMS/x86_64/
yum install -y haproxy-1.7.3-1.x86_64.rpm ##软件安装
cd /root/haproxy-1.7.3/examples/ ##这里面有配置文件的例子
cp content-sw-sample.cfg /etc/haproxy/haproxy.cfg
groupadd -g 200 haproxy ##创建haproxy用户
useradd -u 200 -g 200 haproxy
-
编写配置文件
vim /etc/haproxy/haproxy.cfg global maxconn 65535 stats socket /var/run/haproxy.stat mode 600 level admin log 127.0.0.1 local0 uid 200 gid 200 chroot /var/empty daemon defaults mode http log global option httplog option dontlognull monitor-uri /monitoruri maxconn 8000 timeout client 30s retries 2