简体   繁体   English

Openstack:创建实例时绑定端口失败

[英]Openstack : fail to bind port when creating an instance

I'm deploying openstack on 3 nodes (controller, compute and block storage).我在 3 个节点(控制器、计算和块存储)上部署 openstack。

I have installed: keystone, nova, neutron, placement, glance, cinder and horizon with the Victoria's guides.我已经安装了:keystone、nova、neutron、placement、glance、cinder 和 horizon with the Victoria's guides。

When I try to create an instance with当我尝试创建一个实例时

openstack server create --flavor m1.nano --image cirros   --nic net-id=92dc8bf4-30be-4fdb-a1f4-bc91126dbc38 --security-group default --key-name demokey provider-instance

I get in /etc/neutron/server.log (on controller node):我进入 /etc/neutron/server.log(在 controller 节点上):

ERROR neutron.plugins.ml2.managers [req-3114ffac-2825-4db6-8586-0b3685fa6b1d b21b8901642c470b8f668965997c7922 0f23d567d2ce4599a1571d8fd5982f9a - default default] Failed to bind port 66f23e36-a360-444c-a3f7-2f7a904037dd on host compute1 for vnic_type normal using segments [{'id': 'e238d39a-ec1a-447a-a272-19cf4e4f76e1', 'network_type': 'flat', 'physical_network': 'provider', 'segmentation_id': None, 'network_id': 'd4c8fb07-7e56-4768-b725-93f3b97e1772'}]

I feel like linuxbridge fails to bind ports on compute node.我觉得 linuxbridge 无法绑定计算节点上的端口。

ip a on controller returns (looks like binding is done) ip a on controller 返回(看起来绑定完成)

2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 40:a8:f0:2f:4a:6c brd ff:ff:ff:ff:ff:ff
    inet 10.0.0.2/24 brd 10.0.0.255 scope global eno1
       valid_lft forever preferred_lft forever
    inet6 fe80::42a8:f0ff:fe2f:4a6c/64 scope link 
       valid_lft forever preferred_lft forever
3: eno2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master brq92dc8bf4-30 state UP group default qlen 1000
    link/ether 40:a8:f0:2f:4a:6d brd ff:ff:ff:ff:ff:ff
    inet6 fe80::42a8:f0ff:fe2f:4a6d/64 scope link 
       valid_lft forever preferred_lft forever
4: eno3: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether 40:a8:f0:2f:4a:6e brd ff:ff:ff:ff:ff:ff
5: eno4: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether 40:a8:f0:2f:4a:6f brd ff:ff:ff:ff:ff:ff
6: tap0d0faf0c-99@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master brq92dc8bf4-30 state UP group default qlen 1000
    link/ether 76:55:51:ff:a9:16 brd ff:ff:ff:ff:ff:ff link-netns qdhcp-92dc8bf4-30be-4fdb-a1f4-bc91126dbc38
7: brq92dc8bf4-30: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 40:a8:f0:2f:4a:6d brd ff:ff:ff:ff:ff:ff
    inet 192.168.3.20/24 brd 192.168.3.255 scope global brq92dc8bf4-30
       valid_lft forever preferred_lft forever
    inet6 fe80::14dc:8eff:fe27:996d/64 scope link 
       valid_lft forever preferred_lft forever

But on compute ip a returns (no binding):但是在计算ip a上返回(无绑定):

2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 94:18:82:78:cd:5c brd ff:ff:ff:ff:ff:ff
    inet 10.0.0.3/24 brd 10.0.0.255 scope global eno1
       valid_lft forever preferred_lft forever
    inet6 fe80::9618:82ff:fe78:cd5c/64 scope link 
       valid_lft forever preferred_lft forever
3: eno2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 94:18:82:78:cd:5d brd ff:ff:ff:ff:ff:ff
    inet 192.168.3.30/24 brd 192.168.3.255 scope global eno2
       valid_lft forever preferred_lft forever
    inet6 fe80::9618:82ff:fe78:cd5d/64 scope link 
       valid_lft forever preferred_lft forever
4: eno3: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether 94:18:82:78:cd:5e brd ff:ff:ff:ff:ff:ff
5: eno4: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether 94:18:82:78:cd:5f brd ff:ff:ff:ff:ff:ff

Also on controller ip.netns return a qdhcp namespace while nothing on compute.同样在 controller 上, ip.netns返回一个 qdhcp 命名空间,而计算上没有任何内容。

brctl show return a bridge on controller while nothing on compute. brctl show在 controller 上返回一个桥,而没有计算。

Configs files are coherents and same as in the tutorials.配置文件是一致的,与教程中的相同。 I'm a bit loss.我有点失落。 Do you have a clue where I need to dig?你知道我需要在哪里挖掘吗?

Thanks a lot !非常感谢 !

nova boot --flavor m1.tiny --image cirros-0.3.5 --nic.net-name=demo.net --availability-zone=nova:testcom1 testvm1

I have same issue when create VM by command above通过上面的命令创建 VM 时遇到同样的问题

After a time, I found out the reason is my net-name=**demo.net** set wrong provider:physical.network value.一段时间后,我发现原因是我的net-name=**demo.net**设置了错误的provider:physical.network值。 My physical was set is not exist.我的物理设置不存在。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM