欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

lvs dr 模型配置详解

程序员文章站 2022-12-05 18:15:27
lvs dr 模型配置详解 [学习笔记] 前期准备: 两台服务器 note01(lvs服务器) note02(real sever) 1 首先在note01配置子网卡: :2意思是eth0的子接口,随便一个数字就可以,/24意为 255.255.255.0的另一种写法 也可以写成netmask 25 ......

lvs dr 模型配置详解 [学习笔记]

前期准备:

两台服务器 note01(lvs服务器) note02(real sever)

1 首先在note01配置子网卡:

ifconfig eth0:2 192.168.64.100/24

 

   :2意思是eth0的子接口,随便一个数字就可以,/24意为 255.255.255.0的另一种写法 也可以写成netmask 255.255.255.0

2 配置note01 转发方式:

echo 1 > /proc/sys/net/ipv4/ip_forward

 

   默认为0 意思为如果没有对应请求的ip,会将数据包丢弃,1为不会丢弃,而是通过路由来去转发请求。

3 配置note02(real sever) 的响应,通告级别,禁止响应对vip的arp广播请求

echo 1 > /proc/sys/net/ipv4/conf/eth0/arp_ignore

echo 2 > /proc/sys/net/ipv4/conf/eth0/arp_announce

 

 

4 配置note02 的环回ip:

ifconfig lo:5 192.168.64.100 netmask 255.255.255.255

 

  注意,这里:5与上边一样,可以随便写,但是后边必须写成netmask 255.255.255.255

这里为什么是4个255?  因为网关192.168.64.0 是通过ip和 这个掩码进行云算计算出来的,如果这里也写成3个255,就会出现两个192.168.64.0,而lo环回接口要比eth0接口更为接近os内核,所以请求不会返回,而是直接进入环回接口,所以客户端可以发送请求,但是不会收到响应。

第3 4 步顺序一定一定一定不能颠倒,否则还没有配置好接口就已经通告出去了,就不会起作用。

5 为了检验lvs,我使用httpd服务进行一个简单验证,真实情况肯定就是在realsever上开启项目啦!

在note02 上执行

yum install httpd -y

 

安装httpd服务

进入目录/var/www/html

cd /var/www/html

vi index.html

 

在index.html中写入from 192.168.64.134(note02的真实ip)进行验证

执行命令

service httpd start

 

客户端验证:rip:80 可以正常显示

      vip:80不能正常显示

lvs dr 模型配置详解

 

lvs dr 模型配置详解

 

 

6

配置lvs vip note01

yum install ipvsadm -y

 

ipvsadm -a -t 192.168.64.100:80 -s rr 

 

// rr为轮询机制 如果配置多台realsever 则请求平均分配 -t 基于tcp协议

ipvsadm -a -t 192.168.64.100:80 -r 192.168.64.134 -g

 

 //-g :dr 模型 -t基于tcp协议

ipvsadm -ln

lvs dr 模型配置详解

7

浏览器刷新,访问vip:

lvs dr 模型配置详解

ipvsadm -lnc

 

 //查看note01 会有很多记录  (偷窥)

netstat -natp

 

 //查看note01 没有记录 (说明请求直接跳过lvs 之后客户端会直接与realserver建立连接)

如果能正常访问 则说明配置lvs成功,其实lvs就相当于一个路由的功能

 

 

lvs dr 模型配置详解

 

文章转载自: