当前位置: 首页 > news >正文

openstack port binding failure (by quqi99)

作者:张华 发表于:2025-09-19
版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本版权声明

问题

搭建了一个openstack环境(用multipass创建了两个VM来运行bastion和juju controller, 然后用juju manual provider延用multipass的网桥mpqemubr0来创建lxd容器来安装openstack服务), 但是创建虚机时不work, 查了一下是port binding failure. 原因是multipass默认使用了fqdn=.multipass导致了下列初始状态:

openstack compute service list  #use juju-2d9f3a-0-lxd-8.multipass
openstack hypervisor list       ##use juju-2d9f3a-0-lxd-8.multipass
openstack network agent list    #use juju-2d9f3a-0-lxd-8root@juju-2d9f3a-0-lxd-8:~# ovs-vsctl get open . external_ids
{hostname=juju-2d9f3a-0-lxd-8, ovn-bridge-mappings="physnet1:br-data", ovn-cms-options=enable-chassis-as-gw, ovn-encap-ip="10.149.144.80", ovn-encap-type=geneve, ovn-match-northd-version=True, ovn-remote="ssl:10.149.144.185:6642,ssl:10.149.144.197:6642,ssl:10.149.144.94:6642", rundir="/var/run/openvswitch", system-id=juju-2d9f3a-0-lxd-8.multipass}root@juju-2d9f3a-0-lxd-10:~# ovn-sbctl list Chassis |grep -E 'name|external'
external_ids        : {datapath-type=system, iface-types="erspan,geneve,gre,internal,ip6erspan,ip6gre,lisp,patch,stt,system,tap,vxlan", is-interconn="false", "neutron:liveness_check_at"="2025-09-19T07:00:04.112572+00:00", "neutron:ovn-metadata-id"="eb59a656-7480-5c92-9cef-4a7599ec1d86", ovn-bridge-mappings="physnet1:br-data", ovn-chassis-mac-mappings="", ovn-cms-options=enable-chassis-as-gw}
hostname            : juju-2d9f3a-0-lxd-8
name                : juju-2d9f3a-0-lxd-8.multipass

曲折中得到的几个事实

1, 修改nova.conf中的host只能修改’openstack compute service list’中的hostname

juju config nova-compute config-flags="host=juju-2d9f3a-0-lxd-8.multipass"
juju exec --application nova-compute "systemctl restart nova-compute"

2, 修改neutron.conf中的host不能修改’openstack network agent list’, nova.conf与neutron.conf中的host只是修改service name也就是只是和mq打交道的, 它和schedule用的hostname无关.

3, ‘openstack hypervisor list’中的hostname应该是由nova-compute调用libvirt时通过socket.getfqdn()获取的, 所以可以修改/etc/resolv.conf注释’search lan multipass’这行去掉fqdn, 但这时重启nova-compute会报这个错’nova.exception.ResourceProviderCreationFailed: Failed to create resource provider juju-2d9f3a-0-lxd-8’, 可通过下列workaround修复.

PLACEMENTENDPOINT=`openstack endpoint list --service placement --interface public -f value -c URL`
TOKEN=`openstack token issue -f value -c id`
curl -X GET ${PLACEMENTENDPOINT}/resource_providers -H "X-Auth-Token:${TOKEN}" -H "Openstack-API-Version: placement latest" | jq .
PROVIDER_ID=8c79de01-6963-480c-a31c-0fddfdd5d05e
curl -X DELET
http://www.dtcms.com/a/390419.html

相关文章:

  • leetcode 3484. 设计电子表格 中等
  • Docker+cpolar 实战:打造灵活可控的远程办公系统
  • uniApp开发XR-Frame微信小程序 | 设置透明贴图
  • M3 Ultra版Mac Studio无法正常升级到macOS 26.0 苹果已经在调查
  • 老的ios项目在新的mac M1上编译运行遇到的问题及整理
  • Java 大视界 -- Java 大数据机器学习模型在元宇宙虚拟场景智能交互中的关键技术
  • 2025年目标检测还有什么方向好发论文?
  • 离线openHarmonySdk鸿蒙系统动态库的封装
  • 从零实现鸿蒙智能设备数据采集:权限、传感器、云端上传全流程实战
  • 智慧医院IBMS中央集成系统解决方案:构建医疗安全优先的智慧运营中枢​
  • ✅ Python房源数据采集+分析+预测平台 requests爬虫+sklearn回归 大数据实战项目(建议收藏)机器学习(附源码)
  • 结婚证 OCR 识别:政务服务提速的 “关键一环”
  • Git企业开发--多人协作
  • 【论文阅读 | IF 2025 | IF-USOD:用于水下显著目标检测的多模态信息融合交互式特征增强架构】
  • 【14/20】安全强化:HTTPS 和率限制在 Express 中的应用,实现防护机制
  • C#调用钉钉API实现安全企业内部通知推送
  • MyBatis与MyBatis-Plus区别
  • 数据血缘探秘:用SQL串联不同数据源的脉络
  • 多线程程序性能优化:缓存命中率与伪共享深度剖析
  • Spring Boot支持哪些类型的自定义配置文件?
  • uniapp:scss变量使用方法
  • postman接口测试系列: 时间戳和加密
  • 模型蒸馏demo
  • 【JVM】Java中有哪些垃圾回收算法?
  • 为何楼宇自控系统日益受欢迎?解析其兴起的核心动因
  • ASP.NET Core RazorPages/MVC/Blazor/Razor/WebApi概念记录说明
  • .NET Core 中 RabbitMQ 和 MassTransit 的使用
  • 使用QT进行3D开发建模
  • 阿里云开源DeepResearch:轻量化AI推理框架技术解析与实践指南
  • Visual Studio 2026 Insiders 重磅发布:AI 深度集成、性能飞跃、全新设计