如何通过api / web-services识别远程Hadoop集群的版本?即群集是1.x类型还是2.x类型?是否有可用的API /网络服务?
我研究过webhdfs? hadoop文件系统,但无法确定执行方法?
最佳答案
一种解决方法是通过识别异常(或多或少采用点击和试用方法):
如果在客户端中使用1.x API并连接到2.x Hadoop群集或Vicecersa,请通过以下方式进行:
final String uri = "hdfs://remoteHostName:9000/user/myusername";
final FileSystem fs = FileSystem.get (URI.create (uri), conf);
然后我们得到以下异常
Exception in thread "main" org.apache.hadoop.ipc.RemoteException: Server IPC version 9 cannot communicate with client version 4
上述异常表明客户端API和远程Hadoop群集不兼容,但无法获得用于标识远程Hadoop群集版本的绝对方法。
关于hadoop - 识别远程Hadoop集群的版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23128686/