openstack普通用户创建实例提示ExternalNetworkAttachForbidden It is not allowed to create

问题

当我们在尝试使用普通用户创建虚拟机的时候,有可能会出现如下报错:

2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [req-2729a7d4-5e3f-4a49-9d87-baf2d6d443b6 9e8214952e6a4db1892a822c4934a01e ebcba068e7ff4e499dd6dcb4e21faf08 - default default] [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd] Instance failed to spawn: ExternalNetworkAttachForbidden: It is not allowed to create an interface on external network 8bc8d203-7a28-4a72-9fb4-297fd7de5c26
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd] Traceback (most recent call last):
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]   File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 2203, in _build_resources
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]     yield resources
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]   File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 2018, in _build_and_run_instance
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]     block_device_info=block_device_info)
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]   File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py", line 2898, in spawn
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]     block_device_info=block_device_info)
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]   File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py", line 5206, in _get_guest_xml
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]     network_info_str = str(network_info)
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]   File "/usr/lib/python2.7/site-packages/nova/network/model.py", line 565, in __str__
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]     return self._sync_wrapper(fn, *args, **kwargs)
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]   File "/usr/lib/python2.7/site-packages/nova/network/model.py", line 548, in _sync_wrapper
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]     self.wait()
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]   File "/usr/lib/python2.7/site-packages/nova/network/model.py", line 580, in wait
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]     self[:] = self._gt.wait()
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]   File "/usr/lib/python2.7/site-packages/eventlet/greenthread.py", line 175, in wait
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]     return self._exit_event.wait()
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]   File "/usr/lib/python2.7/site-packages/eventlet/event.py", line 125, in wait
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]     current.throw(*self._exc)
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]   File "/usr/lib/python2.7/site-packages/eventlet/greenthread.py", line 214, in main
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]     result = function(*args, **kwargs)
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]   File "/usr/lib/python2.7/site-packages/nova/utils.py", line 1004, in context_wrapper
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]     return func(*args, **kwargs)
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]   File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 1449, in _allocate_network_async
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]     six.reraise(*exc_info)
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]   File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 1432, in _allocate_network_async
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]     bind_host_id=bind_host_id)
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]   File "/usr/lib/python2.7/site-packages/nova/network/neutronv2/api.py", line 858, in allocate_for_instance
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]     context, instance, neutron, requested_networks, ordered_networks)
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]   File "/usr/lib/python2.7/site-packages/nova/network/neutronv2/api.py", line 747, in _validate_requested_network_ids
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]     self._check_external_network_attach(context, nets)
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]   File "/usr/lib/python2.7/site-packages/nova/network/neutronv2/api.py", line 487, in _check_external_network_attach
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd]     network_uuid=net['id'])
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd] ExternalNetworkAttachForbidden: It is not allowed to create an interface on external network 8bc8d203-7a28-4a72-9fb4-297fd7de5c26
2019-09-25 12:44:29.993 362 ERROR nova.compute.manager [instance: 7d357fd1-500a-4d54-8d6a-7c96344610fd] 

报错主要问题:

ExternalNetworkAttachForbidden: It is not allowed to create an interface on external network

描述过来就是:

外部网路连接拒绝:不容许在外部网络创建端口

原因

openstack在设计的时候,网络设计上,外部网络是由管理员来创建和管理的。在L3模型下面,普通用户可以在管理员提供的public网络下面创建内部网络。二不容许直接使用public网络来创建虚拟机。

所以,如果在L2模型下面,管理员创建的网络理论上都是公共网络,如果在创建网络的时候勾选了–外部网络–选项的话,就会导致普通用户(角色非admin)无法使用该虚拟机创建网络。

解决方法

在创建网络的时候,不勾选–外部网络–选项。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章