Несоответствие версий spark-ec2 и Tachyon hadoop

Я пытаюсь использовать spark-ec2 для запуска кластера ec2 с hadoop версии 2.x, поэтому я попытался:

./spark-ec2 -k spark -i ~/.ssh/spark.pem -s 1 --hadoop-major-version=2 launch my-spark-cluster

затем я обнаружил, что в процессе установки тахиона произошла ошибка:

Setting up tachyon
RSYNC'ing /root/tachyon to slaves...
ec2-52-1-147-16.compute-1.amazonaws.com
ec2-52-1-147-16.compute-1.amazonaws.com: Formatting Tachyon Worker @ ip-172-31-21-86.ec2.internal
ec2-52-1-147-16.compute-1.amazonaws.com: Removing local data under folder: /mnt/ramdisk/tachyonworker/
Formatting Tachyon Master @ ec2-52-1-14-186.compute-1.amazonaws.com
Formatting JOURNAL_FOLDER: /root/tachyon/libexec/../journal/
Exception in thread "main" java.lang.RuntimeException: org.apache.hadoop.ipc.RemoteException: Server IPC version 7 cannot communicate with client version 4
    at tachyon.util.CommonUtils.runtimeException(CommonUtils.java:246)
    at tachyon.UnderFileSystemHdfs.<init>(UnderFileSystemHdfs.java:73)
    at tachyon.UnderFileSystemHdfs.getClient(UnderFileSystemHdfs.java:53)
    at tachyon.UnderFileSystem.get(UnderFileSystem.java:53)
    at tachyon.Format.main(Format.java:54)
Caused by: org.apache.hadoop.ipc.RemoteException: Server IPC version 7 cannot communicate with client version 4
    at org.apache.hadoop.ipc.Client.call(Client.java:1070)
    at org.apache.hadoop.ipc.RPC$Invoker.invoke(RPC.java:225)
    at com.sun.proxy.$Proxy1.getProtocolVersion(Unknown Source)
    at org.apache.hadoop.ipc.RPC.getProxy(RPC.java:396)
    at org.apache.hadoop.ipc.RPC.getProxy(RPC.java:379)
    at org.apache.hadoop.hdfs.DFSClient.createRPCNamenode(DFSClient.java:119)
    at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:238)
    at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:203)
    at org.apache.hadoop.hdfs.DistributedFileSystem.initialize(DistributedFileSystem.java:89)
    at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:1386)
    at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:66)
    at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:1404)
    at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:254)
    at org.apache.hadoop.fs.Path.getFileSystem(Path.java:187)
    at tachyon.UnderFileSystemHdfs.<init>(UnderFileSystemHdfs.java:69)
    ... 3 more

Я искал некоторый связанный вопрос, и кажется, что Server IPC version 7 cannot communicate with client version 4 означает, что сервер использует hadoop 2.x, а клиент использует hadoop 1.x. Тем не менее, я построил свою искру с hadoop 2.4.0, и я также попробовал официальную предварительно собранную версию spark с hadoop 2.4.0 и более поздними версиями, обе приводили к одной и той же ошибке.

Кстати, версия hadoop создана путем установки --hadoop-major-version=2 является Hadoop 2.0.0-cdh4.2.0, Это проблема? Но я попытался использовать 2.4 или 2.4.0 здесь, ни один из них не признан верной версией hadoop

0 ответов

Другие вопросы по тегам