Haproxy——负载均衡,网页监控,访问控制,动静分离,读写分离

一、HAProxy简介

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

  • (2)HAProxy 实现了一种事件驱动、单一进程模型,此模型支持非常大的并发连接数。多进程或多线程模型受内存限制、系统调度器限制以及无处不在的锁限制,很少能处理数千并发连接。事件驱动模型因为在有更好的资源和时间管理的用户端(User-Space)实现所有这些任务,所以没有这些问题。此模型的弊端是,在多核系统上,这些程序通常扩展性较差。这就是为什么他们必须进行优化以使每个CPU时间片(Cycle)做更多的工作。

  • (3)HAProxy 支持连接拒绝:因为维护一个连接的打开的开销是很低的,有时我们很需要限制攻击蠕虫(attack bots),也就是说限制它们的连接打开从而限制它们的危害。这个已经为一个陷于小型DDoS攻击的网站开发了而且已经拯救了很多站点,这个优点也是其它负载均衡器没有的。

DDOS攻击:分布式拒绝服务攻击(英文意思是Distributed Denial of Service,简称DDoS)是指处于不同位置的多个攻击者同时向一个或数个目标发动攻击,或者一个攻击者控制了位于不同位置的多台机器并利用这些机器对受害者同时实施攻击。由于攻击的发出点是分布在不同地方的,这类攻击称为分布式拒绝服务攻击,其中的攻击者可以有多个。
分布式拒绝服务攻击原理:分布式拒绝服务攻击DDoS是一种基于DoS的特殊形式的拒绝服务攻击,是一种分布的、协同的大规模攻击方式。单一的DoS攻击一般是采用一对一方式的,它利用网络协议和操作系统的一些缺陷,采用欺骗和伪装的策略来进行网络攻击,使网站服务器充斥大量要求回复的信息,消耗网络带宽或系统资源,导致网络或系统不胜负荷以至于瘫痪而停止提供正常的网络服务。与DoS攻击由单台主机发起攻击相比较,分布式拒绝服务攻击DDoS是借助数百、甚至数千台被入侵后安装了攻击进程的主机同时发起的集团行为。

  • (4)HAProxy 支持全透明代理(已具备硬件防火墙的典型特点): 可以用客户端IP地址或者任何其他地址来连接后端服务器.这个特性仅在Linux 2.4/2.6内核打了cttproxy补丁后才可以使用。这个特性也使得为某特殊服务器处理部分流量同时又不修改服务器的地址成为可能。

具体详细信息请点击

二.Haproxy实现负载均衡

实验过程如下:

实验环境:

主机 ip 服务
meng1 172.25.11.1 Haproxy
meng2 172.25.11.2 apache
meng3 172.25.11.3 apache
物理机 172.25.11.250 测试

以前的haproxy可以打包为rpm包,现在不行(因为没有.spec文件,有就可以打包)

为了纯净的实验环境,最好重新创建快照,名字跟之前的一样,可以将之前的覆盖

在这里插入图片描述

第一步:安装和配置haproxy,并启动服务

[root@meng1 ~]# yum install -y haproxy.x86_64 
[root@meng1 ~]# cd /etc/haproxy/
[root@meng1 haproxy]# ls
haproxy.cfg
[root@meng1 haproxy]# vim haproxy.cfg 
 63 frontend  main 
 64     
 65     bind  *:80
 66     
 67     default_backend    webserver
 68 #---------------------------------------------------------------------
 69 # static backend for serving up images, stylesheets and such
 70 #---------------------------------------------------------------------
 71 backend webserver
 72     balance     roundrobin
 73     server      web1  172.25.11.2:80 check
 74     server      web2  172.25.11.3:80 check
[root@meng1 haproxy]# systemctl start haproxy
[root@meng1 haproxy]# systemctl status haproxy

在这里插入图片描述
在这里插入图片描述

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值