2017-10-17 115 views
0

我的設置如下火花獨立的集羣環境中:工人被拒絕連接到客戶端NAT網絡

主:雲,有公網IP地址:master_ip_address
工人:雲,有市民IP地址
客戶端:NAT網絡內部

我在運行客戶機下面的命令: 火花殼--master火花:// master_ip_address:7077

從工人的web用戶界面,我檢查標準犯錯記錄,它表明:

17/10/17 00:54:39 INFO CoarseGrainedExecutorBackend: Started daemon with process name: [email protected] 
17/10/17 00:54:39 WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable 
17/10/17 00:54:40 INFO SecurityManager: Changing view acls to: dbadmin,jshen 
17/10/17 00:54:40 INFO SecurityManager: Changing modify acls to: dbadmin,jshen 
17/10/17 00:54:40 INFO SecurityManager: Changing view acls groups to: 
17/10/17 00:54:40 INFO SecurityManager: Changing modify acls groups to: 
17/10/17 00:54:40 INFO SecurityManager: SecurityManager: authentication disabled; ui acls disabled; users with view permissions: Set(dbadmin, jshen); groups with view permissions: Set(); users with modify permissions: Set(dbadmin, jshen); groups with modify permissions: Set() 
Exception in thread "main" java.lang.reflect.UndeclaredThrowableException 
    at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1713) 
    at org.apache.spark.deploy.SparkHadoopUtil.runAsSparkUser(SparkHadoopUtil.scala:66) 
    at org.apache.spark.executor.CoarseGrainedExecutorBackend$.run(CoarseGrainedExecutorBackend.scala:188) 
    at org.apache.spark.executor.CoarseGrainedExecutorBackend$.main(CoarseGrainedExecutorBackend.scala:284) 
    at org.apache.spark.executor.CoarseGrainedExecutorBackend.main(CoarseGrainedExecutorBackend.scala) 
Caused by: org.apache.spark.SparkException: Exception thrown in awaitResult: 
    at org.apache.spark.util.ThreadUtils$.awaitResult(ThreadUtils.scala:205) 
    at org.apache.spark.rpc.RpcTimeout.awaitResult(RpcTimeout.scala:75) 
    at org.apache.spark.rpc.RpcEnv.setupEndpointRefByURI(RpcEnv.scala:100) 
    at org.apache.spark.executor.CoarseGrainedExecutorBackend$$anonfun$run$1.apply$mcV$sp(CoarseGrainedExecutorBackend.scala:202) 
    at org.apache.spark.deploy.SparkHadoopUtil$$anon$2.run(SparkHadoopUtil.scala:67) 
    at org.apache.spark.deploy.SparkHadoopUtil$$anon$2.run(SparkHadoopUtil.scala:66) 
    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:1698) 
    ... 4 more 
Caused by: java.io.IOException: Failed to connect to /10.154.10.3:38572 
    at org.apache.spark.network.client.TransportClientFactory.createClient(TransportClientFactory.java:232) 
    at org.apache.spark.network.client.TransportClientFactory.createClient(TransportClientFactory.java:182) 
    at org.apache.spark.rpc.netty.NettyRpcEnv.createClient(NettyRpcEnv.scala:197) 
    at org.apache.spark.rpc.netty.Outbox$$anon$1.call(Outbox.scala:194) 
    at org.apache.spark.rpc.netty.Outbox$$anon$1.call(Outbox.scala:190) 
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
    at java.lang.Thread.run(Thread.java:748) 
Caused by: io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: no further information: /10.154.10.3:38572 
    at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) 
    at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:717) 
    at io.netty.channel.socket.nio.NioSocketChannel.doFinishConnect(NioSocketChannel.java:257) 
    at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.finishConnect(AbstractNioChannel.java:291) 
    at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:631) 
    at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:566) 
    at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:480) 
    at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:442) 
    at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:131) 
    at io.netty.util.concurrent.DefaultThreadFactory$DefaultRunnableDecorator.run(DefaultThreadFactory.java:144) 
    ... 1 more 

的IP地址:10.154.10.3是客戶機的內部IP地址,不是外在的人,所以工人無法連接到客戶端機器,這就是問題所在。

我的問題是:是否有通過設置一些配置或別的東西,使環境工作的方式。

謝謝。

+1

能否請您提供更多的細節工作? https://stackoverflow.com/help/how-to-ask –

回答

0

由於您的客戶端與NAT配置沒有機器可以從外部連接,如果可行的話會建議使用橋接網絡。

如果這不是一個選項,找其中有兩個網絡NAT,只有主機適配器或至少一個VM橋/僅主機,然後提出具體的端口爲隧道

相關問題