我需要使用openstack命令来创建服务器端口,并使用这样的命令。
$ openstack port create --disable-port-security --network test_net --device df5dae52-569d-48da-9e8d-fec6d56e2221 --device-owner compute:nova --enable test-p1但当我展示港口的细节时,
+-------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Field | Value |
+-------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| admin_state_up | UP |
| allowed_address_pairs | |
| binding_host_id | worker-10 |
| binding_profile | |
| binding_vif_details | bridge_name='br-int', connectivity='l2', datapath_type='system', ovs_hybrid_plug='False', port_filter='True' |
| binding_vif_type | ovs |
| binding_vnic_type | normal |
| created_at | 2021-12-21T09:09:19Z |
| data_plane_status | None |
| description | |
| device_id | df5dae52-569d-48da-9e8d-fec6d56e2221 |
| device_owner | compute:nova |
| dns_assignment | None |
| dns_domain | None |
| dns_name | None |
| extra_dhcp_opts | |
| fixed_ips | |
| id | 3785e3de-2606-4ea3-8b3b-444302883f07 |
| location | cloud='openstack_helm', project.domain_id=, project.domain_name='default', project.id='a9e3d71fc89147e7aadd28179c03df6c', project.name='admin', region_name='RegionOne', zone= |
| mac_address | fa:16:3e:2e:9a:a5 |
| name | jj-ctr-test-p1 |
| network_id | 17e0c1c4-0048-4a33-a162-ef9cf52fb399 |
| port_security_enabled | False |
| project_id | a9e3d71fc89147e7aadd28179c03df6c |
| propagate_uplink_status | None |
| qos_policy_id | None |
| resource_request | None |
| revision_number | 3 |
| security_group_ids | |
| status | DOWN |
| tags | |
| trunk_details | None |
| updated_at | 2021-12-21T09:09:51Z |
+-------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+我发现港口状态还在下降。当我登录到服务器时,端口还没有连接到服务器。据我所知,"device“参数将指定服务器id。但似乎不起作用。
发布于 2021-12-22 08:44:20
根据维多利亚版本中的帮助页和您提供的输出,--device参数指定端口UUID (您可以选择),而不是服务器UUID。从输出中检查命令和行device_id,它们是相同的。在您创建端口之后,您需要按照@VictorLee的建议将它附加到服务器上。
发布于 2021-12-25 09:41:13
在我的实践中,最好的方法也是create port and attache it to server。
为了实现您的需求,您可能需要执行hard reboot实例或server stop,然后执行start,在此之前,您应该确保它可以通过server list或server show获得新的端口ip信息。
遵循上述方法,对我有效。有时不会立即将新的ip信息更新到服务器,我可以重新启动实例,它将更新它,但不会附加新的接口,或者您可以等待服务器信息通过nova-compute期间任务自动更新的时间段。然后我必须对实例进行hard reboot,然后实例将附加新的接口。
我猜port create命令只执行像ml2 plugin中的create_port之类的方法,而不是执行port_update或port_bind方法,比如server add port命令。更详细的是,我们应该深入研究中子源代码和有关这方面的业务逻辑。

https://stackoverflow.com/questions/70433391
复制相似问题