将文件从wsl复制到docker上运行的hdfs

ufj5ltwl  于 2021-05-31  发布在  Hadoop
关注(0)|答案(1)|浏览(460)

我正试图将一个文件从本地驱动器复制到hdfs。
我正在docker上运行hadoop作为映像。我尝试在mapreduce上执行一些练习,因此,我想将一个数据文件从本地驱动器(比如我的d:drive)复制到hdfs。
我按命令试过,但失败了 ssh: connect to host localhost port 22: Connection refused :

scp -P 50070 /mnt/d/project/recreate.out root@localhost:/root

因为我对hadoop和大数据还不熟悉,所以我的解释可能很糟糕。请原谅我。
我正在尝试从windows linux子系统(wsl)中执行上述操作
问候,crf

sulc1iza

sulc1iza1#

scp不会将数据移动到hadoop。端口50070不接受通过该协议(ssh)的连接
您需要设置并使用类似的命令 hdfs dfs -copyFromLocal ,并且hdfs cli可以作为windows命令使用,因此您不需要wsl来上载文件
当使用docker时,我建议这样做
将卷从主机装载到datanode和namenode目录之外的hadoop容器 docker exec 在这个流动的容器里
在上面跑 hdfs 命令,从装入的卷上载

相关问题