0

ビッグデータには Google Cloud Bigtable を使用しています。MapReduce ジョブを実行しているときに、jar を組み立てて実行すると、次のエラーが発生します。

AM Container for appattempt_1451577928704_0050_000002 が exitCode: 1 で終了したため、アプリケーション application_1451577928704_0050 が 2 回失敗しまし:8088/cluster/app/application_1451577928704_0050次に、各試行のログへのリンクをクリックします。診断: コンテナー起動からの例外。コンテナー ID: container_e02_1451577928704_0050_02_000001 終了コード: 1 スタック トレース: ExitCodeException exitCode=1: org.apache.hadoop.util.Shell.runCommand(Shell.java:545) で org.apache.hadoop.util.Shell.run(Shell. java:456) org.apache.hadoop.util.Shell$ShellCommandExecutor.execute(Shell.java:722) で org.apache.hadoop.yarn.server.nodemanager.DefaultContainerExecutor.launchContainer(DefaultContainerExecutor.java:211) で org org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch.call(ContainerLaunch.java: 82) java.util.concurrent.FutureTask で。run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread .run(Thread.java:745) コンテナがゼロ以外の終了コード 1 で終了しました。この試行に失敗しました。アプリケーションの失敗。

ワーカー ノードのログを確認するためにログインすると、次のエラーが表示されました。

2016-02-15 02:59:54,106 INFO [main] org.apache.hadoop.mapreduce.v2.app.MRAppMaster: アプリケーション appattempt_1451577928704_0050_000001 の MRAppMaster を作成しました 2016-02-15 02:59:54,294 WARN [main] org.apache .hadoop.util.NativeCodeLoader: プラットフォームのネイティブ Hadoop ライブラリを読み込めません... 該当する場合は組み込み Java クラスを使用します 2016-02-15 02:59:54,319 INFO [main] org.apache.hadoop.mapreduce.v2 .app.MRAppMaster: トークンで実行: 2016-02-15 02:59:54,319 INFO [メイン] org.apache.hadoop.mapreduce.v2.app.MRAppMaster: 種類: YARN_AM_RM_TOKEN、サービス: 、Ident: (appAttemptId { application_id { id: 50 cluster_timestamp: 1451577928704} 試行 ID: 1 } keyId: -*****) 2016-02-15 02:59:54,424 情報 [メイン] org.apache.hadoop.mapreduce.v2.app.MRAppMaster: mapred newApiCommitter を使用します。2016-02-15 02:59:54,755 警告 [メイン] 組織。apache.hadoop.hdfs.shortcircuit.DomainSocketFactory: libhadoop をロードできないため、短絡ローカル読み取り機能を使用できません。2016-02-15 02:59:54,85​​5 INFO [main] org.apache.hadoop.mapreduce.v2.app.MRAppMaster: OutputCommitter が構成 null に設定されました 2016-02-15 02:59:54,911 INFO [main] org.apache .hadoop.service.AbstractService: サービス org.apache.hadoop.mapreduce.v2.app.MRAppMaster が INITED 状態で失敗しました。原因: org.apache.hadoop.yarn.exceptions.YarnRuntimeException: java.lang.ClassCastException: org.apache.xerces.dom.DeferredElementNSImpl は org.w3c.dom.Text org.apache.hadoop.yarn.exceptions にキャストできません。 YarnRuntimeException: java.lang.ClassCastException: org.apache.xerces.dom.DeferredElementNSImpl を org.apache.hadoop.mapreduce.v2.app.MRAppMaster$1.call(MRAppMaster.


古いjarを試してみましたが、まったく問題なく動作していますが、新しいjarが機能しない理由がわかりません-何も変更しませんでした.

お知らせ下さい?

ありがとう!

更新 1: 詳細は次のとおりです。dataproc を使用してクラスタをセットアップしました。最新バージョンを使用しています。ライブラリの依存関係は次のとおりです。

val BigtableHbase = "com.google.cloud.bigtable" % "bigtable-hbase-1.1" % "0.2.2" val BigtableHbaseMapreduce = "com.google.cloud.bigtable" % "bigtable-hbase-mapreduce" % "0.2. 2" val CommonsCli = "commons-cli" % "commons-cli" % "1.2" val HadoopCommon = "org.apache.hadoop" % "hadoop-common" % "2.7.1" val HadoopMapreduceClientApp = "org.apache. hadoop" % "hadoop-mapreduce-client-app" % "2.7.1" val HbaseCommon = "org.apache.hbase" % "hbase-common" % "1.1.2" val HbaseProtocol = "org.apache.hbase" % "hbase-protocol" % "1.1.2" val HbaseClient = "org.apache.hbase" % "hbase-client" % "1.1.2"val HbaseServer = "org.apache.hbase" % "hbase-server" % "1.1.2" val HbaseAnnotations = "org.apache.hbase" % "hbase-annotations" % "1.1.2"

libraryDependencies += BigtableHbase libraryDependencies += BigtableHbaseMapreduce libraryDependencies += CommonsCli libraryDependencies += HadoopCommon libraryDependencies += HadoopMapreduceClientApp libraryDependencies += HbaseCommon libraryDependencies += HbaseProtocol libraryDependencies += HbaseClient libraryDependencies += HbaseServer libraryDependencies += HbaseAnnotations

Java のバージョン:

openjdk バージョン "1.8.0_66-internal" OpenJDK ランタイム環境 (ビルド 1.8.0_66-internal-b17) OpenJDK 64 ビット サーバー VM (ビルド 25.66-b17、混合モード)

Alpn バージョン: alpn-boot-8.1.3.v20150130

hbase バージョン:

2016-02-15 20:45:42,050 情報 [メイン] util.VersionInfo: HBase 1.1.2 2016-02-15 20:45:42,051 情報 [メイン] util.VersionInfo: ソース コード リポジトリ ファイル:///mnt/ ram/bigtop/bigtop/output/ hbase/hbase-1.1.2 リビジョン=不明 2016-02-15 20:45:42,051 INFO [main] util.VersionInfo: 2015 年 11 月 10 日火曜日 19:09:17 UTC で bigtop によってコンパイルされました2016-02-15 20:45:42,051 情報 [メイン] util.VersionInfo: チェックサム付きソースから 42e8a1890c700d37485c69a44a3

Hadoop バージョン:

Hadoop 2.7.1 Subversion https://bigdataoss-internal.googlesource.com/third_party/apache/bigtop -r 2a194d4d838b79460c3ceb892f3c94 44218ba970 Compiled by bigtop on 2015-11-10T18:38Z Compiled with protoc 2.5.0 From source with checksum fc0a1a23fc1868e4d5ee7fa2b28a58a This command /usr/lib/hadoop/hadoop-common-2.7.1.jar を使用して実行されました

4

2 に答える 2

0

bigtable クライアント jar の新しいバージョンには、gRPC jar の新しいバージョンが含まれています。新しいバージョンの gRPC jar は、新しいバージョンの alpn-boot または OpenSSL に依存しています。bigtable jar の新しいバージョンに加えて、alpn-boot jar の新しいバージョンが必要になる場合があります。残念ながら、Jetty チームは、bdutil が依存する Java7 用の新しい alpn-boot jar を作成していません。

Google では、bdutil から Google Cloud Hadoop 管理の新しいバージョンである dataproc への移行に積極的に取り組んでいます。Dataproc は Java 8 を使用しており、bdutil と同じ問題はありません。解決しなければならない問題はまだあります。

詳細については、次を参照してください。

https://cloud.google.com/dataproc/examples/cloud-bigtable-example および https://github.com/grpc/grpc-java/blob/master/SECURITY.md

于 2016-02-15T17:16:23.920 に答える