问题叙述性说明
正在使用RDO当多节点部署测试,因为使用了一些老机器和机器类型的差异(一些HP的PC,有些DELL的PC)。以下错误出现:
Applying 192.168.40.107_neutron.pp
192.168.40.107_neutron.pp: [ DONE ]
192.168.40.248_neutron.pp: [ DONE ]
192.168.40.105_neutron.pp: [ ERROR ]
Applying Puppet manifests [ ERROR ] ERROR : Error appeared during Puppet run: 192.168.40.105_neutron.pp
Error: Local ip for ovs agent must be set when tunneling is enabled at /var/tmp/packstack/b8647a3c31b84caa8b43227bda752bc3/modules/neutron/manifests/agents/ml2/ovs.pp:107 on node computenode.example.org
问题分析
通过分析错误。发现原因是在packstack的文件里配置了例如以下的參数:
CONFIG_NEUTRON_OVS_TUNNEL_IF=eth0
该配置指定计算节点与网络节点之间的隧道通信是通过em1这个port实现的。可是192.168.40.107是一台HP的机器(网络接口的名称是eth*),192.168.40.105是一台DELL的机器(网络接口的名称是em*),因为105不存在eth0这个port,于是就出现了上面的错误。
要想解决问题必需要让105,以及107的网口名称统一。所以就需要改动当中一台机器的port名称
解决方法
改动105这台机器的网口名称为eth0,详细操作例如以下:
(1) 改动/etc/udev/rules.d/70-persistent-net.rules文件里NAME="em1"为NAME="eth0"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="? *", ATTR{address}=="70:f3:95:00:cd:b9", ATTR{type}=="1", KERNEL=="eth*", NAME="em1"
(2) 重命名配置文件
mv /etc/sysconfig/network-scripts/ifcfg-em1 /etc/sysconfig/network-scripts/ifcfg-eth0
(3) 更改eth0文件里的DEVICE为eth0
(4) 重新启动server
版权声明:本文博主原创文章。博客,未经同意不得转载。