云计算

nova 虚拟机多port 问题

2020-12-04  本文已影响0人  cloudFans

如果nova绑定了多个port,在allow overlap ip 应用场景中,可能出现一个虚拟机上有多个同一个租户网段的port,在添加port的时候可能会出现以下问题

  1. 出现多个同样的默认路由,eth0 的优先级甚至比eth1更低

这样就会导致eth0 ip 不通
解决方式关闭 NetworkManager , 测试的时候发现,每重启一次 NetworkManager 都会导致路由多一条。

而且这个eth1 metric 优先级比 eth0更高的话,对k8s的pod影响很大,会导致kubelet 注册的endpoint 发生变化,但是实际上kubelet又是监听在eth0上,就会导致无法访问(exec , log)node节点上的pod

  1. eth1 和 eth0 默认是无法同时都可以ping通的
    抓包可以看到,访问eth1 ip的话, 进来的包和回复的包的mac地址不一致
    基于 策略路由 添加源进源出解决

cat /etc/iproute2/rt_tables

reserved values

200 e0
201 e1

255 local
254 main
253 default
0 unspec

local

1 inr.ruhep



cat /etc/rc.local
#!/bin/bash

touch /var/lock/subsys/local

ip route add 172.30.30.0/24 dev eth0 src 172.30.30.245 table e0
ip route add default via 172.30.30.1 dev eth0 table e0
ip rule add from 172.30.30.245/32 table e0
ip rule add to 172.30.30.245/32 table e0


ip route add 172.30.30.0/24 dev eth1 src 172.30.30.188 table e1
ip route add default via 172.30.30.1 dev eth1 table e1
ip rule add from 172.30.30.188/32 table e1
ip rule add to 172.30.30.188/32 table e1

上一篇下一篇

猜你喜欢

热点阅读