Christopher Tenter created IGNITE-18781: -------------------------------------------
Summary: Strange outgoing ports used - Failed to process selector key Key: IGNITE-18781 URL: https://issues.apache.org/jira/browse/IGNITE-18781 Project: Ignite Issue Type: Bug Components: networking Affects Versions: 2.14 Reporter: Christopher Tenter Attachments: ignitelog.txt A two-node cluster occasionally cannot communicate when ignite uses a strange local or remote port. We've opened all ports that are documented here [https://ignite.apache.org/docs/latest/clustering/network-configuration] However, ignite uses a seemingly random port for connecting to the other node sometimes. By default all ports are closed in the firewall, so the connection fails with message "Failed to process selector key" Here are some connections that ignite attempts: locAddr=/10.125.100.93:20395, rmtAddr=/10.125.100.179:47100 locAddr=/10.125.100.93:10800, rmtAddr=/10.125.100.93:1851 locAddr=/10.125.100.93:10800, rmtAddr=/10.125.100.93:1775 locAddr=/10.125.100.93:1323, rmtAddr=/10.125.100.179:47100 So ports 20395, 1851, 1775, 1323 are used, but they are closed in the firewall. The ports change all the time. If I add them to the firewall, it doesn't take long until another unknown one pops up. I could not find them anywhere in the ignite documentation. Where do they come from and how to fix it? The network settings in the server config looks like this: <property name="discoverySpi"> <bean class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi"> <property name="ipFinder"> <bean class="org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder"> <property name="addresses"> <list> <value>10.125.100.93</value> <value>10.125.100.179</value> </list> </property> </bean> </property> <property name="localAddress" value="10.125.100.93"/> <!-- other ip on other node--> </bean> </property> <property name="transactionConfiguration"> <bean class="org.apache.ignite.configuration.TransactionConfiguration"> <!--Set the timeout to 20 seconds--> <property name="TxTimeoutOnPartitionMapExchange" value="20000"/> </bean> </property> <property name="communicationSpi"> <bean class="org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi"> <!-- Override timeout. --> <property name="SocketWriteTimeout" value="20000"/> </bean> </property> Full log output of the "Failed to process selector key" error attached. -- This message was sent by Atlassian Jira (v8.20.10#820010)