大佬教程收集整理的这篇文章主要介绍了node.js和npm jdbc包问题与kerberized apache phoenix,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
Klist命令:
klist -k -t -e /etc/security/keytabs/kafka.headless.keytab Keytab name: FILE:/etc/security/keytabs/kafka.headless.keytab KVNO timestamp Principal ---- ----------------- -------------------------------------------------------- 1 09/30/16 10:10:27 kafka@REALm.LAN (aes256-cts-hmac-sha1-96)
码:
var express = require('express'); var app = express(); var server = require('http').Server(app); var https =require('http'); var io = require('socket.io')(server); var kafka = require('kafka-node'); var Cassandra = require('Cassandra-driver'); var JDBC = require('jdbc'); var jinst = require('jdbc/lib/jinst'); var asyncjs = require('async'); //var Pool = require('jdbc/lib/pool'); //var nodeunit = require('nodeunit'); //var _ = require('lodash'); var _ = require('underscore'); //ar cors = require("cors"); app.use(express.static(__dirname + '/view')); server.listen(3000); app.use('/bower_components',express.static(__dirname + '/bower_components')); app.get('/',function (req,res,next) { res.sendFile(__dirname + '/index.html');}); if (!jinst.isJvmCreated()) { jinst.addoption("-Xrs"); jinst.setupClasspath(['/etc/krb5.conf','/usr/hdp/2.4.2.0-258/hadoop/conf','/etc/hbase/conf/core-site.xml','/etc/hbase/conf/hbase-site.xml','/etc/hbase/conf/hbase-policy.xml','/etc/hbase/conf/hbase_client_jaas.conf','/etc/hbase/conf/hbase_regionserver_jaas.conf','/etc/hbase/conf/hdfs-site.xml','/usr/hdp/2.4.2.0-258/hbase/lib/hbase-client-1.1.2.2.4.2.0-258.jar','/usr/hdp/2.4.2.0-258/hbase/lib/hbase-server-1.1.2.2.4.2.0-258.jar','/usr/hdp/2.4.2.0-258/hbase/lib/hbase-common-1.1.2.2.4.2.0-258.jar','/usr/hdp/2.4.2.0-258/phoenix/phoenix-4.4.0.2.4.2.0-258-thin-client.jar','/usr/hdp/2.4.2.0-258/phoenix/phoenix-server-4.4.0.2.4.2.0-258-runnable.jar','/usr/hdp/2.4.2.0-258/phoenix/phoenix-4.4.0.2.4.2.0-258-client.jar']); var config = { url: 'jdbc:phoenix:piv-prd-os-646.forsys.lan:2181:/hbase-secure:kafka@FORSYs.LAN:/etc/security/keytabs/kafka.headless.keytab',drivername: 'org.apache.phoenix.jdbc.PhoenixDriver',//user : 'root',//password: 'root',//properties: {} minpoolsize: 2,maxpoolsize: 3 }; var hsqldb = new JDBC(config); hsqldb.initialize(function(err) { if (err) { console.log(err); } else { console.log("---- initialize successfully ----") } });
例外:
error: Error: Error running static method java.sql.sqlException: ERROR 103 (08004): Unable to establish connection. at org.apache.phoenix.exception.sqlExceptionCode$Factory$1.newException(sqlExceptionCode.java:395) at org.apache.phoenix.exception.sqlExceptionInfo.buildException(sqlExceptionInfo.java:145) at org.apache.phoenix.query.ConnectionQueryservicesImpl.openConnection(ConnectionQueryservicesImpl.java:287) at org.apache.phoenix.query.ConnectionQueryservicesImpl.access$300(ConnectionQueryservicesImpl.java:170) at org.apache.phoenix.query.ConnectionQueryservicesImpl$12.call(ConnectionQueryservicesImpl.java:1840) at org.apache.phoenix.query.ConnectionQueryservicesImpl$12.call(ConnectionQueryservicesImpl.java:1819) at org.apache.phoenix.util.PhoenixContextExecutor.call(PhoenixContextExecutor.java:77) at org.apache.phoenix.query.ConnectionQueryservicesImpl.init(ConnectionQueryservicesImpl.java:1819) at org.apache.phoenix.jdbc.PhoenixDriver.getConnectionQueryservices(PhoenixDriver.java:180) at org.apache.phoenix.jdbc.PhoenixEmbeddedDriver.connect(PhoenixEmbeddedDriver.java:132) at org.apache.phoenix.jdbc.PhoenixDriver.connect(PhoenixDriver.java:151) at java.sql.DriveRMANager.getConnection(DriveRMANager.java:571) at java.sql.DriveRMANager.getConnection(DriveRMANager.java:187) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegaTingMethodAccessorImpl.invoke(DelegaTingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) Caused by: java.io.IOException: Login failure for kafka@FORSYs.LAN from keytab /etc/security/keytabs/kafka.headless.keytab: javax.security.auth.login.LoginException: Unable to obtain password from user at org.apache.hadoop.security.UserGroupInformation.loginUserFromKeytab(UserGroupInformation.java:976) at org.apache.hadoop.security.SecurityUtil.login(SecurityUtil.java:280) at org.apache.hadoop.hbase.security.User$SecureHadoopUser.login(User.java:386) at org.apache.hadoop.hbase.security.User.login(User.java:253) at org.apache.phoenix.query.ConnectionQueryservicesImpl.openConnection(ConnectionQueryservicesImpl.java:282) ... 14 more Caused by: javax.security.auth.login.LoginException: Unable to obtain password from user at com.sun.security.auth.module.Krb5LoginModule.promptForPass(Krb5LoginModule.java:856) at com.sun.security.auth.module.Krb5LoginModule.attemptAuthentication(Krb5LoginModule.java:719) at com.sun.security.auth.module.Krb5LoginModule.login(Krb5LoginModule.java:584) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegaTingMethodAccessorImpl.invoke(DelegaTingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at javax.security.auth.login.LoginContext.invoke(LoginContext.java:762) at javax.security.auth.login.LoginContext.access$000(LoginContext.java:203) at javax.security.auth.login.LoginContext$4.run(LoginContext.java:690) at javax.security.auth.login.LoginContext$4.run(LoginContext.java:688) at java.security.AccessController.doprivileged(Native Method) at javax.security.auth.login.LoginContext.invokePriv(LoginContext.java:687) at javax.security.auth.login.LoginContext.login(LoginContext.java:595) at org.apache.hadoop.security.UserGroupInformation.loginUserFromKeytab(UserGroupInformation.java:967) ... 18 more@H_801_2@
解:
if (!jinst.isJvmCreated()) { jinst.addoption("-Xrs"); jinst.addoption("-Djava.security.auth.login.config=/home/user/jar/hbase_client_jaas.conf"); jinst.addoption("-Djava.security.krb5.conf=/etc/krb5.conf"); jinst.addoption("-Dkerberos.CLIENt.reference.name=Client"); jinst.setupClasspath([ '/etc/hbase/2.4.2.0-258/0/','/etc/hadoop/2.4.2.0-258/0/','/home/user/jar/phoenix-4.4.0-HBase-1.1-client.jar' ]); } var config = { url: 'jdbc:phoenix:ZK1,ZK2,ZK3:2181:/hbase-secure:user@REAl.LAN:/home/user/user.headless.keytab',user : 'hbase',password: 'hbase' };@H_801_2@ @H_801_2@
以上是大佬教程为你收集整理的node.js和npm jdbc包问题与kerberized apache phoenix全部内容,希望文章能够帮你解决node.js和npm jdbc包问题与kerberized apache phoenix所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。