java - 使用 SSH 从 Java 应用程序连接到 Hadoop

标签 java scala hadoop ssh hdfs

我正在尝试连接到无法通过 HDFS 访问的远程 hadoop 集群。现在它以这种方式使用:用户通过 SSH(例如 ssh user@somejumboxhost.com)连接到 Jump box,然后我们也使用 ssh(例如 ssh user@realhadoopcluster1.com)从 jump box 服务器连接到 hadoop。我想做的是使用 HDFS 客户端从我的 Scala/Java 应用程序访问文件。现在我感觉就像在 Matrix 中一样——“我必须更深入”并且不知道如何到达服务器。

有没有人有过类似的经历?现在我正尝试从我的应用程序使用 SSH 客户端连接到第一台服务器,但我不知道如何调用 HDFS 客户端。

任何想法将不胜感激,谢谢!

最佳答案

我能想到这样的事情。有“ganymed-ssh2”api 可以帮助您使用 ssh 连接到某个服务器并从那里运行 unix 命令。使用它您可以连接到您的 jumo 盒子。

从那里你可以运行命令为“ssh user@realhadoopcluster1.com hadoop fs somthing”

因为我们可以像这样使用 ssh 运行命令。

从您的跳转箱,设置一个无密码的 ssh 到您的 hadoopcluster 机器。或者您可以使用带密码的 sshpass。

您可以访问以下链接查看如何使用此 api:

http://souravgulati.webs.com/apps/forums/topics/show/8116298-how-to-execute-unix-command-from-java-

关于java - 使用 SSH 从 Java 应用程序连接到 Hadoop,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15431207/

相关文章:

java - 我如何使用 spring 使用带参数的消息

scala - 如何在 Slick 3.0 中 COUNT(*)?

hadoop - 无法运行 mapreduce wordcount

hadoop - 多节点hadoop集群和mesos上跑hadoop有什么区别?

Hadoop 与凤凰 : how to write the phoenix table object to hdfs filesystem

java - Spring RequestMapping 通配符和后缀

java - 方法参数返回后 intellij 代码格式无法正确缩进(kotlin 和 Java)

java - 为 JDK 10 中的类文件生成 JNI 头文件

scala - 无法证明 Null < :< T

scala - 选项和命名默认参数就像 Scala API 中的油和水吗?