服务器物理部署拓扑图,【网络】叶脊(Spine-Leaf)网络拓扑下全三层网络设...

服务器物理部署拓扑图,【⽹络】叶脊(Spine-Leaf)⽹络拓扑下全三层⽹络设计与实践(。。。
5.1 本节⽬标
理解物理机的业务ip之间的通信过程;
了解如何在leaf交换机上配置业务ip的静态路由
了解如何在物理机上配置业务ip及其他相关配置项;
5.2 拓扑结构
本节拓扑结构与上节相⽐没有变化,如下图:
5.3 物理机业务⽹络地址规划与配置
云平台各服务之间⽤于通信的ip地址称为业务ip地址,在spine
leaf⽹络中,我们为服务器分配业务ip地址,并配置在br0接⼝上,本系列⽂章研究spine
leaf⽹络。下⾯为四个物理机规划业务IP地址:
主机名 业务ip地址
devopsr01n01 10.10.10.21/32
devopsr01n02 10.10.10.22/32
devopsr02n01 10.10.10.23/32
devopsr02n02 10.10.10.24/32
按照上⾯的规划,给物理机配置业务ip,以devopsr01n01为例,进⾏如下配置:
brctl addbr br0
ip link set br0 up
ip address add 10.10.10.21/32 dev br0
其余物理机按例配置。
喇叭网罩5.4 物理机业务地址路由⽅案与配置液氨化工厂制备
5.4.1 在leaf交换机上配置路由
在leaf交换机上采⽤静态路由协议,路由⽅案的思路如下:
对于每个物理机业务ip地址,在⼀对leaf上配置静态路由;
通过检测路由下⼀跳ip的可达性,确定路由条⽬的有效性;酒精壁炉
本⽂采⽤的是arista交换机来进⾏实验,因此提供arista交换机的配置⽅式,需要⽤到扩容模块PingCheck,点击查看安装⽅法,扩展模块安装完成后,进⾏下⾯的配置:
# 在leaf01上配置devopsr01n01的路由
ip route 10.10.10.21/32 Ethernet3 169.254.0.2 #
配置devopsr01n01的静态路由
daemon PingCheck3 #
此处因为devopsr01n01接在e3⼝,所以为了⽅便,这⾥名称写PingCheck3
exec
/usr/local/bin/PingCheck
option CHECKINTERVAL
value 1 # Ping间隔时间1s
option CONF_FAIL value
/mnt/flash/pingcheck/f # Ping失败时执⾏的操作,内容填“no ip route
10.10.10.21/32 Ethernet3 169.254.0.2”,
即删除到devopsr01n01的静态路由条⽬
option CONF_RECOVER value
/mnt/flash/pingcheck/f # Ping恢复时执⾏的操作,内容填“ip route
10.10.10.21/32 Ethernet3 169.254.0.2”,即添加到devopsr01n01的静态路由条⽬
option HOLDDOWN value
1
option HOLDUP value
1
option IPv4 value
169.254.0.2 #
Ping的⽬标地址,即到devopsr01n01的静态路由的下⼀跳地址,也就是devopsr01n01上与leaf01互联的⽹⼝的ip地址option PINGCOUNT value
2
option PINGTIMEOUT value
2
option SOURCE value et3 #
指定Ping的出接⼝,即leaf01上与devopsr01n01互联的⽹⼝
no shutdown #
开始运⾏PingCheck
# 在leaf02上配置devopsr01n01的路由
ip route 10.10.10.21/32 Ethernet3 169.254.1.2 #
配置devopsr01n01的静态路由
daemon PingCheck3 #
此处因为devopsr01n01接在e3⼝,所以为了⽅便,这⾥名称写PingCheck3
exec
/usr/local/bin/PingCheck
option CHECKINTERVAL
value 1 # Ping间隔时间1s
option CONF_FAIL value
/mnt/flash/pingcheck/f # Ping失败时执⾏的操作,内容填“no ip route
10.10.10.21/32 Ethernet3 169.254.0.2”,
即删除到devopsr01n01的静态路由条⽬
option CONF_RECOVER value
电力线适配器/mnt/flash/pingcheck/f # Ping恢复时执⾏的操作,内容填“ip route
10.10.10.21/32 Ethernet3 169.254.0.2”,即添加到devopsr01n01的静态路由条⽬
option HOLDDOWN value
1
option HOLDUP value
1
option IPv4 value
169.254.1.2 #
Ping的⽬标地址,即到devopsr01n01的静态路由的下⼀跳地址,也就是devopsr01n01上与leaf01互联的⽹⼝的ip地址
option PINGCOUNT value
2
option PINGTIMEOUT value
2
option SOURCE value et3 #
指定Ping的出接⼝,即leaf01上与devopsr01n01互联的⽹⼝
no shutdown #
开始运⾏PingCheck
按例在leaf02上配置devopsr01n02的路由,在leaf03/04上配置devopsr02n01、devopsr02n02的路由。完成配置后,让我们来测试⼀下,是否达到了预期的效果:
在devopsr01n01的所有链路正常时,在leaf01, leaf02,
spine01上观察到devopsr01n01的路由条⽬:
# 在spine01上观察路由, 有两条等价路由,下⼀跳分别是leaf01和leaf02
spine01#sh ip route 10.10.10.21
B E 10.10.10.21/32 [200/0] via 169.254.0.249,
Ethernet1
via 169.254.1.249,
Ethernet2
# 在leaf01上观察路由,有⼀条静态路由,可从e3下联接⼝到达
leaf01#sh ip route 10.10.10.21
蓄电池模拟器S 10.10.10.21/32 [1/0] via
169.254.0.2, Ethernet3
# 在leaf02上观察路由,有⼀条静态路由,可从e3下联接⼝到达
leaf02#sh ip route 10.10.10.21
S 10.10.10.21/32 [1/0] via
169.254.1.2, Ethernet3
在h11链路故障时(可通过关闭服务器⽹卡模拟),观察在leaf01, leaf02,
spine01上观察到devopsr01n01的路由条⽬:
# 在devopsr01n01上关闭eth1
ifconfig eth1 down
# 在spine上观察路由, 发现只剩⼀条路径可⽤,下⼀跳为leaf02
spine01#sh ip route 10.10.10.21
B E 10.10.10.21/32 [200/0] via 169.254.1.249,
Ethernet2
# 在leaf01上观察路由,
发现此时从leaf01⽆法从下联接⼝到达⽬标,从⽽选择从spine学到的bgp路由,经由spine到达⽬标
leaf01#sh ip route 10.10.10.21
B E 10.10.10.21/32 [200/0] via 169.254.0.250,
Ethernet1
via 169.254.0.254,
Ethernet2mntp
# 在leaf02上观察路由,有⼀条静态路由,可从e3下联接⼝到达
leaf02#sh ip route 10.10.10.21
S 10.10.10.21/32 [1/0] via
169.254.1.2, Ethernet3
请模拟在h12链路故障时的情况,观察路由变化。
5.4.2 在物理机上配置路由
业务ip配置在br0上,⽽⾮物理⽹卡上,因此需开启内核转发功能:
sysctl -w net.ipv4.ip_forward=1
以devopsr01n01为例,流量经由eth0和eth1两个⽹⼝收发,可以达到提⾼带宽,链路冗余的作⽤,因此在服务器上的路由配置如下:# 两个下⼀跳地址分别为物理机和对应的两个leaf相连的⽹⼝互联ip地址
ip route replace default src 10.10.10.21 nexthop via
169.254.0.1 nexthop via 169.254.1.1
配置完上述路由后,与在交换机上的PingCheck⼀样,服务器也需要某种机制来判断下⼀跳是否有效:
# 对eth0
eth1启⽤链路检测,当链路down时,使相应的路由失效,否则物理机可能将流量发往down的链路,从⽽发⽣⽹络故障
sysctl -w
f.eth0.ignore_routes_with_linkdown=1
sysctl -w
f.eth1.ignore_routes_with_linkdown=1
# 配置完这⼀条后可做如下测试,先查看本机路由条⽬, 发现默认路由有两条等价路由
root@devopsr01n01:~# ip r
default src 10.10.10.21
nexthop via 169.254.0.1 dev eth1 weight
1
nexthop via 169.254.1.1 dev eth0 weight
1
169.254.1.0/30 dev eth0 proto
kernel scope link src
169.254.1.2
# 然后关闭eth1接⼝
ifconfig eth1 down
# 然后再查看路由,发现eth1对应的路由条⽬失效
root@devopsr01n01:~# ip r
default src 10.10.10.21
nexthop via 169.254.0.1 dev eth1 weight 1
dead linkdown
nexthop via 169.254.1.1 dev eth0 weight
1
169.254.1.0/30 dev eth0 proto
kernel scope link src
169.254.1.2
(Optional)上述步骤完成后,物理机上的路由就算完成了,当然,还可以加上以下的参数,让系统根据ip地址和端⼝来计算hash,作为选择路由的依据:
sysctl -w net.ipv4.fib_multipath_hash_policy=1
请按照上⾯的步骤,为其余⼏台物理机也完成路由配置。

本文发布于:2024-09-22 18:22:10,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/1/290698.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:路由   配置   物理   业务
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议