文档章节

ip负载均衡(HA+LB)

joansun
 joansun
发布于 2014/05/24 17:13
字数 992
阅读 67
收藏 0
使用集群技术和Linux操作系统实现一个高性能、高可用的服务器.
很好的可伸缩性(Scalability)
很好的可靠性(Reliability)

很好的可管理性(Manageability)

可伸缩网络服务的几种结构,它们都需要一个前端的负载调度器(或者多个进行主从备份)。我们先分析实现虚拟网络服务的主要技术,指出IP负载均衡技术是在负载调度器的实现技术中效率最高的。在已有的IP负载均衡技术中,主要有通过网络地址转换(Network Address Translation)将一组服务器构成一个高性能的、高可用的虚拟服务器,我们称之为VS/NAT技术(Virtual Server via Network Address Translation)。在分析VS/NAT的缺点和网络服务的非对称性的基础上,我们提出了通过IP隧道实现虚拟服务器的 方法VS/TUN (Virtual Server via IP Tunneling),和通过直接路由实现虚拟服务器的方法VS/DR(Virtual Server via Direct Routing),它们可以极大地提高系统的伸缩性。VS/NAT、VS/TUN和VS/DR技术是LVS集群中实现的三种IP负载均衡技术

LVS集群采用IP负载均衡技术和基于内容请求分发技术。调度器具有很好的吞吐率,将请求均衡地转移到不同的服务器上执行,且调度器自动屏蔽掉服务器的故障,从而将一组服务器构成一个高性能的、高可用的虚拟服务器。整个服务器集群的结构对客户是透明的,而且无需修改客户端和服务器端的程序。为此,在设计时需要考虑系统的透明性、可伸缩性、高可用性和易管理性。

http://zh.linuxvirtualserver.org/node/35 可以查询到内核中的链接调度算法

在内核中的连接调度算法上,IPVS已实现了以下十种调度算法:

  • 轮叫调度(Round-Robin Scheduling)
  • 加权轮叫调度(Weighted Round-Robin Scheduling)
  • 最小连接调度(Least-Connection Scheduling)
  • 加权最小连接调度(Weighted Least-Connection Scheduling)
  • 基于局部性的最少链接(Locality-Based Least Connections Scheduling)
  • 带复制的基于局部性最少链接(Locality-Based Least Connections with Replication Scheduling)
  • 目标地址散列调度(Destination Hashing Scheduling)
  • 源地址散列调度(Source Hashing Scheduling)
  • 最短预期延时调度(Shortest Expected Delay Scheduling)
  • 不排队调度(Never Queue Scheduling)
  现在 做通过直接路由实现虚拟服务器的方法VS/DR(Virtual Server via Direct Routing)负载均衡

在调度服务器上配置

yum install ipvsadm (大概是用来书写调度策略的)

ipvsadm --help 

ipvsadm -A -t 192.168.2.252:80 -s rr 添加一个虚拟服务
  ipvsadm -a -t 192.168.2.252:80 -r 192.168.2.233:80 -g  添加被调度节点
  ipvsadm -a -t 192.168.2.252:80 -r 192.168.2.253:80 -g
  ipvsadm -l 查看调度信息

在被调度节点上配置

yum install httpd -y 安装http服务
 /etc/init.d/httpd start

yum install -y arptables_jf (用来写arp策略的)
   ifconfig eth0:0 192.168.2.252 netmask 255.255.255.255 (添加一个虚拟ip)

arptables -A IN -d 192.168.2.252 -j DROP 访问这个虚拟ip时丢掉,在同一局域网里,访问这个虚拟ip 时只能访问调度器

   arptables -A OUT -s 192.168.2.252 -j mangle --mangle-ip-s 192.168.2.253

在回应客户端时,用被调度节点的真实ip

/etc/init.d/arptables_jf save  必须保存策略

/etc/init.d/arptables_jf start 开启

测试

在每个被调度节点上的服务(http)默认发布目录上写不同的页面内容

echo `hostname` > /var/www/html/index.html

在web上访问虚拟ip时就可以出现轮询。

在浏览器所在客户端上查看访问这个虚拟ip时是否访问的是调度服务器

arp -a

(192.168.2.252) at 52:54:00:01:f0:8a [ether] on br100 看mac地址是否是调度服务器的。




© 著作权归作者所有

共有 人打赏支持
joansun
粉丝 4
博文 12
码字总数 8931
作品 0
西安
keepalived+lvs(HA+LB)

Keepalived+lvs (HA+LB) 主机环境:RHEL6 系列 selinux and iptables disabled 实验主机: LVS‐ACTIVE: 192.168.2.15 LVS‐BACKUP: 192.168.2.117 LVS‐VIP: 192.168.2.27 Realsever: 192.16......

joansun
2014/06/02
0
0
负载均衡(一)——初始负载均衡

最近在看的几本书中都提到负载均衡技术,发现自己对这部分内容了解的并不是很多,所以把这块知识补充一下。与君共勉~! 什么是负载均衡(Load balancing) 在网站创立初期,我们一般都使用单台机...

simple简单
2017/07/03
0
0
负载均衡(一)——初识负载均衡

最近在看的几本书中都提到负载均衡技术,发现自己对这部分内容了解的并不是很多,所以把这块知识补充一下。与君共勉~! 什么是负载均衡(Load balancing) 在网站创立初期,我们一般都使用单...

2017/07/01
0
0
四层负载均衡转发模式

负载均衡又分为四层负载均衡和七层负载均衡。四层负载均衡工作在OSI模型的传输层,主要工作是转发,它在接收到客户端的流量以后通过修改数据包的地址信息将流量转发到应用服务器。 image 七层...

高广超
01/01
0
0
负载均衡原理与技术实现

负载均衡(Load Balance,简称LB)是一种服务器或网络设备的集群技术。负载均衡将特定的业务(网络服务、网络流量等)分担给多个服务器或网络设备,从而提高了业务处理能力,保证了业务的高可用性...

彦天天
2017/05/04
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

深夜胡思乱想

魔兽世界 最近魔兽世界出了新版本, 周末两天升到了满级,比之前的版本体验好很多,做任务不用抢怪了,不用组队打怪也是共享拾取的。技能简化了很多,哪个亮按哪个。 运维 服务器 产品 之间的...

Firxiao
6分钟前
0
0
MySQL 8 在 Windows 下安装及使用

MySQL 8 带来了全新的体验,比如支持 NoSQL、JSON 等,拥有比 MySQL 5.7 两倍以上的性能提升。本文讲解如何在 Windows 下安装 MySQL 8,以及基本的 MySQL 用法。 下载 下载地址 https://dev....

waylau
39分钟前
0
0
微信第三方平台 access_token is invalid or not latest

微信第三方开发平台code换session_key说的特别容易,但是我一使用就带来无穷无尽的烦恼,搞了一整天也无济于事. 现在记录一下解决问题的过程,方便后来人参考. 我遇到的这个问题搜索了整个网络也...

自由的开源
今天
0
0
openJDK之sun.misc.Unsafe类CAS底层实现

注:这篇文章参考了https://www.cnblogs.com/snowater/p/8303698.html 1.sun.misc.Unsafe中CAS方法 在sun.misc.Unsafe中CAS方法如下: compareAndSwapObject(java.lang.Object arg0, long a......

汉斯-冯-拉特
今天
2
0
设计模式之五 责任链模式(Chain of Responsibility)

一. 场景 相信我们都有过这样的经历; 我们去职能部门办理一个事情,先去了A部门,到了地方被告知这件事情由B部门处理; 当我们到了B部门的时候,又被告知这件事情已经移交给了C部门处理; ...

JackieRiver
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部