gpt4 book ai didi

hadoop - 构造远程 block 的Spark I/O错误

转载 作者:可可西里 更新时间:2023-11-01 15:55:01 33 4
gpt4 key购买 nike

我想用同一网络中的两台计算机创建一个自制的 spark 集群。设置如下:

A) 192.168.1.9 安装了 hadoop hdfs 的 spark master

Hadoop 有这个 core-site.xml

<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>/app/hadoop/tmp</value>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://0.0.0.0:9000</value>
</property>
</configuration>

B) 192.168.1.6 仅带 spark(从)

我想从 B 使用 spark 命令访问 A 的 hadoop hdfs 中的文件:

...
# Load files
file_1 = "input_1.pkl"
file_2 = "input_2.pkl"
hdfs_base_path = "hdfs://192.168.1.9:9000/folderx/"
sc.addFile(hdfs_base_path + file_1)
sc.addFile(hdfs_base_path + file_2)

# Get files back
with open(SparkFiles.get(file_1), 'rb') as fw:
// use fw

但是如果我想测试B中的程序,当我执行B中的程序时使用命令:

./spark-submit --master local program.py

输出如下:

17/07/25 19:02:51 INFO SparkContext: Added file hdfs://192.168.1.9:9000/bigdata/input_1_new_grid.pkl at hdfs://192.168.1.9:9000/bigdata/input_1_new_grid.pkl with timestamp 1501002171301
17/07/25 19:02:51 INFO Utils: Fetching hdfs://192.168.1.9:9000/bigdata/input_1_new_grid.pkl to /tmp/spark-838c3774-36ec-4db1-ab01-a8a8c627b100/userFiles-b4973f80-be6e-4f2e-8ba1-cd64ddca369a/fetchFileTemp1979399086141127743.tmp
17/07/25 19:02:51 WARN BlockReaderFactory: I/O error constructing remote block reader.
java.net.ConnectException: Connection refused
at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:717)

之后:

    17/07/25 19:02:51 WARN DFSClient: Failed to connect to /127.0.0.1:50010 for block, add to deadNodes and continue. java.net.ConnectException: Connection refused
java.net.ConnectException: Connection refused
at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)

程序试图访问 127.0.0.1:50010,但是错误。我也应该在 B 中安装 hadoop 吗?如果不需要,正确的配置是什么?谢谢!

最佳答案

顺便说一句,以防万一有人找到某种解决方案,我通过将 quickstart.cloudera 指向真实 IP 地址而不是 127.0.0.1 来解决我的问题。默认的/etc/hosts 是127.0.0.1 quickstart.cloudera quickstart localhost localhost.domain

你想要的是127.0.0.1 本地主机 localhost.domainxxxIP_Address_oF_YOUR_VM quickstart.cloudera quickstart

您可能还想修改/usr/bin/cloudera-quickstart-ip,因为每次重启 VM 时,hosts 文件可能会再次重置。

关于hadoop - 构造远程 block 的Spark I/O错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45310358/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com