lvs原理和实战
lvs-dr原理

lvs-nat原理:

当我们的网站流量越来越大时一台web服务器已经无法满足需求了,我们该如何解决呢??
把服务器连接起来实现负载均衡或许是个不错的办法。。
下面我就来看看怎么实现吧。当然这只是个经典版的实验。不足之处请多多指教。
本实验使用了4台机器分别:
分发器:super63
realserver:super65、super66
客户机:super64
实验模型图例:

其中上图中VIP模拟公网IP可以和外面客户机通信。
原理简介:当客户机请求vip时,请求由路由器转发到分发器,再由分发器通过某种调度算法和mac转发给realserver实现负载均衡,realserver接到转发报文请求后再通过自身回环口vip向客户转发内容,其转发路径直接从某个出口路由到达客户机不经过分发器。
配置super63
配置IP
DIP eth0 192.168.1.70
VIP eth0:1 192.168.1.63
网关指向192.168.1.1
配置LVS-DR 规则(实验以轮询rr的方式)
[root@super63 network-scripts]# ipvsadm -A -t 192.168.1.63:80 -s rr
[root@super63 network-scripts]# ipvsadm -a -t 192.168.1.63:80 -r 192.168.1.65 -g
[root@super63 network-scripts]# ipvsadm -a -t 192.168.1.63:80 -r 192.168.1.66 –g
[root@super63 network-scripts]# ipvsadm -L -n #查看
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 192.168.1.63:80 rr
-> 192.168.1.65:80 Route 1 0 0
-> 192.168.1.66:80 Route 1 0 0
配置super65
配置IP
etho 192.168.1.65/24
lo:1 192.168.1.63 255.255.255.255
网关指向192.168.1.1
关闭ARP转发 #使机器只响应eth0
[root@super65~]#echo 1 > /proc/sys/net/ipv4/conf/eth0/arp_ignore
[root@super65 ~]#echo 2 > /proc/sys/net/ipv4/conf/eth0/arp_announce
写入配置文件
[root@super65 network-scripts]# vim /etc/sysctl.conf
#尾部追加
net.ipv4.conf.eth0.arp_ignore = 1
net.ipv4.conf.eth0.arp_announce = 2
[root@super65 network-scripts]# sysctl -p
安装apache在apache服务器主页上写入内容便于测试
[root@super65 ~# ]echo "192.168.1.65" > /var/www/html/index.html
配置super66 #方法与super65原理一样
测试:
super64模拟客户机访问vip
[root@super64 ~]# elinks 192.168.1.63 --dump
192.168.1.65
[root@super64 ~]# elinks 192.168.1.63 --dump
192.168.1.66
[root@super64 ~]# elinks 192.168.1.63 --dump
192.168.1.65
可以看到每次访问vip时访问了不同页面,负载均衡实现。
lvs原理和实战的更多相关文章
- Keepalived原理与实战精讲--VRRP协议
. 前言 VRRP(Virtual Router Redundancy Protocol)协议是用于实现路由器冗余的协议,最新协议在RFC3768中定义,原来的定义RFC2338被废除,新协议相对还简 ...
- Keepalived 原理与实战
Keepalived 原理与实战 随着系统架构的逐渐演化,服务器的数量和结构会越来越复杂,例如 Web 服务器集群的搭建,提高了系统的性能,同时也提高了系统维护的复杂度,我们需要对集群中各台服务器进行 ...
- jQuery源码:从原理到实战
jQuery源码:从原理到实战 jQuery选择器对象 $(".my-class"); document.querySelectorAll*".my-class" ...
- LVS原理详解(3种工作方式8种调度算法)--老男孩
一.LVS原理详解(4种工作方式8种调度算法) 集群简介 集群就是一组独立的计算机,协同工作,对外提供服务.对客户端来说像是一台服务器提供服务. LVS在企业架构中的位置: 以上的架构只是众多企业里面 ...
- Spark MLlib特征处理:OneHotEncoder OneHot编码 ---原理及实战
http://m.blog.csdn.net/wangpei1949/article/details/53140372 Spark MLlib特征处理:OneHotEncoder OneHot编码 - ...
- Istio 流量治理功能原理与实战
一.负载均衡算法原理与实战 负载均衡算法(load balancing algorithm),定义了几种基本的流量分发方式,在Istio中共有4种标准负载均衡算法. •Round_Robin: 轮询算 ...
- LVS原理详解(3种工作模式及8种调度算法)
2017年1月12日, 星期四 LVS原理详解(3种工作模式及8种调度算法) LVS原理详解及部署之二:LVS原理详解(3种工作方式8种调度算法) 作者:woshiliwentong 发布日期: ...
- Oracle特殊恢复原理与实战(DSI系列)
1.深入浅出Oracle(DSI系列Ⅰ) 2.Oracle特殊恢复原理与实战(DSI系列Ⅱ) 3.Oracle SQL Tuning(DSI系列Ⅲ)即将开设 4.Oracle DB Performan ...
- Java并发编程原理与实战五:创建线程的多种方式
一.继承Thread类 public class Demo1 extends Thread { public Demo1(String name) { super(name); } @Override ...
随机推荐
- kettle与各数据库建立链接的链接字符串
kettle与各数据库建立链接的链接字符串 Sybase: TO_DB_URL = jdbc:sybase:Tds:192.168.168.163:5000/testdb?charset=eucgb& ...
- 【JAVA、C++】LeetCode 020 Valid Parentheses
Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determine if the inpu ...
- ios xcode Could not load the "MyImage.png" image referenced from a nib in the bundle with identifier "com.mytest.MyProject"
出现找不到xib指定的图片,需要指定图片的完整路径,不能只是图片名 详见:http://vocaro.com/trevor/blog/2012/10/21/xcode-groups-vs-folder ...
- Window环境下Python和Django的安装
转载地址:http://blog.csdn.net/haoni123321/article/details/7593821 1.下载python,本文使用python-2.7.2.msi 2.下载dj ...
- Repairing Company(poj 3216)
题目大意: 有Q个地点,告诉你Q个地点之间的相互距离(从i地点赶到j地点需要的时间).有M项任务, 给你M项任务所在的地点block.开始时间start和任务完成需要时间time.一个工人只有在 他准 ...
- Android之记住密码与自动登陆实现
本文主要讲述了利用sharedpreference实现记住密码与自动登陆功能 根据checkbox的状态存储用户名与密码 将结果保存在自定义的application中,成为全局变量 布局文件 < ...
- Android数据存储之sharedpreferences与Content Provider
android中对数据操作包含有: file, sqlite3, Preferences, ContectResolver与ContentProvider前三种数据操作方式都只是针对本应用内数据,程序 ...
- php 练习
下拉样式 <select> <?php $a = array( array("n001 汉族"), array("n002 回族"), arr ...
- MVC学习笔记---MVC导出excel(数据量大,非常耗时的,异步导出)
要在ASP.NET MVC站点上做excel导出功能,但是要导出的excel文件比较大,有几十M,所以导出比较费时,为了不影响对界面的其它操作,我就采用异步的方式,后台开辟一个线程将excel导出到指 ...
- 菜鸟学Linux命令:find命令 查找文件
find命令是Linux下最常用的命令之一,灵活的使用find命令,你会发现查找文件变得十分简单. 命令格式 find [指定查找目录] [查找规则(选项)] [查找完后执行的动作] 参数规则 - ...