<返回更多

IT架构之网络虚拟化

2021-06-18  今日头条  IT塘主
加入收藏

此处我们只讨论虚拟网络

背景:公司架构为kvm+ceph+(linux bridge+frr) vxlan架构,我们分为计算节点、网络节点和存储节点

目地:最近对公司内部应用根据部门和应用类型进行网络隔离,形成类似于云计算多租户隔离。

配置:

1、在各机上配置各虚拟网络的虚拟交换机和vxlan大二层网络,一个网桥和一个vlxan接口对应一个虚拟网络,如:other虚拟网络——br-other虚拟交换机——vxlan30

kvm物理机1(计算节点):

添加other虚拟网络交换机和vxlan接口

ip link add br-other type bridge

ip link set dev br-other up

ip link add vxlan30 type vxlan id 30 dstport 5789 nolearning dev enp88s0f3 #vxlan id 为30,nolearning 不学习mac地址,通过frr 来学习mac,消除东西流量瓶颈,减少BUM包,

ip link set dev vxlan30 up

ip link set dev vxlan30 master br-other

把各虚拟机网络接口配置到br-other 虚拟交换机即可以添加到other虚拟网络

2、配置frr为各虚拟机提供vxlan网络的MAC地址学习功能,并使vxlan自动连接,消除东西流量瓶颈和单节点故障;frr 我分为spine和leaf节点,spine我设置了2台用于高可用(虚拟机搭建),所有的计算节点都是leaf节点

1)spine配置:

router bgp 6000

bgp router-id 10.112.112.254

bgp bestpath as-path multipath-relax

neighbor fabric peer-group

neighbor fabric remote-as external

neighbor 10.112.112.2 peer-group fabric #leaf1 ,把所有的计算节点都添加进来了。 ip 计算节点的ip 同时也时各虚拟机之间vxlan通讯ip

neighbor 10.112.112.3 peer-group fabric #leaf2

!

address-family l2vpn evpn

neighbor fabric activate

exit-address-family

 

2)leaf节点即计算节点1配置:

router bgp 6002

bgp router-id 10.112.112.3

bgp bestpath as-path multipath-relax

neighbor fabric peer-group

neighbor fabric remote-as external

neighbor 10.112.112.252 peer-group fabric #spine 1

neighbor 10.112.112.254 peer-group fabric #spine 2

!

address-family l2vpn evpn

neighbor fabric activate

advertise-all-vni

exit-address-family

!

3、网络节点配置,虚拟机南北流量即外网流量全部集中在网络节点。可以用keepalived做高用

在网络节点上创建多个namespace,每个虚拟网络一个namespace,起到网络隔离作用

ip netns add other #添加other虚拟网络,同时提供此网络的网关路由和防火墙功能。

ip link add br-other type bridge

ip link set dev br-other up

#虚拟机内部接口

ip link add vxlan30 type vxlan id 30 dstport 5789 nolearning dev enp88s0f3

ip link set dev vxlan30 up

ip link set dev vxlan30 master br-other

ip link add n2o type veth peer name o2n netns other

ip link set dev n2o up

ip link set dev n2o master br-other

ip link exec other ip link set lo up

ip link exec other ip link set o2n up

ip link exec other ip addr add 192.168.30.1/24 dev o2n #为other虚拟网络的网关

#虚拟机外网访问接口

ip link add br-ex type bridge #添加一个外网访问虚拟交换机,

ip link set dev xxxx master br-ex #把连接外网物理接口接入到此交换机

ip link set dev br-ex up

ip link add w2o type veth peer name o2w netns other

ip link set dev w2o up

ip link set dev w2o master br-ex

ip netns exec other ip link set dev o2w up

ip netns exec other ip addr add 123.123.123.123/26 dev o2w #添加外网访问公网IP

ip netns exec other ip route add default via 123.123.123.1 dev o2w #添加默认路由

4、配置iptables ,提供防火墙和SNAT,DNAT功功能,简单配置:

ip netns exec other iptables -A FORWARD -s 192.168.30.0/24 -j ACCEPT

ip netns exec other iptables -t nat -A POSTROUTING -s 192.168.30.0/24 -o o2w -j MASQUERADE

结束,以上针对other虚拟网络,从计算节点到网络节点配置完成。

声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>