1

私はApache NiFiをスタンドアロンで動作させています。しかし、私がに設定しようとすると、Apache NiFiがハイブまたはHDFSにアクセスするようになります。 Kerberized Cloudera Hadoop Cluster。私は問題を抱えています。Kerberized Hadoop ClusterにApache NiFiを設定する方法

誰かがここで(ケルベロスで)HDFS /ハイブ/ HBaseの設定については、ドキュメントに

私を導くことができる、私はnifi.properties

# kerberos # 
nifi.kerberos.krb5.file=/etc/krb5.conf 
[email protected] 
nifi.kerberos.keytab.location=/uhome/pseeram/learning/pseeram.keytab 
nifi.kerberos.authentication.expiration=10 hours 

enter image description here

に与えた構成です私は好きなような様々なリンクを参照しましたが、それらのどれも役に立ちません。 は(下記リンクは、それがNiFi 0.7.1バージョンに問題があったので、私は同じ苦い経験を​​しましたNiFi 1.1.0バージョンを試してみました) はここhttps://community.hortonworks.com/questions/62014/nifi-hive-connection-pool-error.html https://community.hortonworks.com/articles/4103/hiveserver2-jdbc-connection-url-examples.html

は、私は、ログを取得していますエラーです:

ERROR [Timer-Driven Process Thread-7] o.a.nifi.processors.hive.SelectHiveQL 
org.apache.nifi.processor.exception.ProcessException: org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Could not open client transport with JDBC Uri: jdbc:hive2://ddas1106a:10000/innovate: Peer indicated failure: Unsupported mechanism type PLAIN) 
    at org.apache.nifi.dbcp.hive.HiveConnectionPool.getConnection(HiveConnectionPool.java:292) ~[nifi-hive-processors-1.1.0.jar:1.1.0] 
    at sun.reflect.GeneratedMethodAccessor191.invoke(Unknown Source) ~[na:na] 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_51] 
    at java.lang.reflect.Method.invoke(Method.java:497) ~[na:1.8.0_51] 
    at org.apache.nifi.controller.service.StandardControllerServiceProvider$1.invoke(StandardControllerServiceProvider.java:177) ~[na:na] 
    at com.sun.proxy.$Proxy83.getConnection(Unknown Source) ~[na:na] 
    at org.apache.nifi.processors.hive.SelectHiveQL.onTrigger(SelectHiveQL.java:158) ~[nifi-hive-processors-1.1.0.jar:1.1.0] 
    at org.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcessor.java:27) [nifi-api-1.1.0.jar:1.1.0] 
    at org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1099) [nifi-framework-core-1.1.0.jar:1.1.0] 
    at org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:136) [nifi-framework-core-1.1.0.jar:1.1.0] 
    at org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:47) [nifi-framework-core-1.1.0.jar:1.1.0] 
    at org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:132) [nifi-framework-core-1.1.0.jar:1.1.0] 
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [na:1.8.0_51] 
    at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) [na:1.8.0_51] 
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) [na:1.8.0_51] 
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) [na:1.8.0_51] 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_51] 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_51] 
    at java.lang.Thread.run(Thread.java:745) [na:1.8.0_51] 
Caused by: org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Could not open client transport with JDBC Uri: jdbc:hive2://ddas1106a:10000/innovate: Peer indicated failure: Unsupported mechanism type PLAIN) 
    at org.apache.commons.dbcp.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:1549) ~[commons-dbcp-1.4.jar:1.4] 
    at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1388) ~[commons-dbcp-1.4.jar:1.4] 
    at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044) ~[commons-dbcp-1.4.jar:1.4] 
    at org.apache.nifi.dbcp.hive.HiveConnectionPool.getConnection(HiveConnectionPool.java:288) ~[nifi-hive-processors-1.1.0.jar:1.1.0] 
    ... 18 common frames omitted 
Caused by: java.sql.SQLException: Could not open client transport with JDBC Uri: jdbc:hive2://ddas1106a:10000/innovate: Peer indicated failure: Unsupported mechanism type PLAIN 
    at org.apache.hive.jdbc.HiveConnection.openTransport(HiveConnection.java:231) ~[hive-jdbc-1.2.1.jar:1.2.1] 
    at org.apache.hive.jdbc.HiveConnection.<init>(HiveConnection.java:176) ~[hive-jdbc-1.2.1.jar:1.2.1] 
    at org.apache.hive.jdbc.HiveDriver.connect(HiveDriver.java:105) ~[hive-jdbc-1.2.1.jar:1.2.1] 
    at org.apache.commons.dbcp.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:38) ~[commons-dbcp-1.4.jar:1.4] 
    at org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:582) ~[commons-dbcp-1.4.jar:1.4] 
    at org.apache.commons.dbcp.BasicDataSource.validateConnectionFactory(BasicDataSource.java:1556) ~[commons-dbcp-1.4.jar:1.4] 
    at org.apache.commons.dbcp.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:1545) ~[commons-dbcp-1.4.jar:1.4] 
    ... 21 common frames omitted 
Caused by: org.apache.thrift.transport.TTransportException: Peer indicated failure: Unsupported mechanism type PLAIN 
    at org.apache.thrift.transport.TSaslTransport.receiveSaslMessage(TSaslTransport.java:199) ~[hive-exec-1.2.1.jar:1.2.1] 
    at org.apache.thrift.transport.TSaslTransport.open(TSaslTransport.java:307) ~[hive-exec-1.2.1.jar:1.2.1] 
    at org.apache.thrift.transport.TSaslClientTransport.open(TSaslClientTransport.java:37) ~[hive-exec-1.2.1.jar:1.2.1] 
    at org.apache.hive.jdbc.HiveConnection.openTransport(HiveConnection.java:204) ~[hive-jdbc-1.2.1.jar:1.2.1] 
    ... 27 common frames omitted 


WARN [NiFi Web Server-29] o.a.nifi.dbcp.hive.HiveConnectionPool HiveConnectionPool[id=278beb67-0159-1000-cffa-8c8534c285c8] Configuration does not have security enabled, Keytab and Principal will be ignored 
+2

これらのプロパティは、自分のNiFiクラスタ**をKerberizeしたいのに、HDFSやHive *のようなKerberos化された外部リソースにアクセスすることとは関係ありません(ただし、 'krb5.conf'パスを除くグローバル)*。 –

+1

HDFSについては、https://community.hortonworks.com/questions/456/i-have-nifi-setup-on-my-cluster-but-it-only-works.html –

+1

を参照してください。ハイブについては、ただ読んでくださいドキュメントは上から下へ** https://nifi.apache.org/docs/nifi-docs/components/org.apache.nifi.dbcp.hive.HiveConnectionPool/ –

答えて

0

nifi.propertiesファイルで追加した内容は、nifiクラスタのKerberos化に役立ちます。 kerberized hadoopクラスタにアクセスするには、NiFiのHDFSプロセッサに適切な設定ファイルとキータブを用意する必要があります。例えば

、あなたはHadoopクラスタへの書き込みをputHDFSを使用している場合:

Hadoopの設定リソース:あなたの校長へ:コア-site.xmlのとHDFS-site.xmlの

Kerberos主体へのパスアクセスhadoopクラスタ

kerberos keytab:hadoopクラスタのkrb5.confを使用して生成されたkeytabへのパス。 nifi.propertiesのnifi.kerberos.krb5.fileは、適切なkrb5.confファイルを指さなければなりません。

NiFiがケルベロイドハープクラスターの内部にあるかどうかにかかわらず、この投稿は役に立つかもしれません。 https://community.hortonworks.com/questions/84659/how-to-use-apache-nifi-on-kerberized-hdp-cluster-n.html

関連する問題