错误 /opt/stack/devstack/lib/neutron_plugins/ovn_agent:174 套接字

Jee*_*n R 5 ubuntu openstack devstack

这是我在具有 7GB RAM 的 Ubuntu 20.04 VM 上安装 DevStack 时遇到的错误。如何解决这个问题?

Call Trace
./stack.sh:1264:start_ovn_services
/opt/stack/devstack/lib/neutron-legacy:477:start_ovn
/opt/stack/devstack/lib/neutron_plugins/ovn_agent:691:wait_for_sock_file
/opt/stack/devstack/lib/neutron_plugins/ovn_agent:174:die
ERROR /opt/stack/devstack/lib/neutron_plugins/ovn_agent:174 Socket /var/run/openvswitch/ovnnb_db.sock not found
exit_trap: cleaning up child processes
Error on exit
Run Code Online (Sandbox Code Playgroud)

错误图像的链接 https://i.stack.imgur.com/lcuLJ.png

小智 6

$ ./stack.sh正如 Sage Ren 上面所说,当我们第一次运行 Command 时,就会遇到上述错误。

通过执行以下步骤可以轻松解决此错误。

  1. 转到 neutron_plugin 文件夹,默认情况下该文件夹位于 /opt/stack/devstack/lib 目录中。
  2. 使用 sudo 权限打开 ovn_agent 文件。
  3. 更改第 116 行,如下所示,OVS_RUNDIR=$OVS_PREFIX/var/run/openvswitch您只需通过替换 openvswitch 来更改 ovn。更改后,您的行将变为OVS_RUNDIR=$OVS_PREFIX/var/run/ovn 现在保存文件。
  4. 现在转到/var/run/ovn/目录,您将在其中找到 ovn 文件夹。只需使用删除文件夹即可$sudo rm -rf ovn command
  5. 现在先运行./clean.sh然后./unstack.sh命令
  6. 重新启动系统
  7. 运行./stack.sh

图片:ovn 目录文件夹删除信息


小智 1

我在 Ubuntu 20.04 上遇到了同样的错误,经过一些深入的探索但没有好的结果,我最终决定通过更改运行路径(ovn而不是openvswitch文件夹)来修补 ovn_agent 文件:

OVS_RUNDIR=$OVS_PREFIX/var/run/ovn
Run Code Online (Sandbox Code Playgroud)

这不是一个好的解决方案,但它可以帮助您像我一样在安装过程中走得更远。这是我编译的研究,如果有人有更好的环境变量解决方案,实际上这是我第一次使用这个 DevStack 工具:

  • ovn-northd doc:在最近的版本中,他们将绝对路径更改为unix路径,因此ovn db套接字的默认路径可能会在某处更改
  • 安装文档:可能存在某些选项来指定自定义套接字路径,但我没有成功使其工作

最后,我遇到了 cinder createvolumes types process 的另一个错误,有 500 个内部错误响应...我不确定实际版本是否稳定,每个堆栈命令需要我 15-20 分钟,也许我会创建一个问题寻找一些对这个主题进行实验的眼睛。