2016-04-02 9 views
0

Hbaseで作成されたテーブルをHadoop/Hbaseサンプラーで接続してスキャンしようとしていますが、次のメッセージでテストが失敗します。JMeter HbaseスキャンサンプラーがClassNotFoundException例外で失敗する

すべてのサービスが実行され、適切なポートをリッスンしているHadoop/Hbaseの設定を確認しました。 (飼い猫が走って2181年に聞いています)。

2016/04/02 15:44:04 ERROR - jmeter.threads.JMeterThread: Test failed! java.lang.NoClassDefFoundError: org/apache/commons/configuration/Configuration 
at org.apache.hadoop.metrics2.lib.DefaultMetricsSystem.<init>(DefaultMetricsSystem.java:37) 
at org.apache.hadoop.metrics2.lib.DefaultMetricsSystem.<clinit>(DefaultMetricsSystem.java:34) 
at org.apache.hadoop.security.UgiInstrumentation.create(UgiInstrumentation.java:51) 
at org.apache.hadoop.security.UserGroupInformation.initialize(UserGroupInformation.java:217) 
at org.apache.hadoop.security.UserGroupInformation.ensureInitialized(UserGroupInformation.java:185) 
at org.apache.hadoop.security.UserGroupInformation.isSecurityEnabled(UserGroupInformation.java:237) 
at org.apache.hadoop.security.KerberosName.<clinit>(KerberosName.java:79) 
at org.apache.hadoop.security.UserGroupInformation.initialize(UserGroupInformation.java:210) 
at org.apache.hadoop.security.UserGroupInformation.ensureInitialized(UserGroupInformation.java:185) 
at org.apache.hadoop.security.UserGroupInformation.isSecurityEnabled(UserGroupInformation.java:237) 
at org.apache.hadoop.security.UserGroupInformation.getLoginUser(UserGroupInformation.java:482) 
at org.apache.hadoop.security.UserGroupInformation.getCurrentUser(UserGroupInformation.java:468) 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
at java.lang.reflect.Method.invoke(Unknown Source) 
at org.apache.hadoop.hbase.util.Methods.call(Methods.java:37) 
at org.apache.hadoop.hbase.security.User.call(User.java:590) 
at org.apache.hadoop.hbase.security.User.callStatic(User.java:580) 
at org.apache.hadoop.hbase.security.User.access$400(User.java:51) 
at org.apache.hadoop.hbase.security.User$SecureHadoopUser.<init>(User.java:397) 
at org.apache.hadoop.hbase.security.User$SecureHadoopUser.<init>(User.java:392) 
at org.apache.hadoop.hbase.security.User.getCurrent(User.java:140) 
at org.apache.hadoop.hbase.client.HConnectionManager$HConnectionKey.<init>(HConnectionManager.java:435) 
at org.apache.hadoop.hbase.client.HConnectionManager.getConnection(HConnectionManager.java:180) 
at org.apache.hadoop.hbase.client.HTable.<init>(HTable.java:155) 
at org.apache.hadoop.hbase.client.HTableFactory.createHTableInterface(HTableFactory.java:36) 
at org.apache.hadoop.hbase.client.HTablePool.createHTable(HTablePool.java:265) 
at org.apache.hadoop.hbase.client.HTablePool.findOrCreateTable(HTablePool.java:195) 
at org.apache.hadoop.hbase.client.HTablePool.getTable(HTablePool.java:174) 
at com.atlantbh.jmeter.plugins.hbasecomponents.config.HBaseConnectionVariable.getTable(HBaseConnectionVariable.java:43) 
at com.atlantbh.jmeter.plugins.hbasecomponents.samplers.HBaseScanSampler.sample(HBaseScanSampler.java:94) 
at org.apache.jmeter.threads.JMeterThread.process_sampler(JMeterThread.java:434) 
at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:261) 
at java.lang.Thread.run(Unknown Source) 
Caused by: java.lang.ClassNotFoundException: org.apache.commons.configuration.Configuration 
at java.net.URLClassLoader.findClass(Unknown Source) 
at java.lang.ClassLoader.loadClass(Unknown Source) 
at java.lang.ClassLoader.loadClass(Unknown Source) 
... 35 more** 

答えて

1

あなたのJMeter側に問題があります。エラーメッセージが述べたよう:にjava.lang.ClassNotFoundException:

をによって引き起こさorg.apache.commons.configuration.Configuration HBaseのスキャンサンプラーがApache Commons Configurationライブラリが必要であることを意味するが、Hadoopのように見えます

プラグインはzip packageには含まれていません。もし彼らがそれを修正するつもりなら彼らのforumで尋ねてみてください。

  1. Downloadサイトからcommons-configuration2-2.0-bin.zipそれを解凍し
  2. コピーcommons-configuration2-2.0.jar
  3. .../apache-jmeter/libに再起動のJMeter :今、することができます回避策としてのために

+0

ご返信ありがとうございます。コモン構成をコピーした後でも同じ例外が発生しました。助言がありますか?。その間、私はJMeter-Pluginsグループとのトレイルを開始しました。 –

+0

そのサイトで利用可能な両方のバージョンを試しましたか(1.10と2.0)?そのパッケージのどのバージョンがhadoopで使用されているのかわからないので、両方を試してみてください(つまり、両方のバージョンを同時にlibに入れないでください)。 –

+0

Kiril、ありがとう。あなたの提案はうまくいきました!1.10バージョンをコピーした後、コモンズ設定例外は報告されませんでした。再度、感謝します。 –

関連する問題