Gary Yao created FLINK-8891: ------------------------------- Summary: RestServerEndpoint can bind on local address only Key: FLINK-8891 URL: https://issues.apache.org/jira/browse/FLINK-8891 Project: Flink Issue Type: Bug Components: REST, YARN Affects Versions: 1.5.0 Environment: EC2 AMI debian-jessie-amd64-hvm-2017-01-15-1221-ebs (ami-5900cc36) Hadoop 2.8.3 Flink commit 80020cb5866c8bac67a48f89aa481de7de262f83 Reporter: Gary Yao Fix For: 1.5.0
*Description* When deploying a Flink session on YARN, the {{DispatcherRestEndpoint}} may incorrectly bind on a local address. When this happens, the job submission and all REST API calls using a non-local address will fail. *znode leader contents* {noformat} [zk: localhost:2181(CONNECTED) 3] get /flink/application_1520439896153_0001/leader/rest_server_lock ??whttp://127.0.1.1:56299srjava.util.UUID????m?/J leastSigBitsJ mostSigBitsxp??L???g?M??KFK cZxid = 0x10000000a ctime = Wed Mar 07 16:25:21 UTC 2018 mZxid = 0x10000000a mtime = Wed Mar 07 16:25:21 UTC 2018 pZxid = 0x10000000a cversion = 0 dataVersion = 0 aclVersion = 0 ephemeralOwner = 0x5620147c1220000 dataLength = 106 numChildren = 0 {noformat} *Contents of {{/etc/hosts}}* {noformat} 127.0.1.1 ip-172-31-36-187.eu-central-1.compute.internal ip-172-31-36-187 127.0.0.1 localhost # The following lines are desirable for IPv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters ff02::3 ip6-allhosts {noformat} Note that without the first line, the problem does not appear. *Error message & Stacktrace* {noformat} 2018-03-07 16:25:24,267 INFO org.apache.flink.yarn.AbstractYarnClusterDescriptor - Found application JobManager host name 'ip-172-31-44-106.eu-central-1.compute.internal' and port '56299' from supplied application id 'application_1520439896153_0001' Using the parallelism provided by the remote cluster (0). To use another parallelism, set it at the ./bin/flink client. Starting execution of program STDERR: ------------------------------------------------------------ The program finished with the following exception: org.apache.flink.client.program.ProgramInvocationException: Could not submit job 6243b830a6cb1a0b6605a15a7d3d81d4. at org.apache.flink.client.program.rest.RestClusterClient.submitJob(RestClusterClient.java:231) at org.apache.flink.client.program.ClusterClient.run(ClusterClient.java:457) at org.apache.flink.client.program.DetachedEnvironment.finalizeExecute(DetachedEnvironment.java:77) at org.apache.flink.client.program.ClusterClient.run(ClusterClient.java:403) at org.apache.flink.client.cli.CliFrontend.executeProgram(CliFrontend.java:780) at org.apache.flink.client.cli.CliFrontend.runProgram(CliFrontend.java:274) at org.apache.flink.client.cli.CliFrontend.run(CliFrontend.java:209) at org.apache.flink.client.cli.CliFrontend.parseParameters(CliFrontend.java:1019) at org.apache.flink.client.cli.CliFrontend.lambda$main$9(CliFrontend.java:1095) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:422) at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1836) at org.apache.flink.runtime.security.HadoopSecurityContext.runSecured(HadoopSecurityContext.java:41) at org.apache.flink.client.cli.CliFrontend.main(CliFrontend.java:1095) Caused by: org.apache.flink.runtime.client.JobSubmissionException: Failed to submit JobGraph. at org.apache.flink.client.program.rest.RestClusterClient.lambda$submitJob$4(RestClusterClient.java:327) at java.util.concurrent.CompletableFuture.uniExceptionally(CompletableFuture.java:870) at java.util.concurrent.CompletableFuture$UniExceptionally.tryFire(CompletableFuture.java:852) at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474) at java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:1977) at org.apache.flink.runtime.rest.RestClient.lambda$submitRequest$1(RestClient.java:196) at org.apache.flink.shaded.netty4.io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:680) at org.apache.flink.shaded.netty4.io.netty.util.concurrent.DefaultPromise.notifyListeners0(DefaultPromise.java:603) at org.apache.flink.shaded.netty4.io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:563) at org.apache.flink.shaded.netty4.io.netty.util.concurrent.DefaultPromise.tryFailure(DefaultPromise.java:424) at org.apache.flink.shaded.netty4.io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.fulfillConnectPromise(AbstractNioChannel.java:268) at org.apache.flink.shaded.netty4.io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.finishConnect(AbstractNioChannel.java:284) at org.apache.flink.shaded.netty4.io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:528) at org.apache.flink.shaded.netty4.io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:468) at org.apache.flink.shaded.netty4.io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:382) at org.apache.flink.shaded.netty4.io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:354) at org.apache.flink.shaded.netty4.io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:111) at org.apache.flink.shaded.netty4.io.netty.util.concurrent.DefaultThreadFactory$DefaultRunnableDecorator.run(DefaultThreadFactory.java:137) at java.lang.Thread.run(Thread.java:748) Caused by: java.util.concurrent.CompletionException: java.net.ConnectException: Connection refused: /127.0.1.1:56299 at java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:292) at java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:308) at java.util.concurrent.CompletableFuture.uniCompose(CompletableFuture.java:943) at java.util.concurrent.CompletableFuture$UniCompose.tryFire(CompletableFuture.java:926) ... 16 more Caused by: java.net.ConnectException: Connection refused: /127.0.1.1:56299 at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:717) at org.apache.flink.shaded.netty4.io.netty.channel.socket.nio.NioSocketChannel.doFinishConnect(NioSocketChannel.java:224) at org.apache.flink.shaded.netty4.io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.finishConnect(AbstractNioChannel.java:281) ... 7 more {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)