首页 > 代码库 > Openstack部署总结之:部署过程中“Error: Local ip for ovs agent must be set when tunneling is enabled”的问题

Openstack部署总结之:部署过程中“Error: Local ip for ovs agent must be set when tunneling is enabled”的问题

问题描述

在使用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这个端口实现的,但是192.168.40.107是一台HP的机器(网络接口的名称是eth*),192.168.40.105是一台DELL的机器(网络接口的名称是em*),由于105不存在eth0这个端口,于是就出现了上面的错误。要想解决这个问题必须要让105,以及107的网口名称统一,所以就需要修改其中一台机器的端口名称


解决方法

修改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) 重启服务器


Openstack部署总结之:部署过程中“Error: Local ip for ovs agent must be set when tunneling is enabled”的问题