在我的大学里,我有一台机器,hadoop配置为伪分布式模式,我需要在家里控制它。
如果我从ssh连接,我会遇到一些问题:
如果启动此命令:
./hadoop jar 'my.jar' hdfs://localhost:54310
那么jar必须在hadoop的计算机上。有没有一个解决方案来运行一个在我家电脑上的jar?
类似地,如何使用get/put命令从我的家庭计算机和hdfs文件系统中获取/放入数据?
目前,我有一个dropbox文件夹,我“放置和移动”的文件,但不是一个非常干净的解决方案。
另一个大问题是,如果我通过ssh运行jar,然后关闭ssh连接,工作就会停止。但我需要在hadoop上开始一项工作,然后关掉我的家用电脑。这个问题有解决办法吗?
1条答案
按热度按时间ni65a41a1#
以下是我对你问题的回答:
jar文件必须在安装了hadoop的系统上才能运行。
如果您在家庭计算机上运行windows环境,则可以使用winscp将文件从家庭计算机获取/放入hadoop系统。那你就得开一张支票
hadoop fs -put or hadoop fs -get
命令将文件从hdfs放到hadoop系统上的本地fs。我不知道一个简单的方法来获取/把文件从您的家庭电脑到hdfs。如果您运行的是unix环境,那么只需从终端/控制台发出scp命令即可。是的,如果您ssh到一台机器中,发出一个命令&然后关闭ssh连接,执行就会停止。但是,您可以将该命令作为后台进程运行,即使在关闭ssh连接之后,执行也将继续。您需要附加一个与号:
&
到你命令的最后。例子:编辑
将输出重定向到文件的命令: