Cloudera VM に R で Hadoop を使用しようとしています。rhdfs ライブラリを R にロードして問題なく動作しますが、 hdfs.init() を実行しようとすると、これが機能せず、次のエラーが表示されます。
> hdfs.init()
14/12/10 05:48:20 ERROR security.UserGroupInformation: Unable to find JAAS classes:com.sun.security.auth.UnixPrincipal
not found in gnu.gcj.runtime.SystemClassLoader{urls=[file:/home/cloudera/R/x86_64-redhat-linux-gnu-library/3.1/rJava/java/boot/],
parent=gnu.gcj.runtime.ExtensionClassLoader{urls=[], parent=null}}
14/12/10 05:48:20 WARN util.NativeCodeLoader: Unable to load native-hadoop library for
your platform... using builtin-java classes where applicable
Error in .jcall("RJavaTools", "Ljava/lang/Object;", "invokeMethod", cl, :
java.io.IOException: failure to login
これは私のコードです:
Sys.setenv("HADOOP_CMD"="/usr/lib/hadoop/bin/hadoop") Sys.setenv("HADOOP_STREAMING"="/usr/lib/hadoop-0.20-mapreduce/contrib/streaming/hadoop-streaming-2.5 .0-mr1-cdh5.2.0.jar") Sys.setenv("HADOOP_HOME"="/usr/lib/hadoop") Sys.setenv("HADOOP_CONF_DIR"="/etc/hadoop/conf")
ライブラリ (rhdfs) 必要なパッケージを読み込んでいます: rJava
HADOOP_CMD=/usr/lib/hadoop/bin/hadoop
必ず hdfs.init() hdfs.init() 14/12/11 05:55:21 ERROR security.UserGroupInformation: Unable to find JAAS classes:com.sun.security.auth.UnixPrincipal not found in gnu.gcj を実行してください.runtime.SystemClassLoader{urls=[ファイル:/home/cloudera/R/x86_64-redhat-linux-gnu-library/3.1/rJava/java/boot/], 親=gnu.gcj.runtime.ExtensionClassLoader{urls=[ ]、parent=null}} 14/12/11 05:55:21 WARN util.NativeCodeLoader: お使いのプラットフォームのネイティブ Hadoop ライブラリを読み込めません... .jcall("RJavaTools" でエラーが発生した場合は、組み込みの Java クラスを使用します、「Ljava/lang/Object;」、「invokeMethod」、cl、: java.io.IOException: ログインに失敗しました