标签:负载均衡

EIGRP负载均衡实验

 

R1   ————–R2
| |
| |
R3—————-R4
——————————–
R1
interface Loopback0
ip address 1.1.1.1 255.255.255.0
!
interface Loopback2
ip address 10.10.1.1 255.255.255.0
!        
interface Loopback3
ip address 10.10.2.2 255.255.255.0
!
interface Loopback4
ip address 10.10.3.3 255.255.255.0
!
interface Loopback5
ip address 10.10.4.4 255.255.255.0
!
interface FastEthernet0/0
ip address 123.123.123.1 255.255.255.0
duplex auto
speed auto
!
interface Serial1/0
no ip address
shutdown
serial restart-delay 0
!
interface Serial1/1
no ip address
shutdown
serial restart-delay 0
!
interface Serial1/2
no ip address
shutdown
serial restart-delay 0
!
interface Serial1/3
no ip address
shutdown
serial restart-delay 0
!
router eigrp 100
offset-list 99 out 3000000
network 1.1.1.1 0.0.0.0
network 10.10.0.0 0.0.255.255
network 123.123.123.0 0.0.0.255
no auto-summary
————————————-
R2
hostname r2
!
!
ip subnet-zero
!
!
!
!
!
!
interface Loopback0
ip address 2.2.2.2 255.255.255.0
!
interface FastEthernet0/0
ip address 123.123.123.2 255.255.255.0
duplex auto
speed auto
!
interface Serial1/0
no ip address
shutdown
serial restart-delay 0
!
interface Serial1/1
no ip address
encapsulation frame-relay
serial restart-delay 0
clock rate 64000
no arp frame-relay
frame-relay map ip 222.222.23.3 202 broadcast
no frame-relay inverse-arp
frame-relay intf-type dce
!
interface Serial1/2
ip address 24.24.24.2 255.255.255.0
encapsulation frame-relay
serial restart-delay 0
clock rate 64000
frame-relay map ip 24.24.24.4 204 broadcast
no frame-relay inverse-arp
!
interface Serial1/3
no ip address
shutdown
serial restart-delay 0
!
router eigrp 100
network 2.2.2.2 0.0.0.0
network 24.24.24.0 0.0.0.255
network 123.123.123.0 0.0.0.255
no auto-summary
!
ip classless
ip http server
!
!
line con 0
line aux 0
line vty 0 4
!
end
————————————
R3
hostname r3
!
!
ip subnet-zero
!
!
!
frame-relay switching
!
!
!
interface Loopback0
ip address 3.3.3.3 255.255.255.0
!
interface Loopback11
ip address 33.33.1.1 255.255.255.0
!
interface Loopback12
ip address 33.33.2.2 255.255.255.0
!
interface Loopback13
ip address 33.33.3.3 255.255.255.0
!
interface Loopback14
ip address 33.33.4.4 255.255.255.0
!
interface FastEthernet0/0
ip address 123.123.123.3 255.255.255.0
duplex auto
speed auto
!
interface Serial1/0
no ip address
encapsulation frame-relay
serial restart-delay 0
clock rate 64000
frame-relay map ip 222.222.23.2 202 broadcast
no frame-relay inverse-arp
!        
interface Serial1/1
ip address 34.34.34.3 255.255.255.0
encapsulation frame-relay
serial restart-delay 0
clock rate 64000
frame-relay map ip 34.34.34.4 304 broadcast
frame-relay intf-type dce
!
interface Serial1/2
no ip address
shutdown
serial restart-delay 0
!
interface Serial1/3
no ip address
shutdown
serial restart-delay 0
!
router eigrp 100
offset-list 99 out 3000000
network 3.3.3.3 0.0.0.0
network 3.3.3.0 0.0.0.255
network 33.33.0.0 0.0.255.255
network 34.34.34.0 0.0.0.255
network 123.123.123.0 0.0.0.255
no auto-summary
!
ip classless
ip http server
!
access-list 99 permit 33.33.0.0 0.0.255.255
!
line con 0
line aux 0
line vty 0 4
!
end
——————————————-
R4
hostname r4
!
!
ip subnet-zero
!
!
!
!
!
!
interface Loopback0
ip address 4.4.4.4 255.255.255.0
!
interface FastEthernet0/0
no ip address
duplex auto
speed auto
!
interface Serial1/0
ip address 34.34.34.4 255.255.255.0
encapsulation frame-relay
serial restart-delay 0
clock rate 64000
frame-relay map ip 34.34.34.3 304 broadcast
no frame-relay inverse-arp
!
interface Serial1/1
no ip address
shutdown
serial restart-delay 0
!
interface Serial1/2
ip address 24.24.24.4 255.255.255.0
encapsulation frame-relay
serial restart-delay 0
clock rate 64000
frame-relay map ip 24.24.24.2 402 broadcast
no frame-relay inverse-arp
!        
interface Serial1/3
no ip address
shutdown
serial restart-delay 0
!
router eigrp 100
network 4.4.4.4 0.0.0.0
network 24.24.24.0 0.0.0.255
network 34.34.34.0 0.0.0.255
no auto-summary
!
ip classless
ip http server
!
!
line con 0
line aux 0
line vty 0 4
!
end
结果
r2#sh ip route
Codes: C – connected, S – static, I – IGRP, R – RIP, M – mobile, B – BGP
       D – EIGRP, EX – EIGRP external, O – OSPF, IA – OSPF inter area
       N1 – OSPF NSSA external type 1, N2 – OSPF NSSA external type 2
       E1 – OSPF external type 1, E2 – OSPF external type 2, E – EGP
       i – IS-IS, su – IS-IS summary, L1 – IS-IS level-1, L2 – IS-IS level-2
       ia – IS-IS inter area, * – candidate default, U – per-user static route
       o – ODR, P – periodic downloaded static route
Gateway of last resort is not set
     34.0.0.0/24 is subnetted, 1 subnets
D       34.34.34.0 [90/2172416] via 123.123.123.3, 00:01:40, FastEthernet0/0
     1.0.0.0/24 is subnetted, 1 subnets
D       1.1.1.0 [90/156160] via 123.123.123.1, 00:01:38, FastEthernet0/0
     2.0.0.0/24 is subnetted, 1 subnets
C       2.2.2.0 is directly connected, Loopback0
     33.0.0.0/24 is subnetted, 4 subnets
D       33.33.1.0 [90/2809856] via 24.24.24.4, 00:01:40, Serial1/2
D       33.33.2.0 [90/2809856] via 24.24.24.4, 00:01:40, Serial1/2
D       33.33.3.0 [90/2809856] via 24.24.24.4, 00:01:40, Serial1/2
D       33.33.4.0 [90/2809856] via 24.24.24.4, 00:01:40, Serial1/2
     3.0.0.0/24 is subnetted, 1 subnets
D       3.3.3.0 [90/156160] via 123.123.123.3, 00:01:40, FastEthernet0/0
     4.0.0.0/24 is subnetted, 1 subnets
D       4.4.4.0 [90/2297856] via 24.24.24.4, 00:01:40, Serial1/2
     24.0.0.0/24 is subnetted, 1 subnets
C       24.24.24.0 is directly connected, Serial1/2
     10.0.0.0/24 is subnetted, 4 subnets
D       10.10.1.0 [90/156160] via 123.123.123.1, 00:01:38, FastEthernet0/0
D       10.10.2.0 [90/156160] via 123.123.123.1, 00:01:38, FastEthernet0/0
D       10.10.3.0 [90/156160] via 123.123.123.1, 00:01:38, FastEthernet0/0
D       10.10.4.0 [90/156160] via 123.123.123.1, 00:01:38, FastEthernet0/0
     123.0.0.0/24 is subnetted, 1 subnets
C       123.123.123.0 is directly connected, FastEthernet0/0
r2#
用OFFLIST做效果还是不错的哈哈

HSRP+负载均衡 行业思科解决方案!

项目简介——
今天我要向大家介绍的是广东省某电力公司采用思科的解决方案组建超级局域网。主要是通过双4507R来实现双机热备和负载匀衡。接入交换机是CISCO-2960-24TC-L
设备简介——
CISCO-4507R是一款中档三层路由交换机,有七个插槽,其中第一、二个插槽是用来插引擎滴,千万不要弄插哦,不然它会痛的。剩下五个插槽全是业务插槽,千兆光口板,千兆电口板等业务板可以随你插了。
CISCO-2960-24TC-L是一款二层接入交换机,2960系列有多款交换机,24口、48口、百兆、千兆、SFP模块等,产品线相当丰富,满足中小型企业的接入需求。
拓扑简介——
出口是CISCO-2821路由器,这是思科在2006年推出的ISR系列路由器中28系列路由器的中档配置,满足企业分支构多种广域网接入方式,E1,T1,ADSL,FR,宽带接入等。
从网络的安全性能考虑,我们给客户推荐了天融信的防火墙作透明。
通过防火墙下联两台CISCO-4507R做双机热备,同时实现负载匀衡。
接入交换机通过光纤冗余接入CISCO-4507R。
实施步骤——
一 完全拓扑连接
二 设备加电、完成设备自检
三 配置路由器
配置外网口IP,网关,默认路由,内网各VLAN 网段回执路由
四 配置防火墙
将防火墙配置成透明模式,实现对包的过滤
五 配置核心交换机
两台设备配置HSRP,所以两台4507R的配置几乎完全一样。
创建CHANNEL,将端口加入CHANNEL
创建VLAN
给各VLAN 接口配置IP,配置STANDBY的IP,以及STANDBY优先级等参数
(在这里有一点提醒大家,如果要在HSRP基础上实现负载匀衡,那么两台交换机的配置是稍有不同的。HSRP是一主一次,只有一台设备转发包,如果要实现负载匀衡,
我们就得让两台设备都工作起来。可以通过设备STANDBY的优先级来实现。具体的配置在后面的实例中详谈。)
配置默认路由指向路由器的内网口IP
配置TRUNK口,封装协议
配置ACL策略
六 配置接入交换机
配置管理IP
配置VLAN
配置TRUNK口
配置文档——
在这里只贴出4507R的配置
C4507R-S#sh run
Building configuration…
Current configuration : 8888 bytes
!
version 12.2
no service pad
service timestamps debug uptime
service timestamps log uptime
no service password-encryption
service compress-config
!
hostname C4507R-S
!
boot-start-marker
boot-end-marker
!
!
redundancy
mode sso
enable secret 5 $1$mDs3$W6xmvv0ZxWxih3VH.7/ES0   ciscoh3c
enable password cisco
!
no aaa new-model
qos
vtp mode transparent
ip subnet-zero
!
!
no file verify auto
spanning-tree mode pvst
spanning-tree extend system-id
power redundancy-mode redundant
!
!
!
vlan internal allocation policy ascending
!
vlan 9,37-38,40-43,60 -----------(创建VLAN)
!
interface Port-channel1-----------(创建CHENNEL)
switchport
switchport trunk encapsulation dot1q
!
interface GigabitEthernet1/1----------(将端口加入CHENNEL)
switchport trunk encapsulation dot1q
channel-group 1 mode on
!
interface GigabitEthernet1/2----------(将端口加入CHENNEL)
switchport trunk encapsulation dot1q
channel-group 1 mode on
!
interface GigabitEthernet3/5
switchport trunk encapsulation dot1q
switchport mode trunk
ip access-group 100 in
!………………..--------------(将端口配置成TRUNK,并封装)
…………………--------------(将端口配置成TRUNK,并封装)
interface GigabitEthernet3/48--------------(将端口配置成TRUNK,并封装)
switchport trunk encapsulation dot1q
channel-group 1 mode on
!
interface GigabitEthernet5/1--------------(将端口配置成TRUNK,并封装)
switchport trunk encapsulation dot1q
switchport mode trunk
ip access-group 100 in
……..
……..
……..
interface GigabitEthernet5/18
switchport mode trunk--------------(将端口配置成TRUNK,并封装)
!
interface Vlan1--------------(配置VLAN 接口)
ip address 172.16.1.252 255.255.255.0--------------(配置VLAN 接口IP)
standby 1 ip 172.16.1.254--------------(配置VLAN 接口STANDBY IP,这才是数据转发用的实际IP)
standby 1 preempt--------------(配置HSRP允许抢占优先)
standby 1 priority 110-----------------------(HSRP优先级如何不配置默认是100)
!
interface Vlan9
ip address 172.16.9.252 255.255.255.0
standby 9 ip 172.16.9.254
standby 9 preempt-----------------------(HSRP优先级如何不配置默认是100,因为要实现负载匀衡这个VLAN默认优先级)
!…….. ××××××××××××××注意看,VLAN1优先级110,所以它会是VLAN1的STANDBY1组的主,另一台是备!!!!!!!!
                                             VLAN9优先级100,另一台是110,所以这台是备,另一台是主,由此实现负载匀衡!!!!
………
interface Vlan60
ip address 192.168.60.252 255.255.255.0
standby 60 ip 192.168.60.254
standby 60 preempt
!
ip route 0.0.0.0 0.0.0.0 192.168.60.1--------------(配置默认路由)
no ip http server
!
!--------------(配置ACL策略)
access-list 100 permit tcp 172.16.43.0 0.0.0.255 host 172.16.9.16 eq www
access-list 100 permit tcp 172.16.43.0 0.0.0.255 host 172.16.9.17 eq www
access-list 100 permit tcp 172.16.43.0 0.0.0.255 host 172.16.9.18 eq www
access-list 100 permit ip 172.16.37.0 0.0.0.255 172.16.40.192 0.0.0.15
access-list 100 permit ip 172.16.38.0 0.0.0.255 172.16.40.192 0.0.0.15
access-list 100 permit ip 172.16.41.0 0.0.0.255 172.16.40.192 0.0.0.15
access-list 100 permit ip 172.16.42.0 0.0.0.255 172.16.40.192 0.0.0.15
access-list 100 deny ip 172.16.37.0 0.0.0.255 172.16.40.0 0.0.0.255
access-list 100 deny ip 172.16.37.0 0.0.0.255 172.16.41.0 0.0.0.255
access-list 100 deny ip 172.16.37.0 0.0.0.255 172.16.42.0 0.0.0.255
access-list 100 deny ip 172.16.38.0 0.0.0.255 172.16.37.0 0.0.0.255
access-list 100 deny ip 172.16.38.0 0.0.0.255 172.16.40.0 0.0.0.255
access-list 100 deny ip 172.16.38.0 0.0.0.255 172.16.41.0 0.0.0.255
access-list 100 deny ip 172.16.38.0 0.0.0.255 172.16.42.0 0.0.0.255
access-list 100 deny ip 172.16.41.0 0.0.0.255 172.16.40.0 0.0.0.255
access-list 100 deny ip 172.16.41.0 0.0.0.255 172.16.42.0 0.0.0.255
access-list 100 deny ip 172.16.42.0 0.0.0.255 172.16.40.0 0.0.0.255
access-list 100 deny ip 172.16.43.0 0.0.0.255 192.168.60.0 0.0.0.255
access-list 100 deny ip 172.16.43.0 0.0.0.255 172.16.9.0 0.0.0.255
access-list 100 permit ip any any
!
!
!
line con 0
stopbits 1
line vty 0 4--------------(配置VTY接口)
password cisco
login
line vty 5 15
no login
!
!
end

利用rad hat Piranha方案实现WEB负载均衡

No Comments Linux

作者:NetSeek http://www.linuxtone.org
(IT运维专家网|集群架构|性能调优)
欢迎转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本声明.
更新时间:2009-01-12

实验平台 :    CentOS release5.2 (Final)

实验目标 :

快速撑握和理解Piranha方案,并利用15分钟构建WEB高可用负载均衡解决方案.

结构:

LVS-ACTIVE:192.168.1.210
LVS-BACKUP: 192.168.1.211
LVS-VIP: 192.168.1.212
Realsever: 192.168.1.204,192.168.1.205
.Piranha方案基本简绍.
1.Piranha方案优点:
1.1.1配置简洁高效:
配置简便一个lvs.conf配置文件即可搞定(类keepalived方案.)
1.1.2WEB配置界面.
WEB配置对于那些不懂LVS配置的人员来说非常吸引力,你几乎只要花15分钟就可以配置好一个完美的负载均衡及高可用性方案.
1.1.3完整的功能:
主备LVS (Load Balancer)的Heartbeat和HA (pulse,send_arp)
LoadBalancer和Real Server间进程服务的Heartbeat (nanny)
IPVS功能 (lvsd)
IPVS的管理 (ipvsadm)
2.Piranha方案原理结构描述:
Piranha方案是基于LVS基础上设计的一套负载均衡高可用解决方案.
LVS运行在一对有相似配置的计算机上:
一个作为活动LVS Router(Active LVS Router),
一个作为备份LVS Router(Backup LVS Router)。
活动LVS Router服务有两个角色:
* 均衡负载到真实服务器上。
* 检查真实服务器提供的服务是否正常。
备份LVS Router用来监控活动的LVS Router,以备活动的LVS Router失败时由备份LVS Router接管。
Pulse:
Pulse进程运行在活动LVS Router和备份LVS Router上。
在备份LVS Router上,pulse发送一个心跳(heartbeat)到活动LVS Router的公网接口上以检查活动LVS Router是否正常。
在活动LVS Router上,pulse启动lvs进程并响应来自于备份LVS Router的心跳。
lvsd:
lvs进程调用ipvsadm工具去配置和维护IPVS路由表,并为每一个在真实服务器上的虚拟服务启动一个nanny进程。
nanny:
每一个nanny进程去检查真实服务器上的虚拟服务状态,并将故障情况通知lvs进程。假如一个故障被发现,lvs进程通知ipvsadm在IPVS路由表中将此节点删除。
send_arp:
如果备份LVS Router未收到来自于活动LVS Router的响应,
它将调用send_arp将虚拟IP地址再分配到备份LVS Router的公网接口上。
并在公网接口和局域网接口上分别发送一个命令去关掉活动LVS Router上的lvs进程。同时启动自己的lvs进程来调度客户端请求。
3.Piranha方案基本套件安装:

1. #yum install ipvsadm modcluster piranha system-config-cluster php php-cli php-common

复制代码

4.配置文件介绍:
/etc/sysconfig/ha/lvs.cf     //由http://ip:3636 web界面配置的配置文件写入此文件.
/etc/init.d/piranha-gui start  //启动piranha服务的WEB配置界面.
/etc/init.d/pulse           //启动piranha服务读取的就是/etc/sysconfig/ha/lvs.cf.
二.    Piranha配置
配置主LVS服务器.
# vi /etc/sysctl.conf找到下面行 //启用数据转发.
net.ipv4.ip_forward = 0将0 改成1,net.ipv4.ip_forward = 1
执行如下命令来应用:sysctl ?p
通过WEB界面配置Piranha服务.
# /etc/init.d/piranha-gui start  //启动Piranha服务.
#/usr/sbin/piranha-passwd  //设置密码,请设置你的piranha服务WEB配置登陆密码.
http://192.168.1.210:3636/  输入用户名: piranha 及刚才设置的密码登陆.
登陆后,选择Global Settings 这是对LVS的配置
Primary server public IP 输入公网IP:192.168.1.210,应用后按ACCEPT按钮保存设置。
通过WEB配置主LVS的信息
1. 配置主LVS
2.配置备份LVS
3. 配置添加LVS( VIP信息)
4.配置Realserver
点击”编辑”添加具体的Realsever信息.
5.启动LVS服务pulse

1. # /etc/init.d/pulse start

2. Starting pulse:                                            [  OK  ]

复制代码

如果不报错,表示启动成功!到此LVS的服务器已经配置完成了启动两个程序
1、piranha-gui  是用来配置LVS的
2、pulse       是用来启动LVS的
6.备份LVS安装与配置
备份LVS安装同主LVS安装方法同样.直接将lvs.conf拷贝到相应的目录下:
#scp  lvs.cf root@192.168.1.211:/etc/sysconfig/ha/
# /etc/init.d/pulse start 启动服务即可.
7.配置Realserver
DR模式配置文件
…………..

1.        ifconfig lo:0 $WEB_VIP netmask 255.255.255.255 broadcast $WEB_VIP

2.        /sbin/route add -host $WEB_VIP dev lo:0

3.        echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore

4.        echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce

5.        echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore

6.        echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce

7.        sysctl -p >/dev/null 2>&1

8.        echo "RealServer Start OK"

复制代码

      …………………….
Tunnel模式配置文件.
……………………………………

1.     ifconfig tunl0 $WEB_VIP netmask 255.255.255.255 broadcast $WEB_VIP

2.        /sbin/route add -host $WEB_VIP dev tunl0

3.        echo "1" >/proc/sys/net/ipv4/conf/tunl0/arp_ignore

4.        echo "2" >/proc/sys/net/ipv4/conf/tunl0/arp_announce

5.        echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore

6.        echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce

7.        sysctl -p >/dev/null 2>&1

复制代码

………………………………………….
正确配置,并启动服务.
8.    测试与日志分析.
# ipvsadm ?ln    //查看LVS连接状态.

1. IP Virtual Server version 1.2.1 (size=4096)

2. Prot LocalAddressort Scheduler Flags

3.   -> RemoteAddressort           Forward Weight ActiveConn InActConn

4. TCP  192.168.1.212:80 wrr persistent 30

5. -> 192.168.1.204:80             Route    1      0          0        

6. -> 192.168.1.205:80             Route    1      0          0    

复制代码

# tail -f /var/log/messages
【注】服务切换测试:
停掉主LVS服务上的pulse查看master是否能正常接管.测试过程中多注
意分析日志.在Linuxtone网站编写heartbeat+lvs方案的时候还需要自己送一个arping命令告诉网关我的MAC发生变化了.
但是Piranha方案能自动送一个arp命令.
三.      LVS配置文件详解及相关技巧介绍
1.    lvs.conf 配置及详解: http://bbs.linuxtone.org/thread-1603-1-1.html
2.    修改Piranha登陆用户名及监听端口?
启动/etc/init.d/piranha-gui,实际上是执行如下配置文件.
      /usr/sbin/piranha_gui -f /etc/sysconfig/ha/conf/httpd.conf
     #cd /etc/sysconfig/ha 下目录介绍.
lvs.cf                //Piranha方案实现LVS核心配置文件.
     conf/{httpd.conf, piranha.passwd}   //apache及认证相关文件.
     web/               //此目录下存放WEB配置界面的PHP相关程序,
如果想对WEB界面美化,请修改文件.
mdules/             //apache一些相关模块.
    # vi /etc/sysconfig/ha/conf/httpd.conf (将原端口3636改为81,你也可以自定义此端口)
默认WEB界面是能过piranha账号登陆,如何创建自己定义的账号登陆呢?

1.   # htpasswd -c /etc/sysconfig/ha/conf/lvs.pass netseek    

复制代码

// 上述命令是添加用户netseek,并将账号信息写入lvs.pass这个文件.  
     # vi /etc/sysconfig/ha/conf/httpd.conf
     # /etc/init.d/piranha-gui restart 重启服务即可生效.
上述技巧只是简单的抛砖引玉,你可以修改WEB服务的PHP相关程序,添加一些流量
或者WEB连接状态监控的代码.还可以自己给apache添加一些你自己写的模块,
总之你可以再现有的piranha上做很多的改造去实 现你想要的更完美的系统.
更多技巧请实时关注: http://bbs.linuxtone.org/ 负载均衡版块.
  3.  如果启动/etc/init.d/piranha-gui start
若遇到以下错误提示:

1. Starting piranha-gui: (13)Permission denied: make_sock: could not bind to address [::]:3636

复制代码

关闭掉selinux跟firewall
一.相关参考文档
1.LVS高可用性方案汇总 [Linuxtone为您提供了各种高可用负载均衡解决方案
2.  LVS连接状态监控
3.Piranha官方参考文档推荐阅读
本文基于开源分享精神之上方便大家理解和了解红帽Piranha方案,希望能快速帮你解决工作中的一些问题,如有不足之处请见谅!同时欢迎各位对WEB架构,集群规划等相关的感兴趣的朋友请来加入Linuxtone这个社区。我们热情期待你的加入!
http://www.linuxtone.org IT运维专家网!自由+平等+互助+友爱 = 分享快乐!