Проблема с разрешением, связанная с Билайн

Вопрос

Почему я не могу подключиться к HiverServer2 с пользователем ubuntu, хотя с пользователем hadoop все в порядке?

Краткий

Я создал пользователя hadoop на машине в качестве namenode, где его ОС — Ubuntu 18.04.5 LTS, и создал кластер Hadoop с 4 работниками.

Hadoop 3.3.0
Source code repository https://gitbox.apache.org/repos/asf/hadoop.git -r aa96f1871bfd858f9bac59cf2a81ec470da649af
Compiled by brahma on 2020-07-06T18:44Z
Compiled with protoc 3.7.1
From source with checksum 5dc29b802d6ccd77b262ef9d04d19c4
This command was run using /opt/hadoop-3.3.0/share/hadoop/common/hadoop-common-3.3.0.jar

Затем я создал Hive с Derby в режиме сервера на кластере.

SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/home/hadoop/apache-hive-3.1.2-bin/lib/log4j-slf4j-impl-2.10.0.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/opt/hadoop-3.3.0/share/hadoop/common/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]
Hive 3.1.2
Git git://HW13934/Users/gates/tmp/hive-branch-3.1/hive -r 8190d2be7b7165effa62bd21b7d60ef81fb0e4af
Compiled by gates on Thu Aug 22 15:01:18 PDT 2019
From source with checksum 0492c08f784b188c349f6afb1d8d9847

Вот что я пытался выполнить.

$ beeline
beeline> !connect jdbc:hive2://master:10000 APP ${password}

Когда я выполнил hadoop, я получил успешное сообщение.

Connecting to jdbc:hive2://master:10000
Connected to: Apache Hive (version 3.1.2)
Driver: Hive JDBC (version 3.1.2)
Transaction isolation: TRANSACTION_REPEATABLE_READ

Когда я выполнил ubuntu, я получил сообщение об ошибке.

WARN jdbc.HiveConnection: Failed to connect to master:10000
Error: Could not open client transport with JDBC Uri: jdbc:hive2://master:10000: 
Failed to open new session: java.lang.RuntimeException:
org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.security.authorize.AuthorizationException): 
User: hadoop is not allowed to impersonate APP (state=08S01,code=0)

Я пытался изменить core-site.xml и hive-site.xml, как указано в neeraj в AuthorizationException: пользователь не разрешен чтобы выдать себя за пользователя, но я все еще получаю то же сообщение об ошибке.


Это то, что я добавил к core-site.xml и hive-site.xml.

<!--core-site.xml-->
<!--This addition is done in the master node and every worker-->
<property>
  <name>hadoop.proxyuser.hadoop.groups</name>
  <value>*</value>
</property>
<property>
  <name>hadoop.proxyuser.hadoop.hosts</name>
  <value>*</value>
</property>
<!--hive-stie.xml-->
<property>
  <name>hive.server2.enable.doAs</name>
  <value>true</value>
  <description>Impersonate the connected user, default true.</description>
</property>

person Scott Hsieh    schedule 01.09.2020    source источник