DMTF/python-redfish-library

ILO5 Remote end closed connection without response

safe opened this issue · 4 comments

safe commented

Executing commands against ILO5 failed as the 'Remote end closed connection without response'. When checking the sessions, I can see a session successfully created and is still active, appears any connections after are failing:

redfish_obj = redfish.redfish_client(base_url=host_url, username=svc_account, \
                          password=svc_password, max_retry=1, timeout=120, default_prefix='/redfish/v1')

redfish_obj.login(auth='session')

redfish_obj.get('/redfish/v1')

Any guidance on how to check this, the same script works fine against ILO4.

Traceback (most recent call last):
  File "C:\Program Files (x86)\Python37-32\lib\site-packages\redfish\rest\v1.py", line 814, in _rest_request
    resp = self._conn.getresponse()
  File "C:\Program Files (x86)\Python37-32\lib\http\client.py", line 1321, in getresponse
    response.begin()
  File "C:\Program Files (x86)\Python37-32\lib\http\client.py", line 296, in begin
    version, status, reason = self._read_status()
  File "C:\Program Files (x86)\Python37-32\lib\http\client.py", line 265, in _read_status
    raise RemoteDisconnected("Remote end closed connection without"
http.client.RemoteDisconnected: Remote end closed connection without response

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Program Files (x86)\Python37-32\lib\site-packages\redfish\rest\v1.py", line 617, in get
    headers=headers)
  File "C:\Program Files (x86)\Python37-32\lib\site-packages\redfish\rest\v1.py", line 1013, in _rest_request
    args=args, body=body, headers=headers)
  File "C:\Program Files (x86)\Python37-32\lib\site-packages\redfish\rest\v1.py", line 878, in _rest_request
    raise_from(RetriesExhaustedError(), cause_exception)
  File "<string>", line 3, in raise_from
redfish.rest.v1.RetriesExhaustedError
safe commented

It appears running the script from a server within the same site (therefore < 1ms latency) works, but running this outside (around 71ms latency) does not.

Is there a latency requirement for this module or specific redfish services that someone is aware of? Running against ILO4/BMC is fine from both locations... ILO4/BMC is running redfish 1.0.0, ILO5 is running 1.6.0.

I tested this against the iLO 5 system I have access to and could not reproduce the problem. The iLO 5 system I am using is located at a different site and accessed via a VPN over the Internet. Latency is about 20ms.

If you bump up the max_retry from 1 to, say, 10, will the command succeed on the iLO 5?

It looks like the service (iLO) is closing the connection, so you may have to get HPE involved to help investigate. Or maybe your site networking gurus. At this point, I can't think of anything else to suggest.

safe commented

If you bump up the max_retry from 1 to, say, 10, will the command succeed on the iLO 5?

Can't believe I didn't try this... Weirdly, second attempt works fine and therefore connects. Thanks!

Great. Glad to hear that helped.