使用SSH从Java应用程序连接到Hadoop
我正在尝试连接到远程hadoop集群,它不能仅通过HDFS访问。现在它的使用方式是:用户通过SSH(例如SSH)连接到跳转框user@somejumboxhost.com),然后从跳转盒服务器,我们也使用ssh(例如ssh)连接到hadoopuser@realhadoopcluster1.com). 我试图做的是使用HDFS客户端从Scala/Java应用程序访问文件。现在我感觉就像在黑客帝国里一样——“我必须更深入”,不知道如何到达服务器 可能有人有过类似的经历?现在,我正在尝试从我的应用程序使用SSH客户端连接到第一个服务器,但是我不知道如何调用HDFS客户端使用SSH从Java应用程序连接到Hadoop,java,scala,hadoop,ssh,hdfs,Java,Scala,Hadoop,Ssh,Hdfs,我正在尝试连接到远程hadoop集群,它不能仅通过HDFS访问。现在它的使用方式是:用户通过SSH(例如SSH)连接到跳转框user@somejumboxhost.com),然后从跳转盒服务器,我们也使用ssh(例如ssh)连接到hadoopuser@realhadoopcluster1.com). 我试图做的是使用HDFS客户端从Scala/Java应用程序访问文件。现在我感觉就像在黑客帝国里一样——“我必须更深入”,不知道如何到达服务器 可能有人有过类似的经历?现在,我正在尝试从我的应用程序
如果您有任何想法,我们将不胜感激,谢谢 我能想到这样的事情。有一个“ganymed-ssh2”api,它可以帮助您使用ssh连接到某个服务器并从那里运行unix命令。使用此功能,您可以连接到jumo box 从这里,您可以以“ssh”的形式运行命令user@realhadoopcluster1.comhadoop fs somthing“ 因为我们可以像这样用ssh运行命令 在跳转框中,为hadoopcluster计算机设置一个无密码ssh。或者您可以使用带有密码的sshpass 您可以访问以下链接以检查如何使用此api:
我能想到这样的事情。有一个“ganymed-ssh2”api,它可以帮助您使用ssh连接到某个服务器并从那里运行unix命令。使用此功能,您可以连接到jumo box 从这里,您可以以“ssh”的形式运行命令user@realhadoopcluster1.comhadoop fs somthing“ 因为我们可以像这样用ssh运行命令 在跳转框中,为hadoopcluster计算机设置一个无密码ssh。或者您可以使用带有密码的sshpass 您可以访问以下链接以检查如何使用此api:
Hadoop是用Java实现的,因此您可以直接从应用程序运行Hadoop集群。如果是远程集群,请使用JavaRMI。您试图执行的额外管道工作毫无意义。Hadoop是用Java实现的,因此您可以直接从应用程序运行Hadoop集群。如果是远程集群,请使用JavaRMI。你要做的额外管道工程毫无意义。谢谢你的回答。实际上,我最终得到了类似的结果,我使用的是scala ssh lib,但后来我决定将需要访问的文件放在一个更好的地方,这样更容易获得。谢谢你的回答。实际上,我最终得到了类似的结果,我使用的是scala ssh库,但后来我决定将需要访问的文件放在一个更好的地方,这样更容易获取。