Support Questions

Find answers, ask questions, and share your expertise

Remote Process Group error

avatar

Hi

I am trying to transfer data from one nifi instance to other nifi running on other IP 10.0.5.22 and port 8130 using remote process group. connection is esablished with the same but while trying to transfer data through RPG its throwing following error

"2017-04-18 15:29:31,841 ERROR [pool-175-thread-1] o.a.n.r.util.SiteToSiteRestApiClient Failed to create transaction for http://ankit.paladion.com:8130/nifi-api/data-transfer/input-ports/38baf289-015b-1000-fa70-1a33f9d64c...

java.net.ConnectException: Connection timed out: no further information

at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) ~[na:1.8.0_111]

at sun.nio.ch.SocketChannelImpl.finishConnect(Unknown Source) ~[na:1.8.0_111]

at org.apache.http.impl.nio.reactor.DefaultConnectingIOReactor.processEvent(DefaultConnectingIOReactor.java:171) [httpcore-nio-4.4.5.jar:4.4.5]

at org.apache.http.impl.nio.reactor.DefaultConnectingIOReactor.processEvents(DefaultConnectingIOReactor.java:145) [httpcore-nio-4.4.5.jar:4.4.5]

at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor.execute(AbstractMultiworkerIOReactor.java:348) [httpcore-nio-4.4.5.jar:4.4.5]

at org.apache.http.impl.nio.conn.PoolingNHttpClientConnectionManager.execute(PoolingNHttpClientConnectionManager.java:192) [httpasyncclient-4.1.2.jar:4.1.2]

at org.apache.http.impl.nio.client.CloseableHttpAsyncClientBase$1.run(CloseableHttpAsyncClientBase.java:64) [httpasyncclient-4.1.2.jar:4.1.2]

at java.lang.Thread.run(Unknown Source) [na:1.8.0_111]"

Please help me with the above issue..

6 REPLIES 6

avatar

@TARANA POLEKAR

Are the two instances of NiFi running on the same system and bound to different IPs?

avatar
@TARANA POLEKAR

Correct, both instances of NiFi need to have the site-to-site properties configured.

Depending on your version of NiFi, the properties are:

# Site to Site properties nifi.remote.input.host= nifi.remote.input.secure=false nifi.remote.input.socket.port= nifi.remote.input.http.enabled=true nifi.remote.input.http.transaction.ttl=30 sec

avatar

@Wynner two instances of nifi are running on two different IPs

avatar
@TARANA POLEKAR

Are you able to ping 10.0.5.22 from the system with the other NiFi instance?

How about trying the command: telnet 10.0.5.22 8130?

Is the 10.0.5.22 address a private or public IP?

avatar

@Wynner I am able to ping 10.0.5.22..i can run the other nifi instance on my browser.. do this require any site to site properties to configured in nifi properties in both the instances???

avatar
Master Mentor

@TARANA POLEKAR

What properties you need to set depends on whether you are using RAW or HTTP to transfer data over S2S between your NiFi instances. The S2S properties must be configured on the target NiFi (the one NOT running the RPG). When using RAW or HTTP the initial communications with the target NiFi instance is to the targets's HTTP(s) port. This allows you to setup your dataflow to your S2S. When it comes to data transfer, With the RAW format, data is trying to be transferred to the configured nifi.remote.input.host= at configured nifi.remote.input.socket.port= . With HTTP format, data is transferred to nifi.remote.input.host= at the nodes http(s) port.

My guess here is that you are using the default RAW protocol, and you source instances cannot communicate with the nifi.remote.input.port=. Other issue may be if nifi.remote.input.host= is not set, Java tries to determine hostname itself and that my be resolving to localhost causing communications issues,

Thanks,

Matt