LVS集群学习笔记(NAT/DR/IP tunnel)详解 (1)

来源:岁月联盟 编辑:zhuzhu 时间:2007-07-11
LVS集群学习笔记(NAT/DR/IP tunnel)详解 (1)内容简介:LVS集群学习笔记(NATDRIP tunnel) 前期准备: 试验环境 Red Hat Enterprise Linux 4 U2 软件版本 ipvsadm-1.24.tar.gz 编译安装注意 #pwd /usr/src #ln -s kernels/2.6.9-22.EL.i686 linux 如果没

LVS集群学习笔记(NAT/DR/IP tunnel)

 

前期准备:

 

试验环境 Red Hat Enterprise Linux 4 U2

软件版本 ipvsadm-1.24.tar.gz

 

编译安装注意

#pwd

/usr/src

#ln -s kernels/2.6.9-22.EL.i686 linux 如果没有目录则安装RPEM包kernel-devel-2.6.9-22.EL

 

#rpmbuild -tb ipvsadm-1.24.tar.gz

#rpm -ivh /usr/src/redhat/RPEM/i386/ipvsadm-1.24-6.i386.rpm

 

正常使用时提示:

[root@lvs boot]# ipvsadm

IP Virtual Server version 1.2.0 (size=65536)

Prot LocalAddress:Port Scheduler Flags

-> RemoteAddress:Port Forward Weight ActiveConn InActConn

 

一、NAT方式

 

Load Balance:192.168.1.1

Virtual IP: 10.0.0.1

RealServer1: 192.168.1.2

RealServer2: 192.168.1.3

nameserver: 192.168.1.1

gateway: 192.168.1.1 (使用正确地址,或者使用本机地址,否则会出现刷新ipvsadm rule时很慢)

 

1.开启路由机制

 

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

 

注意:

永久修改要修改sysctl.conf

 

2.加载nat模块

 

#modprobe iptable_nat

 

注意:

用lsmod检查,另如果不加载此模块,也可以在第一次访问时成功,但是会在再次访问时出现延迟过长,或访问超时现象。

 

3.加载rule

 

#ipvsadm -A -t 10.0.0.1:80 -s rr

#ipvsadm -a -t 10.0.0.1:80 -r 192.168.1.2:80 -m

#ipvsadm -a -t 10.0.0.1:80 -r 192.168.1.3:80 -m

 

rr 轮询方式

-m 设置为NAT方式

 

4.保存rule

 

#ipvsadm --save > /etc/sysconfig/ipvsadm

 

5.邦定vip

 

#ifconfig eth0:1 10.0.0.1 netmask 255.255.255.0 borcast 10.0.0.255

 

6.RealServer设置

RealServer1:

ip: 192.168.1.2

gateway: 192.168.1.1

nameserver: 192.168.1.1

 

开启HTTP服务,确认自己能够访问。

 

RealServer2:

 

ip: 192.168.1.3

gateway: 192.168.1.1

nameserver: 192.168.1.1

 

开启HTTP服务,确认自己能够访问。页面与realserver1不同就可以。

 

7.测试

 

选择一台主机,ip设置10.0.0.2 ,访问http://10.0.0.1,反复刷新网页,每次出现的网页不同则表示成功。

 

二、Direct Routing方式

 

Load Balance:192.168.1.1

Virtual IP: 10.0.0.1

RealServer1: 192.168.1.2

RealServer2: 192.168.1.3

nameserver: 192.168.1.254

gateway: 192.168.1.254

 

1.开启路由机制

 

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

 

注意:

永久修改要修改sysctl.conf

 

2.加载rule

 

#ipvsadm -A -t 10.0.0.1:80 -s rr

#ipvsadm -a -t 10.0.0.1:80 -r 192.168.1.2:80 -g

#ipvsadm -a -t 10.0.0.1:80 -r 192.168.1.3:80 -g

 

rr 轮询方式

-g 设置为DR方式

 

3.保存rule

 

#ipvsadm --save > /etc/sysconfig/ipvsadm

 

4.邦定vip

 

#ifconfig eth0:1 10.0.0.1 netmask 255.255.255.0 borcast 10.0.0.255

 

4.RealServer设置

RealServer1:

ip: 192.168.1.2

gateway: 192.168.1.254

nameserver: 192.168.1.254

 

#ifconfig lo:1 10.0.0.1 netmask 255.255.255.255 borcast 10.0.0.1

 

#echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore 注释:这四句目的是为了关闭ARP广播响应

#echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce

 

#echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore

#echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce

 

开启HTTP服务,确认自己能够访问。

 

RealServer2:

 

ip: 192.168.1.3

gateway: 192.168.1.254

nameserver: 192.168.1.254

 

#ifconfig lo:1 10.0.0.1 netmask 255.255.255.255 borcast 10.0.0.1

 

#echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore

#echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce

 

#echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore

#echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce

 

开启HTTP服务,确认自己能够访问。页面与realserver1不同就可以。

 

5.测试

 

在网关作测试即可,其中一块ip设置10.0.0.2 ,另一块设置192.168.1.254。访问http://10.0.0.1,反复刷新网页,每次出现的网页不同则表示成功。

 

 

三、IP Tunnel方式

 

vpn server:

eth0:10.0.0.3 (测试时使用的OPENVPN)

 

gateway server:

eth0:10.0.0.2

eth1:192.168.1.254

 

gatewat server2:

eth0:10.0.0.4

eth1:172.0.0.254

 

LVS Director Servers:

Load Balance:192.168.1.1

Virtual IP: 10.0.0.1

nameserver: 192.168.1.254

gateway: 192.168.1.254

 

RealServer1:

ip: 192.168.1.2

gateway: 192.168.1.254

nameserver: 192.168.1.254

tun0: 20.0.0.1 (这个是连接到vpn后有服务器分配到的)

 

RealServer2:

ip: 172.0.0.1

gateway: 172.0.0.254

nameserver: 172.0.0.254

tun0: 20.0.0.2 (这个是连接到vpn后有服务器分配到的)

 

1.开启路由机制

 

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

 

注意:

永久修改要修改sysctl.conf

 

2.加载rule

 

#ipvsadm -A -t 10.0.0.1:80 -s rr

#ipvsadm -a -t 10.0.0.1:80 -r 20.0.0.1:80 -i (RS1的地址指定,也可以选择本地地址192.168.1.2)

#ipvsadm -a -t 10.0.0.1:80 -r 20.0.0.2:80 -i

 

rr 轮询方式

-i 设置为IP Tunnel方式

 

3.保存rule

 

#ipvsadm --save > /etc/sysconfig/ipvsadm

 

4.邦定vip

 

#ifconfig eth0:1 10.0.0.1 netmask 255.255.255.0 borcast 10.0.0.255

 

5.RealServer设置

 

RealServer1:

ip: 192.168.1.2

gateway: 192.168.1.254

nameserver: 192.168.1.254

tun0: 20.0.0.1

 

#ifconfig tunl0 10.0.0.1 netmask 255.255.255.255 borcast 10.0.0.1

 

#echo 1 > /proc/sys/net/ipv4/conf/tunl0/arp_ignore 注释:这四句目的是为了关闭ARP广播响应

#echo 2 > /proc/sys/net/ipv4/conf/tunl0/arp_announce

 

#echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore

#echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce

 

开启HTTP服务,确认自己能够访问。

 

RealServer2:

 

RealServer2:

ip: 172.0.0.1

gateway: 172.0.0.254

nameserver: 172.0.0.254

tun0: 20.0.0.2

 

#ifconfig tunl0 10.0.0.1 netmask 255.255.255.255 borcast 10.0.0.1

 

#echo 1 > /proc/sys/net/ipv4/conf/tunl0/arp_ignore

#echo 2 > /proc/sys/net/ipv4/conf/tunl0/arp_announce

 

#echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore

#echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce

 

开启HTTP服务,确认自己能够访问。页面与realserver1不同就可以。

 

 

6.测试

 

在网关作测试即可,访问http://10.0.0.1,反复刷新网页,每次出现的网页不同则表示成功。