这里准备以两篇文章来大概讲述一下LVS负载均衡

NAT

TUN/DR和共享存储


为什么搭建LVS:

若一台服务器只能支持10人在线。那么有100人访问,则需要多少台服务器。

这个不言而喻:10台服务器

但是在网络平台中,每台服务器有指定的IP,也就是说,10台服务器有10个IP。那么问题随之而来,访问一个网站你会记住10个IP地址吗?你能确定服务器不会形成一台服务器接受8人访问而另一台服务器接受2人访问的不均衡情况产生吗?

答案是显而易见的!为解决这个问题,我们就不得不说一下LVS负载均衡

LVS负载均衡主要特点:

访问调度器IP就能调取服务器池的服务器

有调度器的算法分发相应的服务器提供服务


一:NAT简图


二:NAT搭建思路

2.1 服务端:

配置服务端的httpd、防火墙、ip地址

2.2 调度器:

加载模块:modprobe ip_vs / 查询版本信息: cat /proc/net/ip_vs

装ipvsadm管理模块信息:rpm -ivh /media/cdrom/Packages/ipvsadm-1.26-2.el6.x86_64.rpm

创建虚拟服务器:(虚拟服务器就是调度器)

Ipvsadm -A –t 虚拟服务器ip:80 –s rr 添加调度节点: Ipvsadm –a –t 虚拟服务器ip:80 –r 真实服务器ip:80 –m –w 1

Ipvsadm –ln

删除服务器节点:

Ipvsadm –d –r 真实服务器ip:80 –t 虚拟服务器ip:80

Ipvsadm –D –t 虚拟服务器ip:80

最后要启动ipvsadm服务: Service ipvsadm start

备注:

1:端口号一定要写(ip:80)

2:-m(NAT) –i(TUN) –g(DR)

3:调度器不需要启动httpd服务、虚拟服务器ip为调度器外网ip地址,真实服务器ip为服务器的ip

如:

客服端(10.10.1.1)

外网(10.10.1.254)-调度器-内网:(10.10.0.254)

服务端(10.10.0.*)

添加的虚拟服务器ip:10.10.1.254(192.168.1.0)

添加的节点服务器ip:10.10.0.*(192.168.0.0)


三:搭建详情

调度器:s3(192.168.2.1)

服务器:s1(192.168.1.108)、s2(192.168.1.104)

3.1 服务器端:(s1、s2)

一:开启httpd

[root@s1 ~]# service httpd start

二:关闭防火墙

[root@s1 ~]# service iptables stop
iptables:将链设置为政策 ACCEPT:filter [确定]
iptables:清除防火墙规则: [确定]
iptables:正在卸载模块: [确定]

3.2 调度器:(s3)

一:加载模块

[root@s3 ~]# modprobe ip_vs

二:安装ipvsadm管理模块信息:rpm -ivh /media/cdrom/Packages/ipvsadm-1.26-2.el6.x86_64.rpm

1.创建目录

[root@s3 ~]# mkdir /media/cdrom

2.挂载磁盘

[root@s3 ~]# mount /dev/cdrom /media/cdrom/
mount: block device /dev/sr0 is write-protected, mounting read-only

3.安装

[root@s3 ~]# rpm -ivh /media/cdrom/Packages/ipvsadm-1.26-2.el6.x86_64.rpm
warning: /media/cdrom/Packages/ipvsadm-1.26-2.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
Preparing... ########################################### [100%]
1:ipvsadm ########################################### [100%]

三:创建虚拟服务器

[root@s3 ~]# ipvsadm -A -t 192.168.2.1:80 -s rr

四:添加调度节点

[root@s3 ~]# ipvsadm -a -t 192.168.2.1:80 -r 192.168.1.108:80 -m -w 1
[root@s3 ~]# ipvsadm -a -t 192.168.2.1:80 -r 192.168.1.104:80 -m -w 1

五:查询结果

[root@s3 ~]# ipvsadm -ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 192.168.2.1:80 rr
-> 192.168.1.104:80 Masq 1 0 0
-> 192.168.1.108:80 Masq 1 0 0

六:启动ipvsadm服务: Service ipvsadm start

[root@s3 ~]#  service ipvsadm start
ipvsadm: Saving IPVS table to /etc/sysconfig/ipvsadm: [确定]
ipvsadm: Clearing the current IPVS table: [确定]
ipvsadm: Applying IPVS configuration: [确定]

最后关闭调度器防火墙

[root@s3 ~]#  service ipvsadm start

说明:

调度器需要开启路由转发协议

Vim /etc/sysctl.conf

执行 sysctl -p


四:结果

访问s3的web(注意s3是没有开启web服务的),会跳转至s1/s2服务器的web界面


本文版权声明:

本文作者:魁·帝小仙

博文主页地址:http://www.cnblogs.com/dxxblog/

欢迎对小博主的博客内容批评指点,如果问题,可评论或邮件联系(2335228250@qq.com)

欢迎转载,转载请在文章页面明显位置给出原文链接,谢谢

消费五分钟,小白也能了解的经典技术:关于IP负载均衡(LVS之NAT)的更多相关文章

  1. 10分钟学会windows中iis搭建服务器集群实现负载均衡和nginx代理转发

    前言 我们之前聊过 10分钟搭建服务器集群--Windows7系统中nginx与IIS服务器搭建集群实现负载均衡:https://www.cnblogs.com/xiongze520/p/103087 ...

  2. 负载均衡LVS之DR(附:NFS共享存储) 五分钟搭建手册

    一:DR-模式 调度器Ip:192.168.1.254 服务器ip:192.168.1.1/192.168.1.2 VIP:192.168.1.10 ——配置负载均衡调度器: 关闭重定向响应配置: V ...

  3. Linux系统(五)负载均衡LVS集群之DR模式

    序言 DR模式是lvs集群中三种负载均衡模式的其中一种,那么上一篇中我写啦关于NAT模式的搭建与原理,为什么还要有DR模式与IP隧道模式呢? 首先我们来看3张图.LVS/NAT模式如下图: LVS/I ...

  4. 小迪安全 Web安全 基础入门 - 第五天 - 资产架构&端口&应用&CDN&WAF&站库分离&负载均衡

    一.资产架构 1.Web单个源码指向安全,域名指向一个网站,网站对应一个程序.对应一个目录. 2.Web多个目录源码安全,搭建完一个网站后,在网站目录下搭建新的站点. 3.Web多个端口源码安全,与多 ...

  5. rocketmq消费负载均衡--push消费为例

    本文介绍了DefaultMQPushConsumerImpl消费者,客户端负载均衡相关知识点.本文从DefaultMQPushConsumerImpl启动过程到实现负载均衡,从源代码一步一步分析,共分 ...

  6. 五分钟学Java:如何才能学好Java Web里这么多的技术

    原创声明 本文作者:黄小斜 转载请务必在文章开头注明出处和作者. 系列文章介绍 本文是<五分钟学Java>系列文章的一篇 本系列文章主要围绕Java程序员必须掌握的核心技能,结合我个人三年 ...

  7. 用五分钟重温委托,匿名方法,Lambda,泛型委托,表达式树

    这些对老一代的程序员都是老生常谈的东西,没什么新意,对新生代的程序员却充满着魅力.曾经新生代,好多都经过漫长的学习,理解,实践才能掌握委托,表达式树这些应用.今天我尝试用简单的方法叙述一下,让大家在五 ...

  8. [分享] 史上最简单的封装教程,五分钟学会封装系统(以封装Windows 7为例)

    [分享] 史上最简单的封装教程,五分钟学会封装系统(以封装Windows 7为例) 踏雁寻花 发表于 2015-8-23 23:31:28 https://www.itsk.com/thread-35 ...

  9. JVM内存管理------GC算法精解(五分钟让你彻底明白标记/清除算法)

    相信不少猿友看到标题就认为LZ是标题党了,不过既然您已经被LZ忽悠进来了,那就好好的享受一顿算法大餐吧.不过LZ丑话说前面哦,这篇文章应该能让各位彻底理解标记/清除算法,不过倘若各位猿友不能在五分钟内 ...

随机推荐

  1. Zookeeper 集群安装

    负载均衡(Load Balance)是分布式系统架构设计中必须考虑的因素之一,它通常是指,将请求/数据[均匀]分摊到多个操作单元上执行,负载均衡的关键在于[均匀].常见互联网分布式架构如上,分为客户端 ...

  2. netty详解之io模型

    提起IO模型首先想到的就是同步,异步,阻塞,非阻塞这几个概念.每个概念的含义,解释,概念间的区别这些都是好理解,这里深入*nix系统讲一下IO模型. 在*nix中将IO模型分为5类. Blocking ...

  3. Android之本地相冊图片选取和拍照以及图片剪辑

    转载请注明出处:http://blog.csdn.net/loveyaozu/article/details/51160482 相信有非常多Android开发者在日常开发中,因为项目需求,须要我们的A ...

  4. ORA-16032: parameter LOG_ARCHIVE_DEST_3 destination string cannot be translated问题处理过程

    1,现象是oracle启动报错例如以下: SQL> startup ORA-16032: parameter LOG_ARCHIVE_DEST_3 destination string cann ...

  5. iWeb峰会(HTML5峰会)2015年7月19日上海站会后感想

         上周日专门从南京跑到上海參加了iWeb峰会(HTML5峰会),感觉这一天去的挺值的.几个演讲都挺精彩,干货不少啊.       总体感觉随着2014年HTML5标准的终于定稿,最近HTML5 ...

  6. ASP.NET WebAPI使用Swagger生成测试文档

    ASP.NET WebAPI使用Swagger生成测试文档 SwaggerUI是一个简单的Restful API测试和文档工具.简单.漂亮.易用(官方demo).通过读取JSON配置显示API .项目 ...

  7. IDEA使用有道翻译插件

    使用IDEA编写代码或者查看源码的时候有时候需要使用的翻译功能,虽然已经有繁多的翻译服务提供了桌面版的软件,但是并不大适合使用在阅读或者编写代码这个场景.IDEA丰富的插件库为我们提供了一些翻译插件, ...

  8. 安装Redis后RedisDesktopManager无法连接

    1.查看端口,发现端口不通 2.修改安装redis的目录的redis.conf文件,把bind改为虚拟机的本机ip 3.关闭虚拟机的防火墙 #1.查看防火墙状态[root@localhost src] ...

  9. 一个Web前端自学者的自述

    想来想去还是写下这篇文章,先说明,我精通JAVA编程语言和web前端常见的技术,个人是做JAVA的多,但是更加喜欢前端.因为我从高一开始接触JAVA,家父是黑马的JAVA讲师,自己对编程很热爱,在大学 ...

  10. Linux chgrp

    在学习 兄弟连 linux教学视频 的时候,我将所学的 linux 命令记录在我的博客中,方便自己查阅. 权限管理命令: chgrp 基础的命令 命令名称:chgrp 命令英文原意:change fi ...