2024-09-27 07:26:09 发布
网友
在Linux集群上,我收到以下请求错误:
ConnectionError: HTTPConnectionPool(host='andes-1-47', port=8181): Max retries exceeded with url: /jammy/api/v1 (Caused by : '')
这个错误是什么意思?是请求问题还是主机问题,解决方案是什么?
顺便说一句,该程序在Windows和Linux两台独立的机器上都能成功地运行。
因此Max retries exceeded with url: ...位可能非常混乱。很可能(因为您提到这可以使用localhost工作)这是您正在某处部署的应用程序。这也解释了为什么主机名是andes-1-47,而不是大多数人所期望的(例如example.com)。我的最佳猜测是,您需要使用andes-1-47(例如192.168.0.255)的IP地址,或者您的linux集群不知道如何解析andes-1-47,您应该将其添加到/etc/hosts文件(即添加行:192.168.0.255 andes-1-47)。
Max retries exceeded with url: ...
andes-1-47
example.com
192.168.0.255
/etc/hosts
192.168.0.255 andes-1-47
如果要查看linux群集是否可以解析名称,则可以始终使用此脚本:
import socket socket.create_connection(('andes-1-47', 8181), timeout=2)
如果无法解析主机名,这将在2秒后超时。(您可以删除超时,但可能需要更长的时间来确定是否可以通过这种方式访问主机名。)
在urlopen调用中,尝试设置retries=False或retries=1以查看差异。默认值是3,这听起来很合理。
urlopen
retries=False
retries=1
3
http://urllib3.readthedocs.org/en/latest/pools.html#urllib3.connectionpool.HTTPConnectionPool.urlopen
因此
Max retries exceeded with url: ...
位可能非常混乱。很可能(因为您提到这可以使用localhost工作)这是您正在某处部署的应用程序。这也解释了为什么主机名是andes-1-47
,而不是大多数人所期望的(例如example.com
)。我的最佳猜测是,您需要使用andes-1-47
(例如192.168.0.255
)的IP地址,或者您的linux集群不知道如何解析andes-1-47
,您应该将其添加到/etc/hosts
文件(即添加行:192.168.0.255 andes-1-47
)。如果要查看linux群集是否可以解析名称,则可以始终使用此脚本:
如果无法解析主机名,这将在2秒后超时。(您可以删除超时,但可能需要更长的时间来确定是否可以通过这种方式访问主机名。)
在
urlopen
调用中,尝试设置retries=False
或retries=1
以查看差异。默认值是3
,这听起来很合理。http://urllib3.readthedocs.org/en/latest/pools.html#urllib3.connectionpool.HTTPConnectionPool.urlopen
相关问题 更多 >
编程相关推荐