OpenStack中虚拟机获取不到IP地址的解决方法

系统环境:

centos6.5 + icehouse多节点部署

问题描述:

使用测试镜像cirros,虚拟机实例可以正常启动,但是不能从IP池中获取IP地址,即DHCP功能不可用

 

1.首先要检查节点各项服务,以及agent是否启动正常

shell> nova-manage service list
Binary Host Zone Status State Updated_At nova
-consoleauth controller internal enabled :-) 2014-11-18 09:23:48 nova-cert controller internal enabled :-) 2014-11-18 09:23:49 nova-conductor controller internal enabled :-) 2014-11-18 09:23:51 nova-scheduler controller internal enabled :-) 2014-11-18 09:23:49 nova-compute network nova enabled XXX 2014-11-13 02:56:41 nova-compute computer nova enabled :-) 2014-11-18 09:23:45

 

2.检查agent

shell> neutron agent-list
+--------------------------------------+--------------------+------------+-------+----------------+ | id | agent_type | host | alive | admin_state_up | +--------------------------------------+--------------------+------------+-------+----------------+ | 22f6a13a-55a1-4474-a836-62fa9803fe71 | Metadata agent | controller | :-) | True | | bb982be7-1e32-4660-9c7a-d538ed4212a0 | Open vSwitch agent | network | :-) | True | | d96fa846-ff1a-44d0-8e46-2388a2b62a3a | Metadata agent | network | :-) | True | | e2fccee2-1e2e-4e15-b58e-d672da7007cc | L3 agent | network | :-) | True | | e9dd9400-9d2f-4f91-b60e-fa2704cb35b3 | DHCP agent | network | :-) | True | | fd110565-cbf6-4c6b-9984-4c6e2108fc9f | Open vSwitch agent | computer | :-) | True | +--------------------------------------+--------------------+------------+-------+----------------+

注:alive看到XXX说明服务不正常,一种可能原因是各节点时间不同步

 

3.上述两项服务都正常,实例还是分配不到IP地址,查看一下dhcp-agent日志

shell> tail -f dhcp-agent.log

2014-11-18 11:11:47.831 1959 TRACE neutron.agent.dhcp_agent raise RuntimeError(m)

2014-11-18 11:11:47.831 1959 TRACE neutron.agent.dhcp_agent RuntimeError: 

2014-11-18 11:11:47.831 1959 TRACE neutron.agent.dhcp_agent Command: ['ip', '-o', 'netns', 'list']

2014-11-18 11:11:47.831 1959 TRACE neutron.agent.dhcp_agent Exit code: 255

2014-11-18 11:11:47.831 1959 TRACE neutron.agent.dhcp_agent Stdout: ''

2014-11-18 11:11:47.831 1959 TRACE neutron.agent.dhcp_agent Stderr: 'Object "netns" is unknown, try "ip help".\n'

2014-11-18 11:11:47.831 1959 TRACE neutron.agent.dhcp_agent 

2014-11-18 11:11:47.833 1959 INFO neutron.agent.dhcp_agent [-] Synchronizing state complete



#错误提示:Stderr: 'Object "netns" is unknown

 

4.解决办法:

网络节点中yum安装iproute软件包

shell> yum install iproute

 

你可能感兴趣的:(openstack)