- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我一直在尝试执行一个由beeline组成的shell脚本来执行配置单元查询。
该群集是启用了Kerberos的群集。
如果脚本具有带有keytab和principal的kinit,我就能执行。
我想在hive2 / hcat凭证的帮助下实现它。
<workflow-app name="Table check" xmlns="uri:oozie:workflow:0.5">
<credentials>
<credential name="hive2" type="hive2">
<property>
<name>hive2.jdbc.url</name>
<value>${jdbcURL}</value>
</property>
<property>
<name>hive2.server.principal</name>
<value>${principal}</value>
</property>
</credential>
</credentials>
<start to="shell-85ec"/>
<kill name="Kill">
<message>Action failed, error message[${wf:errorMessage(wf:lastErrorNode())}]</message>
</kill>
<action name="shell-85ec" cred="hive2">
<shell xmlns="uri:oozie:shell-action:0.1">
<job-tracker>${jobTracker}</job-tracker>
<name-node>${nameNode}</name-node>
<exec>test_table.sh</exec>
<argument>${jdbcURL}</argument>
<argument>table1</argument>
<file>/user/hue/test_table.sh#test_table.sh</file>
</shell>
<ok to="End"/>
<error to="Kill"/>
</action>
<end name="End"/>
</workflow-app>
20/05/10 18:51:50 [main]: ERROR transport.TSaslTransport: SASL negotiation failure
javax.security.sasl.SaslException: GSS initiate failed
at com.sun.security.sasl.gsskerb.GssKrb5Client.evaluateChallenge(GssKrb5Client.java:211) ~[?:1.8.0_242]
at org.apache.thrift.transport.TSaslClientTransport.handleSaslStartMessage(TSaslClientTransport.java:94) ~[hive-exec-2.1.1-cdh6.3.2.jar:2.1.1-cdh6.3.2]
at org.apache.thrift.transport.TSaslTransport.open(TSaslTransport.java:271) [hive-exec-2.1.1-cdh6.3.2.jar:2.1.1-cdh6.3.2]
at org.apache.thrift.transport.TSaslClientTransport.open(TSaslClientTransport.java:37) [hive-exec-2.1.1-cdh6.3.2.jar:2.1.1-cdh6.3.2]
at org.apache.hadoop.hive.thrift.client.TUGIAssumingTransport$1.run(TUGIAssumingTransport.java:52) [hive-exec-2.1.1-cdh6.3.2.jar:2.1.1-cdh6.3.2]
at org.apache.hadoop.hive.thrift.client.TUGIAssumingTransport$1.run(TUGIAssumingTransport.java:49) [hive-exec-2.1.1-cdh6.3.2.jar:2.1.1-cdh6.3.2]
at java.security.AccessController.doPrivileged(Native Method) ~[?:1.8.0_242]
at javax.security.auth.Subject.doAs(Subject.java:422) [?:1.8.0_242]
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1875) [hadoop-common-3.0.0-cdh6.3.2.jar:?]
at org.apache.hadoop.hive.thrift.client.TUGIAssumingTransport.open(TUGIAssumingTransport.java:49) [hive-exec-2.1.1-cdh6.3.2.jar:2.1.1-cdh6.3.2]
at org.apache.hive.jdbc.HiveConnection.openTransport(HiveConnection.java:229) [hive-jdbc-2.1.1-cdh6.3.2.jar:2.1.1-cdh6.3.2]
at org.apache.hive.jdbc.HiveConnection.<init>(HiveConnection.java:184) [hive-jdbc-2.1.1-cdh6.3.2.jar:2.1.1-cdh6.3.2]
at org.apache.hive.jdbc.HiveDriver.connect(HiveDriver.java:107) [hive-jdbc-2.1.1-cdh6.3.2.jar:2.1.1-cdh6.3.2]
at java.sql.DriverManager.getConnection(DriverManager.java:664) [?:1.8.0_242]
at java.sql.DriverManager.getConnection(DriverManager.java:208) [?:1.8.0_242]
at org.apache.hive.beeline.DatabaseConnection.connect(DatabaseConnection.java:145) [hive-beeline-2.1.1-cdh6.3.2.jar:2.1.1-cdh6.3.2]
at org.apache.hive.beeline.DatabaseConnection.getConnection(DatabaseConnection.java:209) [hive-beeline-2.1.1-cdh6.3.2.jar:2.1.1-cdh6.3.2]
at org.apache.hive.beeline.Commands.connect(Commands.java:1617) [hive-beeline-2.1.1-cdh6.3.2.jar:2.1.1-cdh6.3.2]
at org.apache.hive.beeline.Commands.connect(Commands.java:1512) [hive-beeline-2.1.1-cdh6.3.2.jar:2.1.1-cdh6.3.2]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_242]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_242]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_242]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_242]
at org.apache.hive.beeline.ReflectiveCommandHandler.execute(ReflectiveCommandHandler.java:56) [hive-beeline-2.1.1-cdh6.3.2.jar:2.1.1-cdh6.3.2]
at org.apache.hive.beeline.BeeLine.execCommandWithPrefix(BeeLine.java:1290) [hive-beeline-2.1.1-cdh6.3.2.jar:2.1.1-cdh6.3.2]
at org.apache.hive.beeline.BeeLine.dispatch(BeeLine.java:1329) [hive-beeline-2.1.1-cdh6.3.2.jar:2.1.1-cdh6.3.2]
at org.apache.hive.beeline.BeeLine.connectUsingArgs(BeeLine.java:864) [hive-beeline-2.1.1-cdh6.3.2.jar:2.1.1-cdh6.3.2]
at org.apache.hive.beeline.BeeLine.initArgs(BeeLine.java:768) [hive-beeline-2.1.1-cdh6.3.2.jar:2.1.1-cdh6.3.2]
at org.apache.hive.beeline.BeeLine.begin(BeeLine.java:1004) [hive-beeline-2.1.1-cdh6.3.2.jar:2.1.1-cdh6.3.2]
at org.apache.hive.beeline.BeeLine.mainWithInputRedirection(BeeLine.java:526) [hive-beeline-2.1.1-cdh6.3.2.jar:2.1.1-cdh6.3.2]
at org.apache.hive.beeline.BeeLine.main(BeeLine.java:508) [hive-beeline-2.1.1-cdh6.3.2.jar:2.1.1-cdh6.3.2]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_242]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_242]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_242]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_242]
at org.apache.hadoop.util.RunJar.run(RunJar.java:313) [hadoop-common-3.0.0-cdh6.3.2.jar:?]
at org.apache.hadoop.util.RunJar.main(RunJar.java:227) [hadoop-common-3.0.0-cdh6.3.2.jar:?]
Caused by: org.ietf.jgss.GSSException: No valid credentials provided (Mechanism level: Failed to find any Kerberos tgt)
at sun.security.jgss.krb5.Krb5InitCredential.getInstance(Krb5InitCredential.java:162) ~[?:1.8.0_242]
at sun.security.jgss.krb5.Krb5MechFactory.getCredentialElement(Krb5MechFactory.java:122) ~[?:1.8.0_242]
at sun.security.jgss.krb5.Krb5MechFactory.getMechanismContext(Krb5MechFactory.java:189) ~[?:1.8.0_242]
at sun.security.jgss.GSSManagerImpl.getMechanismContext(GSSManagerImpl.java:224) ~[?:1.8.0_242]
at sun.security.jgss.GSSContextImpl.initSecContext(GSSContextImpl.java:212) ~[?:1.8.0_242]
at sun.security.jgss.GSSContextImpl.initSecContext(GSSContextImpl.java:179) ~[?:1.8.0_242]
at com.sun.security.sasl.gsskerb.GssKrb5Client.evaluateChallenge(GssKrb5Client.java:192) ~[?:1.8.0_242]
最佳答案
-a bealineToken beeline comamnd line参数是beeline使用凭据提供的委派 token 的必需参数。
她脚本中使用的示例命令
beeline -u“$ jdbcUrl” -d org.apache.hive.jdbc.HiveDriver -a授权 token -e“显示数据库”
关于hadoop - oozie shell脚本在kerberos集群中执行beeline,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61717349/
我的 FileInputFormat 有时会抛出异常,我希望用户看到来自异常的消息。有没有办法通知直线异常。它只是显示 Error while processing statement: FAILED
我有一个配置单元查询,它有一个 echo 命令来打印一些东西。下面是一个示例 HQL 文件 !echo 'Total records'; use testDB; select count(*) fro
当连接到直线时,我的提示是 JDBC url 的一些截断版本:0: jdbc:hive2//fully.qualified.host.na 这占用了大量的空间。 我尝试了 set hive.cli.p
当我们运行 Hive 查询时,我试图了解各种 ID 之间的关系。我正在考虑以下场景,建议用于真实集群。 ClientMachine ---connects/ssh--> GatewayNode (比如
我无法奔跑 beeline -f file_queries.hql Error: $ beeline -f edip_validations_hql.hql beeline> {My Query} N
在集群上,我正在为每个用户分配60GB的Hadoop配额。 从历史上看,我正在从事的项目会生成很多Hive查询。 为了使工作更快,我尝试并行处理这些查询(不相关),但结果目录/user/{myuser
在Beeline shell中,命令 DESC db.t 在正常情况下,任何Hive托管表的快速(即刻)。 DESC是纯元数据命令,因此我想它仅取决于Metastore(在我们的示例中为Derby)
我正在使用直线连接到 HIVE 服务器。登录用户无权访问其默认主目录。 因此,登录后我手动将 ENV VAR HOME 更改为我有权访问的位置。 但是,beeline 不支持我设置的 HOME ENV
我正在尝试通过 Beeline 客户端连接到我机器上安装的配置单元。当我给出“直线”命令并连接到 Hive 时,客户端要求输入用户名和密码 !connect jdbc:hive2://localhos
我正在尝试通过 beeline 让 hiveserver2 与 kerberized HDP 2.3 集群一起使用。我在亚马逊ec2。 一旦我得到一张可更新的票,我就可以执行 hdfs 操作并启动 m
我正在尝试将我的 hive 表导出为 beeline hive 中的 csv。当我运行命令 !sql select * from database1 >/user/bob/output.csv 时,它
我已经对 HDP 2.3 集群进行了 kerbrized,并且在缓存中有一个有效的 TGT。 我可以通过直线控制台成功运行查询。例如,以下事情进展顺利。 $beeline $!connect jdbc
我正在使用以下命令行在 Linux 服务器上运行 Beeline 客户端。 整个命令在一行中。它工作正常并成功将 STDERR 写入 $errFile。但是它无法将 STDOUT 写入指定为 $out
我想在一个配置单元 session 中运行 file_1.hql 和 file_2.hql。我怎样才能做到这一点?我正在考虑将这两个文件作为 hive -f file_1.hql file_2.hql
这个问题在这里很常见,有几种风格。在这种情况下,我设置了一个没有身份验证的 HiveServer2 ( NOSASL ),它在 Python 中工作,我在其中使用 Impyla 库进行连接。当我使用直
我想使用“ls”命令从 Hive Beeline 中查看 HDFS 目录的内容。同样,我想查看默认 HDFS 目录设置的内容,可能使用“pwd”命令。 有什么方法可以在 Beeline 中执行此操作,
在我的 shell 脚本中,我使用此查询来获取列 ID 的 last_value。 last_val=`beeline -e "select nvl(max(id),0) from testing.1
是否可以使用(kerberos)keytab 文件通过直线连接到 Hive,类似于 中用于 JDBC 的方法 https://cwiki.apache.org/confluence/display/H
我在 Mac OSX 机器上,我想在 CentOS 6.6 机器上对 Hadoop 数据库运行查询。我可以登录到 CentOS 机器并在那里运行配置单元查询。但我需要能够从我的机器运行查询来解决连接问
我在ubuntu上安装了hadoop 2.8.1,然后在上面安装了spark-2.2.0-bin-hadoop2.7。首先,当我通过 spark-shell 创建数据库并尝试通过 java JDBC
我是一名优秀的程序员,十分优秀!