2016-09-18 5 views
0

Ubuntu 16.04でHadoop 2.7.2を設定しようとしています。 私はHadoopシングルノードクラスタを完成させました。私は現在、メタデータのためにDerbyでHiveを試しています。ダービー接続例外でハイブサービスが失敗する

私は、java.policyのlocalhostポートに対して適切な権限を与えていると思います。私はHadoopサービスを開始しました。 しかし、Hive $ HIVE_HOME/bin/hiveを実行しようとすると、例外トレースに続いて失敗します。 何か助けていただければ幸いです。

SLF4J: Class path contains multiple SLF4J bindings. 
SLF4J: Found binding in [jar:file:/usr/lib/hive/lib/hive-jdbc-2.0.0-standalone.jar!/org/slf4j/impl/StaticLoggerBinder.class] 
SLF4J: Found binding in [jar:file:/usr/lib/hive/lib/log4j-slf4j-impl-2.4.1.jar!/org/slf4j/impl/StaticLoggerBinder.class] 
SLF4J: Found binding in [jar:file:/usr/local/hadoop/share/hadoop/common/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class] 
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation. 
SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory] 

Logging initialized using configuration in jar:file:/usr/lib/hive/lib/hive-common-2.0.0.jar!/hive-log4j2.properties 
Exception in thread "main" java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient 
    at org.apache.hadoop.hive.metastore.MetaStoreUtils.newInstance(MetaStoreUtils.java:1550) 
    at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.<init>(RetryingMetaStoreClient.java:86) 
    at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.getProxy(RetryingMetaStoreClient.java:132) 
    at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.getProxy(RetryingMetaStoreClient.java:104) 
    at org.apache.hadoop.hive.ql.metadata.Hive.createMetaStoreClient(Hive.java:3080) 
    at org.apache.hadoop.hive.ql.metadata.Hive.getMSC(Hive.java:3108) 
    at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:521) 
    at org.apache.hadoop.hive.ql.session.SessionState.beginStart(SessionState.java:494) 
    at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:709) 
    at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:645) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:498) 
    at org.apache.hadoop.util.RunJar.run(RunJar.java:221) 
    at org.apache.hadoop.util.RunJar.main(RunJar.java:136) 
Caused by: java.lang.reflect.InvocationTargetException 
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) 
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) 
    at java.lang.reflect.Constructor.newInstance(Constructor.java:423) 
    at org.apache.hadoop.hive.metastore.MetaStoreUtils.newInstance(MetaStoreUtils.java:1548) 
    ... 15 more 
Caused by: javax.jdo.JDOFatalDataStoreException: Unable to open a test connection to the given database. JDBC url = jdbc:derby://localhost:1527/metastore_db;create=true, username = APP. Terminating connection pool (set lazyInit to true if you expect to start your database after your app). Original Exception: ------ 
java.sql.SQLNonTransientConnectionException: java.net.ConnectException : Error connecting to server localhost on port 1527 with message Connection refused. 
    at org.apache.derby.client.am.SQLExceptionFactory40.getSQLException(Unknown Source) 
    at org.apache.derby.client.am.SqlException.getSQLException(Unknown Source) 
    at org.apache.derby.jdbc.ClientDriver.connect(Unknown Source) 
    at java.sql.DriverManager.getConnection(DriverManager.java:664) 
    at java.sql.DriverManager.getConnection(DriverManager.java:208) 
    at com.jolbox.bonecp.BoneCP.obtainRawInternalConnection(BoneCP.java:361) 
    at com.jolbox.bonecp.BoneCP.<init>(BoneCP.java:416) 
    at com.jolbox.bonecp.BoneCPDataSource.getConnection(BoneCPDataSource.java:120) 
    at org.datanucleus.store.rdbms.ConnectionFactoryImpl$ManagedConnectionImpl.getConnection(ConnectionFactoryImpl.java:483) 
    at org.datanucleus.store.rdbms.RDBMSStoreManager.<init>(RDBMSStoreManager.java:296) 
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) 
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) 
    at java.lang.reflect.Constructor.newInstance(Constructor.java:423) 
    at org.datanucleus.plugin.NonManagedPluginRegistry.createExecutableExtension(NonManagedPluginRegistry.java:606) 
    at org.datanucleus.plugin.PluginManager.createExecutableExtension(PluginManager.java:301) 
    at org.datanucleus.NucleusContextHelper.createStoreManagerForProperties(NucleusContextHelper.java:133) 
    at org.datanucleus.PersistenceNucleusContextImpl.initialise(PersistenceNucleusContextImpl.java:420) 
    at org.datanucleus.api.jdo.JDOPersistenceManagerFactory.freezeConfiguration(JDOPersistenceManagerFactory.java:821) 
    at org.datanucleus.api.jdo.JDOPersistenceManagerFactory.createPersistenceManagerFactory(JDOPersistenceManagerFactory.java:338) 
    at org.datanucleus.api.jdo.JDOPersistenceManagerFactory.getPersistenceManagerFactory(JDOPersistenceManagerFactory.java:217) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:498) 
    at javax.jdo.JDOHelper$16.run(JDOHelper.java:1965) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at javax.jdo.JDOHelper.invoke(JDOHelper.java:1960) 
    at javax.jdo.JDOHelper.invokeGetPersistenceManagerFactoryOnImplementation(JDOHelper.java:1166) 
    at javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:808) 
    at javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:701) 
    at org.apache.hadoop.hive.metastore.ObjectStore.getPMF(ObjectStore.java:397) 
    at org.apache.hadoop.hive.metastore.ObjectStore.getPersistenceManager(ObjectStore.java:426) 
    at org.apache.hadoop.hive.metastore.ObjectStore.initialize(ObjectStore.java:320) 
    at org.apache.hadoop.hive.metastore.ObjectStore.setConf(ObjectStore.java:287) 
    at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:76) 
    at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:136) 
    at org.apache.hadoop.hive.metastore.RawStoreProxy.<init>(RawStoreProxy.java:55) 
    at org.apache.hadoop.hive.metastore.RawStoreProxy.getProxy(RawStoreProxy.java:64) 
    at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.newRawStore(HiveMetaStore.java:516) 
    at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.getMS(HiveMetaStore.java:481) 
    at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.createDefaultDB(HiveMetaStore.java:547) 
    at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.init(HiveMetaStore.java:370) 
    at org.apache.hadoop.hive.metastore.RetryingHMSHandler.<init>(RetryingHMSHandler.java:78) 
    at org.apache.hadoop.hive.metastore.RetryingHMSHandler.getProxy(RetryingHMSHandler.java:84) 
    at org.apache.hadoop.hive.metastore.HiveMetaStore.newRetryingHMSHandler(HiveMetaStore.java:5749) 
    at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.<init>(HiveMetaStoreClient.java:219) 
    at org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient.<init>(SessionHiveMetaStoreClient.java:67) 
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) 
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) 
    at java.lang.reflect.Constructor.newInstance(Constructor.java:423) 
    at org.apache.hadoop.hive.metastore.MetaStoreUtils.newInstance(MetaStoreUtils.java:1548) 
    at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.<init>(RetryingMetaStoreClient.java:86) 
    at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.getProxy(RetryingMetaStoreClient.java:132) 
    at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.getProxy(RetryingMetaStoreClient.java:104) 
    at org.apache.hadoop.hive.ql.metadata.Hive.createMetaStoreClient(Hive.java:3080) 
    at org.apache.hadoop.hive.ql.metadata.Hive.getMSC(Hive.java:3108) 
    at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:521) 
    at org.apache.hadoop.hive.ql.session.SessionState.beginStart(SessionState.java:494) 
    at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:709) 
    at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:645) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:498) 
    at org.apache.hadoop.util.RunJar.run(RunJar.java:221) 
    at org.apache.hadoop.util.RunJar.main(RunJar.java:136) 
Caused by: org.apache.derby.client.am.DisconnectException: java.net.ConnectException : Error connecting to server localhost on port 1527 with message Connection refused. 
    at org.apache.derby.client.net.NetAgent.<init>(Unknown Source) 
    at org.apache.derby.client.net.NetConnection.newAgent_(Unknown Source) 
    at org.apache.derby.client.am.Connection.<init>(Unknown Source) 
    at org.apache.derby.client.net.NetConnection.<init>(Unknown Source) 
    at org.apache.derby.client.net.NetConnection40.<init>(Unknown Source) 
    at org.apache.derby.client.net.ClientJDBCObjectFactoryImpl40.newNetConnection(Unknown Source) 
    ... 66 more 
Caused by: java.net.ConnectException: Connection refused 
    at java.net.PlainSocketImpl.socketConnect(Native Method) 
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) 
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) 
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) 
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) 
    at java.net.Socket.connect(Socket.java:589) 
    at java.net.Socket.connect(Socket.java:538) 
    at java.net.Socket.<init>(Socket.java:434) 
    at java.net.Socket.<init>(Socket.java:211) 
    at javax.net.DefaultSocketFactory.createSocket(SocketFactory.java:271) 
    at org.apache.derby.client.net.OpenSocketAction.run(Unknown Source) 
    at java.security.AccessController.doPrivileged(Native Method) 
    ... 72 more 
------ 

NestedThrowables: 
java.sql.SQLException: Unable to open a test connection to the given database. JDBC url = jdbc:derby://localhost:1527/metastore_db;create=true, username = APP. Terminating connection pool (set lazyInit to true if you expect to start your database after your app). Original Exception: ------ 
java.sql.SQLNonTransientConnectionException: java.net.ConnectException : Error connecting to server localhost on port 1527 with message Connection refused. 
    at org.apache.derby.client.am.SQLExceptionFactory40.getSQLException(Unknown Source) 
    at org.apache.derby.client.am.SqlException.getSQLException(Unknown Source) 
    at org.apache.derby.jdbc.ClientDriver.connect(Unknown Source) 
    at java.sql.DriverManager.getConnection(DriverManager.java:664) 
    at java.sql.DriverManager.getConnection(DriverManager.java:208) 
    at com.jolbox.bonecp.BoneCP.obtainRawInternalConnection(BoneCP.java:361) 
    at com.jolbox.bonecp.BoneCP.<init>(BoneCP.java:416) 
    at com.jolbox.bonecp.BoneCPDataSource.getConnection(BoneCPDataSource.java:120) 
    at org.datanucleus.store.rdbms.ConnectionFactoryImpl$ManagedConnectionImpl.getConnection(ConnectionFactoryImpl.java:483) 
    at org.datanucleus.store.rdbms.RDBMSStoreManager.<init>(RDBMSStoreManager.java:296) 

Caused by: java.net.ConnectException: Connection refused 
    at java.net.PlainSocketImpl.socketConnect(Native Method) 
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) 
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) 
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) 
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) 
    at java.net.Socket.connect(Socket.java:589) 
    at java.net.Socket.connect(Socket.java:538) 
    at java.net.Socket.<init>(Socket.java:434) 
    at java.net.Socket.<init>(Socket.java:211) 
    at javax.net.DefaultSocketFactory.createSocket(SocketFactory.java:271) 
    at org.apache.derby.client.net.OpenSocketAction.run(Unknown Source) 
    at java.security.AccessController.doPrivileged(Native Method) 
    ... 72 more 
+0

問題の説明を明確にしました。 – Prune

答えて

0

あなたのUbuntuのサーバーはポート1527で接続を拒否しているいずれかのダービー・サーバが実行されていないか、接続をブロックするファイアウォールルールを持っています。 lsof -i TCP:1527を実行して、ポートでプロセスが実行されているかどうかを確認します。 telnet localhost 1527でポートにtelnet接続することもできます。

ポートでプロセスが表示される場合は、ファイアウォールルールによって接続がブロックされている可能性があります。 PIDを終了し、ハイブを再起動することができます。

derby/hiveサーバー・ログを調べて、Derbyサーバーが開始していない理由をデバッグすることから始めます。これらの種類の条件は、通常、Linuxファイルパスやログなどのアクセス許可の問題によって発生します。

これをサンドボックス環境以上に使用する予定の場合は、ハイブメタデータとしてmysqlを使用する方法についていくつか調査したいことがあります。

+0

Thanks Mark、私もハイブメタデータにmysqlを使用することを考えていました –

関連する問題