我的大学里有一台机器,hadoop配置为伪分布式模式,我需要在家控制它。
如果我从SSH连接,我有一些问题:
如果我启动此命令:
./hadoop jar 'my.jar' hdfs://localhost:54310
然后jar必须在Hadoop的计算机上。是否有解决方案来运行家用计算机上的jar?
同样,我如何使用get / put命令从/到我的家用电脑和HDFS文件系统?/ / p>
现在我有一个dropbox文件夹,我“放置并移动”文件,但不是一个非常干净的解决方案。
另一个大问题是,如果我通过SSH运行jar然后关闭SSH连接,则工作停止。但我需要开始研究Hadoop并关闭家用电脑。这个问题有解决方案吗?
答案 0 :(得分:1)
以下是我对你问题的回答:
jar文件必须位于安装了Hadoop的系统上才能运行它。
如果您在家用计算机上运行Windows环境,则可以使用WinSCP将文件从家用计算机获取/放入Hadoop系统。然后,您必须发出hadoop fs -put or hadoop fs -get
命令,将HDFS中的文件放入hadoop系统的本地FS。我不知道从家用计算机获取/放置文件到HDFS的简单方法。
如果您正在运行unix环境,则只需从终端/控制台发出SCP命令即可。
是的,如果您通过SSH连接到计算机,请发出命令&然后关闭SSH连接,执行停止。但是,您可以将该命令作为后台进程运行,即使关闭SSH连接,执行仍将继续。您需要在命令末尾附加一个&符号&
。示例:
./hadoop jar 'my.jar' hdfs://localhost:54310 &
修改强>
将输出重定向到文件的命令:
./hadoop jar 'my.jar' hdfs://localhost:54310 > outputFile &