Recently a customer opened a support ticket reporting „frozen“ Icinga 2 agents on Windows. The agent was still running and writing logs but didn’t respond to connection attempts from an Icinga 2 master or satellite nor did it connect the other way.
The Icinga 2 log showed messages which stemmed directly from Windows and could not be found in the Icinga 2 code.
critical/TcpSocket: Invalid socket: 10055, "An operation on a socket could not be performed because the system lacked sufficient buffer space or because a queue was full."
What we found after some research is strange enough to make me write this article about. It seems that, depending on version, patch level and installed applications Windows is changing its range of ephemeral ports. So your windows might or might not be blocking ports which Icinga 2 uses for its communication.
What solved the problem was an entry into the Windows hosts registry.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters Value Name: MaxUserPort Value Type: DWORD Value data: 65534
You can find more information at Microsoft or in this blog.
Photo by Paweł Czerwiński on Unsplash