openstack 错误,无法建立到端点的连接

openstack error, unable to establish connection to endpoint

我在利用openstack搭建网络模拟时遇到了这样的问题

$ openstack server list

unable to establish connection to 
http://nova-api-proxy.openstack.svc.cluster.local:8774
 /v2.1/a9e3d71fc89147e7aadd28179c03df6c/servers/detail: 
HTTPConnectionPool(host='nova-api-proxy.openstack.svc.cluster.local', port=8774):
 Max retries exceeded with url:
 /v2.1/a9e3d71fc89147e7aadd28179c03df6c/servers/detail
 (Caused by NewConnection Error('urllib3.connection.HTTPConnection object at 0x7faeab41b510>:
 Failed to establisha new connection: [Errno -2] Name or service not known',))

等待一段时间后,再次执行openstack server list,就不会出现这个错误了。这个错误的不规则出现让我很困扰。

也许这是主要原因:Failed to establisha new connection: [Errno -2] Name or service not known

检查您的主机名 host='nova-api-proxy.openstack.svc.cluster.local' 是否可以 在您的 openstack 集群中正确解析,包括每个 管理程序、计算节点、存储节点,网络节点等等。

由于hypervisor主机的/etc/hosts文件更新,我遇到过这种情况,但是组件服务的配置还没有更新我们的组件服务运行 docker 环境,我 重新启动 docker 容器 并修复,因为它会自动重新加载与主机的 /etc/hosts 文件.

然后如果这不能解决你的问题,你应该检查组件服务的日志目录中是否存在其他错误日志。

一段时间后,您再次执行openstack server list,错误就会消失。在我看来,网络组件 neutron 仍然存在一些未知问题,或者某些服务 systemd-resolved.service -- Network Name Resolution 没有 运行 成功,而您一开始执行命令时出错。