Open InRiPa opened 3 years ago
Hey @InRiPa!
That's because the only IP addresses you can choose from with Kalix are the ones already assigned to the network interfaces (cards) of your computer. The documentation might not reveal a lot of details about it, but it does mention it (see https://arkalix.se/javadocs/kalix-base/se/arkalix/ArSystem.Builder.html#localAddress(java.net.InetAddress), for example). In other words, the point of #localAddress() is not to decide your IP address, it is to select a particular network interface on your computer you want use.
Normally, you don't specify a local network address at all. What happens then is that the special "wildcard" network interface of your computer is used (symbolized by the local network interface with IP address 0.0.0.0), which can make requests and accept incoming connections via all network interfaces on your computer.
Use whatever DHCP server you have on your local network to change your IP address, or make a static IP address assignment via the operating system.
Hi, thanks for your reply! Unfortunately, I still can't fix my problem. I made a short sketch about my setup:
The current situation is:
start orchestration process
swagger api and using the sysop
certificate. )
Running echo consumer ...
Dec 07, 2020 4:14:14 PM se.arkalix.core.plugin.HttpJsonCloudPlugin$Attached <init>
INFO: HTTP/JSON cloud plugin attached to "echo_consumer"
ToSet: 192.168.1.5 :: ahfserver.com
Dec 07, 2020 4:14:15 PM se.arkalix.core.plugin.HttpJsonCloudPlugin$Attached requestAuthorizationKey
INFO: HTTP/JSON cloud plugin requesting authorization key ...
Dec 07, 2020 4:14:15 PM se.arkalix.core.plugin.HttpJsonCloudPlugin$Attached requestServiceDiscovery
INFO: HTTP/JSON cloud plugin connecting to "service_registry" system at ahfserver/192.168.1.5:8443 ...
Dec 07, 2020 4:14:15 PM se.arkalix.core.plugin.HttpJsonCloudPlugin$Attached lambda$requestServiceDiscovery$11
INFO: HTTP/JSON cloud plugin connected to "service_registry" system at ahfserver/192.168.1.5:8443
Dec 07, 2020 4:14:15 PM se.arkalix.core.plugin.HttpJsonCloudPlugin$Attached lambda$requestAuthorizationKey$14
INFO: Authorization key retrieved: MIIBIjANBgkqhkiG9[...]TwIDAQAB
Dec 07, 2020 4:14:15 PM se.arkalix.core.plugin.HttpJsonCloudPlugin$Attached onServiceProvided
INFO: HTTP/JSON cloud plugin registering "kalix-example-consumer-service" provided by "echo_consumer" ...
Dec 07, 2020 4:14:15 PM se.arkalix.core.plugin.HttpJsonCloudPlugin$Attached lambda$onServiceProvided$2
INFO: HTTP/JSON cloud plugin registered the "kalix-example-consumer-service" service provided by the "echo_consumer" system
Consumer service is being provided ...
Dec 07, 2020 4:14:15 PM se.arkalix.core.plugin.HttpJsonCloudPlugin$Attached requestOrchestration
INFO: HTTP/JSON cloud plugin connecting to "orchestrator" system ...
Dec 07, 2020 4:14:15 PM se.arkalix.core.plugin.HttpJsonCloudPlugin$Attached lambda$requestOrchestration$17
INFO: HTTP/JSON cloud plugin resolved orchestration service at ahfserver.com/192.168.1.5:8441
DELETE /example/runtime result: se.arkalix.query.ServiceNotFoundException: No service with the following properties could be resolved: name=Optional[kalix-example-provider-service], isSecure=true, encodings=[JSON], transports=[HTTP] at se.arkalix.query.ServiceQuery.lambda$resolveOne$4(ServiceQuery.java:451) at java.base/java.util.Optional.orElseGet(Optional.java:362) at se.arkalix.query.ServiceQuery.lambda$resolveOne$5(ServiceQuery.java:451) at se.arkalix.util.concurrent.Future$7.lambda$onResult$0(Future.java:601) at se.arkalix.util.concurrent.Future$1.lambda$onResult$0(Future.java:268) at se.arkalix.util.concurrent.Future$4.lambda$onResult$0(Future.java:428) at se.arkalix.util.concurrent.Future$1.lambda$onResult$0(Future.java:268) at se.arkalix.util.concurrent.Future$4.lambda$onResult$0(Future.java:428) at se.arkalix.util.concurrent.FutureSuccess.onResult(FutureSuccess.java:34) at se.arkalix.util.concurrent.Future$12.lambda$onResult$0(Future.java:957) at se.arkalix.util.concurrent.FutureSuccess.onResult(FutureSuccess.java:34) at se.arkalix.util.concurrent.Future$9.lambda$onResult$0(Future.java:716) at se.arkalix.internal.util.concurrent.FutureCompletion.complete(FutureCompletion.java:31) at se.arkalix.util.concurrent.FutureAnnouncement.lambda$new$0(FutureAnnouncement.java:37) at se.arkalix.util.concurrent.Future$3.lambda$onResult$0(Future.java:368) at se.arkalix.util.concurrent.Future$4.lambda$onResult$0(Future.java:428) at se.arkalix.internal.net.NettyBodyIncoming.complete(NettyBodyIncoming.java:67) at se.arkalix.internal.net.NettyBodyIncoming$Buffered.finish(NettyBodyIncoming.java:121) at se.arkalix.internal.net.NettyMessageIncoming.finish(NettyMessageIncoming.java:63) at se.arkalix.internal.net.http.client.NettyHttpClientConnection.readContent(NettyHttpClientConnection.java:159) at se.arkalix.internal.net.http.client.NettyHttpClientConnection.channelRead0(NettyHttpClientConnection.java:129) at se.arkalix.internal.net.http.client.NettyHttpClientConnection.channelRead0(NettyHttpClientConnection.java:43) at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:99) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) at io.netty.handler.codec.MessageToMessageCodec.channelRead(MessageToMessageCodec.java:111) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) at io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext.fireChannelRead(CombinedChannelDuplexHandler.java:436) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:324) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:296) at io.netty.channel.CombinedChannelDuplexHandler.channelRead(CombinedChannelDuplexHandler.java:251) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) at io.netty.handler.logging.LoggingHandler.channelRead(LoggingHandler.java:271) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) at io.netty.handler.ssl.SslHandler.unwrap(SslHandler.java:1526) at io.netty.handler.ssl.SslHandler.decodeJdkCompatible(SslHandler.java:1275) at io.netty.handler.ssl.SslHandler.decode(SslHandler.java:1322) at io.netty.handler.codec.ByteToMessageDecoder.decodeRemovalReentryProtection(ByteToMessageDecoder.java:501) at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:440) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:276) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:795) at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:475) at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:378) at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989) at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) at java.base/java.lang.Thread.run(Thread.java:832)
GET /example/pings/32 failed: se.arkalix.query.ServiceNotFoundException: No service with the following properties could be resolved: name=Optional[kalix-example-provider-service], isSecure=true, encodings=[JSON], transports=[HTTP] at se.arkalix.query.ServiceQuery.lambda$resolveOne$4(ServiceQuery.java:451) at java.base/java.util.Optional.orElseGet(Optional.java:362) at se.arkalix.query.ServiceQuery.lambda$resolveOne$5(ServiceQuery.java:451) at se.arkalix.util.concurrent.Future$7.lambda$onResult$0(Future.java:601) at se.arkalix.util.concurrent.Future$1.lambda$onResult$0(Future.java:268) at se.arkalix.util.concurrent.Future$4.lambda$onResult$0(Future.java:428) at se.arkalix.util.concurrent.Future$1.lambda$onResult$0(Future.java:268) at se.arkalix.util.concurrent.Future$4.lambda$onResult$0(Future.java:428) at se.arkalix.util.concurrent.FutureSuccess.onResult(FutureSuccess.java:34) at se.arkalix.util.concurrent.Future$12.lambda$onResult$0(Future.java:957) at se.arkalix.util.concurrent.FutureSuccess.onResult(FutureSuccess.java:34) at se.arkalix.util.concurrent.Future$9.lambda$onResult$0(Future.java:716) at se.arkalix.internal.util.concurrent.FutureCompletion.complete(FutureCompletion.java:31) at se.arkalix.util.concurrent.FutureAnnouncement.lambda$new$0(FutureAnnouncement.java:37) at se.arkalix.util.concurrent.Future$3.lambda$onResult$0(Future.java:368) at se.arkalix.util.concurrent.Future$4.lambda$onResult$0(Future.java:428) at se.arkalix.internal.net.NettyBodyIncoming.complete(NettyBodyIncoming.java:67) at se.arkalix.internal.net.NettyBodyIncoming$Buffered.finish(NettyBodyIncoming.java:121) at se.arkalix.internal.net.NettyMessageIncoming.finish(NettyMessageIncoming.java:63) at se.arkalix.internal.net.http.client.NettyHttpClientConnection.readContent(NettyHttpClientConnection.java:159) at se.arkalix.internal.net.http.client.NettyHttpClientConnection.channelRead0(NettyHttpClientConnection.java:129) at se.arkalix.internal.net.http.client.NettyHttpClientConnection.channelRead0(NettyHttpClientConnection.java:43) at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:99) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) at io.netty.handler.codec.MessageToMessageCodec.channelRead(MessageToMessageCodec.java:111) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) at io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext.fireChannelRead(CombinedChannelDuplexHandler.java:436) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:324) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:296) at io.netty.channel.CombinedChannelDuplexHandler.channelRead(CombinedChannelDuplexHandler.java:251) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) at io.netty.handler.logging.LoggingHandler.channelRead(LoggingHandler.java:271) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) at io.netty.handler.ssl.SslHandler.unwrap(SslHandler.java:1526) at io.netty.handler.ssl.SslHandler.decodeJdkCompatible(SslHandler.java:1275) at io.netty.handler.ssl.SslHandler.decode(SslHandler.java:1322) at io.netty.handler.codec.ByteToMessageDecoder.decodeRemovalReentryProtection(ByteToMessageDecoder.java:501) at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:440) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:276) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:795) at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:475) at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:378) at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989) at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) at java.base/java.lang.Thread.run(Thread.java:832)
I'm not sure if the error is based on the thing, that the provider and consumer both use `0.0.0.0` to provide their service.
Could that be the issue, or is it more likely a AuthRule issue?
@InRiPa Hey! Sorry for responding this late! For some reason I never noticed any notification. I saw your issue in an AHF report that was e-mailed to me earlier today.
This issue is not related to IP addresses, but to orchestration and/or authorization rules. If all authorization rules have been set up properly, then the issue is that there are no corresponding orchestration rules. If knowing that isn't helpful enough, just tell me and I'll try to guide you through it.
I'm not sure if the error is based on the thing, that the provider and consumer both use 0.0.0.0 to provide their service. Could that be the issue, or is it more likely a AuthRule issue?
Yes indeed, 0.0.0.0 should never appear as an address in the service registry. I'll see if I can patch arrowhead-kalix to automatically translate such. @InRiPa Did you have any suggestions on how such translations would be performed? :)
A little update. I checked out the latest version from the master branch. Opened the example and switched certificates to the one's needed for my local ahf (remote) instance. I adjusted the Echo Provider with adding the provider endpoint statement:
final var system = new ArSystem.Builder()
.identity(identity)
.trustStore(trustStore)
.localHostnamePort("<eth ip>", 9001) //
.plugins(HttpJsonCloudPlugin.joinViaServiceRegistryAt(srSocketAddress))
.build();
resulted in:
java -cp target/echo-cloud-0.5.0-jar-with-dependencies.jar se.arkalix.examples.EchoProvider target/system.echo_provider.p12 target/truststore.p12 111.22.33.444 8443
Apr 14, 2021 4:59:43 PM se.arkalix.core.plugin.HttpJsonCloudPlugin$Attached <init>
INFO: HTTP/JSON cloud plugin attached to "echo_provider"
Echo provider running ...
Apr 14, 2021 4:59:43 PM se.arkalix.core.plugin.HttpJsonCloudPlugin$Attached requestAuthorizationKey
INFO: HTTP/JSON cloud plugin requesting authorization key ...
Apr 14, 2021 4:59:43 PM se.arkalix.core.plugin.HttpJsonCloudPlugin$Attached requestServiceDiscovery
INFO: HTTP/JSON cloud plugin connecting to "service_registry" system at /111.22.33.444:8443 ...
Apr 14, 2021 4:59:46 PM se.arkalix.core.plugin.HttpJsonCloudPlugin$Attached lambda$requestServiceDiscovery$12
SEVERE: HTTP/JSON cloud plugin failed to connect to "service_registry" system at /111.22.33.444:8443
io.netty.channel.AbstractChannel$AnnotatedConnectException: finishConnect(..) failed: No route to host: /111.22.33.444:8443
Caused by: java.net.ConnectException: finishConnect(..) failed: No route to host
at io.netty.channel.unix.Errors.throwConnectException(Errors.java:124)
at io.netty.channel.unix.Socket.finishConnect(Socket.java:251)
at io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.doFinishConnect(AbstractEpollChannel.java:672)
at io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.finishConnect(AbstractEpollChannel.java:649)
at io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.epollOutReady(AbstractEpollChannel.java:529)
at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:465)
at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:378)
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
at java.base/java.lang.Thread.run(Thread.java:832)
Apr 14, 2021 4:59:46 PM se.arkalix.core.plugin.HttpJsonCloudPlugin$Attached lambda$requestAuthorizationKey$15
WARNING: Failed to retrieve authorization key
io.netty.channel.AbstractChannel$AnnotatedConnectException: finishConnect(..) failed: No route to host: /111.22.33.444:8443
Caused by: java.net.ConnectException: finishConnect(..) failed: No route to host
at io.netty.channel.unix.Errors.throwConnectException(Errors.java:124)
at io.netty.channel.unix.Socket.finishConnect(Socket.java:251)
at io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.doFinishConnect(AbstractEpollChannel.java:672)
at io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.finishConnect(AbstractEpollChannel.java:649)
at io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.epollOutReady(AbstractEpollChannel.java:529)
at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:465)
at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:378)
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
at java.base/java.lang.Thread.run(Thread.java:832)
io.netty.channel.AbstractChannel$AnnotatedConnectException: finishConnect(..) failed: No route to host: /111.22.33.444:8443
Caused by: java.net.ConnectException: finishConnect(..) failed: No route to host
at io.netty.channel.unix.Errors.throwConnectException(Errors.java:124)
at io.netty.channel.unix.Socket.finishConnect(Socket.java:251)
at io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.doFinishConnect(AbstractEpollChannel.java:672)
at io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.finishConnect(AbstractEpollChannel.java:649)
at io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.epollOutReady(AbstractEpollChannel.java:529)
at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:465)
at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:378)
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
at java.base/java.lang.Thread.run(Thread.java:832)
and tried :
java -cp target/echo-cloud-0.5.0-jar-with-dependencies.jar se.arkalix.examples.EchoProvider target/system.echo_provider.p12 target/truststore.p12 ahf.com 8443
Apr 14, 2021 4:55:06 PM se.arkalix.core.plugin.HttpJsonCloudPlugin$Attached <init>
INFO: HTTP/JSON cloud plugin attached to "echo_provider"
Apr 14, 2021 4:55:06 PM se.arkalix.core.plugin.HttpJsonCloudPlugin$Attached requestAuthorizationKey
INFO: HTTP/JSON cloud plugin requesting authorization key ...
Apr 14, 2021 4:55:06 PM se.arkalix.core.plugin.HttpJsonCloudPlugin$Attached requestServiceDiscovery
INFO: HTTP/JSON cloud plugin connecting to "service_registry" system at ahf.com/111.22.33.444:8443 ...
Echo provider running ...
Apr 14, 2021 4:55:09 PM se.arkalix.core.plugin.HttpJsonCloudPlugin$Attached lambda$requestServiceDiscovery$12
SEVERE: HTTP/JSON cloud plugin failed to connect to "service_registry" system at ahf.com/111.22.33.444:8443
io.netty.channel.AbstractChannel$AnnotatedConnectException: finishConnect(..) failed: No route to host: ahf.com/111.22.33.444:8443
Caused by: java.net.ConnectException: finishConnect(..) failed: No route to host
at io.netty.channel.unix.Errors.throwConnectException(Errors.java:124)
at io.netty.channel.unix.Socket.finishConnect(Socket.java:251)
at io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.doFinishConnect(AbstractEpollChannel.java:672)
at io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.finishConnect(AbstractEpollChannel.java:649)
at io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.epollOutReady(AbstractEpollChannel.java:529)
at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:465)
at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:378)
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
at java.base/java.lang.Thread.run(Thread.java:832)
Apr 14, 2021 4:55:09 PM se.arkalix.core.plugin.HttpJsonCloudPlugin$Attached lambda$requestAuthorizationKey$15
WARNING: Failed to retrieve authorization key
io.netty.channel.AbstractChannel$AnnotatedConnectException: finishConnect(..) failed: No route to host: ahf.com/111.22.33.444:8443
Caused by: java.net.ConnectException: finishConnect(..) failed: No route to host
at io.netty.channel.unix.Errors.throwConnectException(Errors.java:124)
at io.netty.channel.unix.Socket.finishConnect(Socket.java:251)
at io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.doFinishConnect(AbstractEpollChannel.java:672)
at io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.finishConnect(AbstractEpollChannel.java:649)
at io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.epollOutReady(AbstractEpollChannel.java:529)
at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:465)
at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:378)
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
at java.base/java.lang.Thread.run(Thread.java:832)
io.netty.channel.AbstractChannel$AnnotatedConnectException: finishConnect(..) failed: No route to host: ahf.com/111.22.33.444:8443
Caused by: java.net.ConnectException: finishConnect(..) failed: No route to host
at io.netty.channel.unix.Errors.throwConnectException(Errors.java:124)
at io.netty.channel.unix.Socket.finishConnect(Socket.java:251)
at io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.doFinishConnect(AbstractEpollChannel.java:672)
at io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.finishConnect(AbstractEpollChannel.java:649)
at io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.epollOutReady(AbstractEpollChannel.java:529)
at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:465)
at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:378)
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
at java.base/java.lang.Thread.run(Thread.java:832)
Furthermore, I did some more checks on the same system:
@InRiPa Strange. I've been digging around in the Netty source code. The error messages you receive come from the connect()
unix call. The concrete error code you get is ENETUNREACH
, which is used to indicate that the host you try to connect to is not available via your local network. If it works via ping
, then maybe the <eth ip>
network interface is not connected to the router through which ahf.com is available? The DNS lookup seems to work, though. Perhaps it doesn't use the same network interface?
HI,
how can I change the IP address of for example a provider?
I believe, this has to be done during the
new ArSystem.Builder()
I tried changing it, using
.localAddress()
and.localHostnamePort("localhost", 9001)
:e.g:
But this results in following exception:
Thanks a lot for your help!