[英]How to connect to hdfs deployed in the docker?
我从这个项目部署了 hadoop 和 spark https://github.com/Marcel-Jan/docker-hadoop-spark
我已经完成了自述文件中的“快速启动 Spark (PySpark)”说明,并从 hdfs 获得了一个数据框
我需要做同样的事情,但通过气流。 我成功连接到 spark master:
spark = (SparkSession
.builder
# .master('local')
.master("spark://127.0.0.1:7077")
.appName("Test")
.getOrCreate())
但是当我试图到达 hadoop 集群时,我得到了错误
Call From SPB-379/127.0.1.1 to namenode:9000 failed on connection exception: java.net.ConnectException: Connection refused; For more details see: http://wiki.apache.org/hadoop/ConnectionRefused
我知道气流没有看到地址“namenode”,我尝试执行命令 - docker inspect <hadoop container id>
并获取
"Networks": {
"docker-hadoop-spark_default": {
"IPAMConfig": null,
"Links": null,
"Aliases": [
"namenode",
"namenode",
"8a06dd5cca57"
],
"NetworkID": "f57164de9f26ef3a1a33c4ee46b24903c0824009ecfeda06f7f45ba9206f6a0a",
"EndpointID": "6bf662634c9ef925dc435d8a28364b045ef8b572e22f5c5316257ada2a52cc0d",
"Gateway": "172.19.0.1",
"IPAddress": "172.19.0.9",
"IPPrefixLen": 16,
"IPv6Gateway": "",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"MacAddress": "02:42:ac:13:00:09",
"DriverOpts": null
}
但是这个ipaddress也报错了。 我不确定这种方式是否正确,我想提供任何反馈:)
错误说namenode:9000
无法解析。
自述文件说名称节点使用端口 9870。
我这里有一个 Docker 示例,它在 Spark 笔记本上运行良好。
关于气流,您需要确保它也作为容器运行,而不是在您的主机上运行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.