直线-没有当前连接-找不到默认的hs2连接配置

wfypjpf4  于 2021-06-24  发布在  Hive
关注(0)|答案(2)|浏览(673)

在我们的一个cloudera集群中,我们正面临一个关于beeline cli的问题。我们正在尝试连接和执行hql文件,这些文件是使用beeline cli的alter语句,如下所示,它失败了,出现以下错误。

[srvcacc@hostname ~]$ beeline -u jdbc:hive2://hostname.domain.dom:10000 --verbose=true --showWarnings=true
WARNING: Use "yarn jar" to launch YARN applications.
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/usr/lib/hive/lib/log4j-slf4j-impl-2.8.2.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/usr/lib/zookeeper/lib/slf4j-log4j12-1.7.25.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]
ERROR StatusLogger No log4j2 configuration file found. Using default configuration: logging only errors to the console. Set system property 'org.apache.logging.log4j.simplelog.StatusLogger.level' to TRACE to show Log4j2 internal initialization logging.
Beeline version 2.1.1-cdh6.1.1 by Apache Hive
Default hs2 conection config file not found
0: jdbc:hive2://hostname.domain.dom:10000> show databases;
No current connection
0: jdbc:hive2://hostname.domain.dom:10000>

我们已经用下列方法进行了直线连接,两种方法中有一种失败,另一种有效。
第一种方法:

[srvcacc@hostname ~]$ beeline -u jdbc:hive2://hostname.domain.dom:10000

第二种方法:

[srvcacc@hostname ~]$ beeline
WARNING: Use "yarn jar" to launch YARN applications.
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/usr/lib/hive/lib/log4j-slf4j-impl-2.8.2.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/usr/lib/zookeeper/lib/slf4j-log4j12-1.7.25.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]
ERROR StatusLogger No log4j2 configuration file found. Using default configuration: logging only errors to the console. Set system property 'org.apache.logging.log4j.simplelog.StatusLogger.level' to TRACE to show Log4j2 internal initialization logging.
Beeline version 2.1.1-cdh6.1.1 by Apache Hive
beeline> !connect jdbc:hive2://hostname.domain.dom:10000
Connecting to jdbc:hive2://hostname.domain.dom:10000
Enter username for jdbc:hive2://hostname.domain.dom:10000:
Enter password for jdbc:hive2://hostname.domain.dom:10000:
Connected to: Apache Hive (version 2.1.1-cdh6.1.1)
Driver: Hive JDBC (version 2.1.1-cdh6.1.1)
Transaction isolation: TRANSACTION_REPEATABLE_READ
0: jdbc:hive2://hostname.domain.do>

第一种方法因以下错误而失败

Default hs2 conection config file not found
0: jdbc:hive2://hostname.domain.dom:10000> show databases;
No current connection

第二条路连接无误。
我们尝试使用-d参数连接,并明确提到驱动程序“org.apache.hive.jdbc.hivedriver”,即使这样也会产生与“default hs2 connection config not found”相同的错误。我们还尝试了与“hive cli”(已弃用)的连接,该连接可以正常工作,没有任何问题。我们需要使用带“-u”和“-f”参数的直线。
群集信息:
5个节点(一个主节点和4个数据节点)群集,rhel 7.5上的cdh版本为6.1.1
hiveserver2、hive metastore和webhcat服务器驻留在同一服务器(主节点)中
到配置单元的连接没有任何身份验证机制。
我们已经验证了“hiveserver2”、“hivemetastore”服务以及相关端口和webui端口,所有这些都正常工作,没有任何问题。
在这个集群的初始设置过程中,由于/tmp的安全策略具有“noexec”配置,我们必须更改以下配置,并明确提到“'-djava.io.tmpdir=/var/log/cloudera scm server/yarntemp”(其中“/var/log/cloudera scm server”是具有775权限的单独装载点)

YARN configuration

1. ApplicationMaster Java Opts Base
2. Java Configuration Options for JobHistory Server
3. Java Configuration Options for NodeManager
4. Java Configuration Options for ResourceManager

Cloudera Manager --> YARN --> search for: Gateway Client Environment Advanced Configuration Snippet (Safety Valve) for hadoop-env.sh and add this:
HADOOP_CLIENT_OPTS="-Djava.io.tmpdir=/var/log/cloudera-scm-server/yarntemp"

参考文献:https://community.cloudera.com/t5/cloudera-manager-installation/problem-starting-a-nodemanager/td-p/27658
请让我们知道需要做什么直线工作与-u和-f参数。任何帮助都将不胜感激。
提前谢谢。

bjp0bcyl

bjp0bcyl1#

所以你想说使用“beeline”连接,而使用“beeline-u-fyyy”则没有。
看看你的日志,它看起来像是用户名和密码。
你能试试这样的吗

beeline -u jdbc:hive2://hostname.domain.dom:10000 -n <yourname> -p <yourpassword> -f <filename.hql>
piztneat

piztneat2#

cdh47不起作用。它与cdh514版本一起工作。没事的。我们可以用Hive壳做

相关问题