困惑已久的问题

大概有半个月没有和大家交流了,不是没有搞项目,而是一个问题始终困惑着我们,实在汗颜,不敢出来说话。

本来以为可以很流畅的部署各个节点,进行下面的工作,可是当在多个节点上(八个节点)部署的时候,碰到了一个未知问题,和项目组的一位同学卡在那里,不知所措,也请教过大神,可是也没有发现根本问题。但是我们相信:答案就在那里!所以一直孜孜以求。

下面说说我们的问题以及解决办法。

先是打算在八台物理机上部署openstack,部署成功以后,打开浏览器淡定的建立实例之后,发现了那个经典的问题:实例得不到ip,啊,怎么办?各种怀疑。重新安装过几次系统,用官方的源进行更新,问题依旧。这时都开始怀疑人生了!明明以前在虚拟机里做是可以的,为什么到物理机上不行了呢?有一天中午迷迷糊糊的打开路由器,查看了一下各个节点的ip,发现了一个很怪异的问题,就是:
如果linux下有两个网卡,而这两个网卡如果接在一个交换机上,这个交换机连在这个路由器上,那么也就是经典问题出来了,你看一下你的路由器的上添加的设备就会发现,同一个mac地址对应不同的ip地址,而这个mac地址是你的eth0的mac地址。


上网查了一下才知道这是linux自己的问题,马上到windows下试了一下,果然,在windows下,不同的ip地址对应的mac地址也不同,不知道linux为什么有这样的默认设置,恕我愚钝!

有关linux下网卡的问题可以参照:linux双网卡处在同一网段

这时,和同学一商量,可能这就是问题所在,因为计算节点和网络节点至少需要两个网卡,这样的话,这两个网卡对应同一个mac地址,这时在转发的时候,数据包就不知会发给哪个网卡了。是啊!想了一下,当时我在部署的时候,因为有六个计算节点,有的计算节点上可以跑实例,有的不行,有的是一会可以,一会不可以,当时就觉得是openstack不稳定,现在想想,因为那个 br-tun 设置的是eth1,而这个eth1 的mac地址和eth0的地址一样,那么就有可能发到eth1上的数据跑到eth0上,那么就会出现问题了。

恩,马上进行实验,我同学,吴大神,在vmware里通过网络编辑工具,给新添加的网卡设置为不同的网段,也就是实现了网卡的隔离,发往某个网卡的数据不会莫名其妙的跑到其它网卡上,恩,果然,像预期的那样,多个计算节点也可以跑实例了。

满心欢喜的在物理机上实验,搬来实验室弃置已久的路由器,连上,还是用牛逼的上海交大的源,一步步部署,okay,期盼已久的事情终于发生了!

多个计算节点上可以分别跑实例了!

近十多天的苦闷终于得到了答案。

回头一想还是自己无知啊,人家明明给出了拓扑结构,自己还是理由当然的认为只要各种网络处在相同的网段就可以,实则不然。

遇到了这个问题,记录下来,方便以后查询并和各位同仁交流学习!


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值