TT Bigdata TT Bigdata
首页
  • 部署专题

    • 常规安装
    • 一键部署
  • 组件专题

    • 安装指导
    • 开启 Kerberos
    • 魔改分享
  • 版本专题

    • 更新说明
    • BUG临时处理
  • 实验室

    • VIEW插件
    • JIRA速查
  • Ambari-Env

    • 环境准备
    • 开始使用
  • 组件编译

    • 专区—Ambari
    • 专区—Bigtop-官方组件
    • 专区—Bigtop-扩展组件
  • 报错解决

    • 专区—Ambari
    • 专区—Bigtop
  • 其他技巧

    • APT仓库增量更新
    • Maven镜像加速
    • Gradle镜像加速
    • Bower镜像加速
    • 虚拟环境思路
    • R环境安装+一键安装脚本
    • Ivy配置私有镜像仓库
    • Node.js 多版本共存方案
    • Ambari Web本地启动
    • Npm镜像加速
    • PostgreSQL快速安装
    • Temurin JDK 23快速安装
  • 成神之路

    • 专区—Ambari
    • 专区—Ambari-Metrics
    • 专区—Bigtop
  • 集成案例

    • Redis集成教学
    • Dolphin集成教学
    • Doris集成教学
    • 持续整理...
  • 核心代码

    • 各组件代码
    • 通用代码模板
  • 国产化&其他系统

    • Kylin V10系列
    • Rocky系列
    • Ubuntu系列
  • Grafana监控方案

    • Ambari-Metrics插件
    • Infinity插件
  • 支持&共建

    • 蓝图愿景
    • 合作共建
登陆
GitHub (opens new window)

JaneTTR

数据酿造智慧,每一滴都是沉淀!
首页
  • 部署专题

    • 常规安装
    • 一键部署
  • 组件专题

    • 安装指导
    • 开启 Kerberos
    • 魔改分享
  • 版本专题

    • 更新说明
    • BUG临时处理
  • 实验室

    • VIEW插件
    • JIRA速查
  • Ambari-Env

    • 环境准备
    • 开始使用
  • 组件编译

    • 专区—Ambari
    • 专区—Bigtop-官方组件
    • 专区—Bigtop-扩展组件
  • 报错解决

    • 专区—Ambari
    • 专区—Bigtop
  • 其他技巧

    • APT仓库增量更新
    • Maven镜像加速
    • Gradle镜像加速
    • Bower镜像加速
    • 虚拟环境思路
    • R环境安装+一键安装脚本
    • Ivy配置私有镜像仓库
    • Node.js 多版本共存方案
    • Ambari Web本地启动
    • Npm镜像加速
    • PostgreSQL快速安装
    • Temurin JDK 23快速安装
  • 成神之路

    • 专区—Ambari
    • 专区—Ambari-Metrics
    • 专区—Bigtop
  • 集成案例

    • Redis集成教学
    • Dolphin集成教学
    • Doris集成教学
    • 持续整理...
  • 核心代码

    • 各组件代码
    • 通用代码模板
  • 国产化&其他系统

    • Kylin V10系列
    • Rocky系列
    • Ubuntu系列
  • Grafana监控方案

    • Ambari-Metrics插件
    • Infinity插件
  • 支持&共建

    • 蓝图愿景
    • 合作共建
登陆
GitHub (opens new window)
  • 【开启】Kerberos认证

    • 步骤一

    • 步骤二

    • 部分组件开启必要初始化步骤

      • [不看会报错]-Atlas开启准备工作
      • [不看会报错]-Zeppelin开启准备工作
      • [不看会报错]-Impala开启准备工作
        • 一、问题背景
        • 二、现象与报错复现
          • 1、已经完成 kinit
          • 2、尝试访问 Impala
          • 3、Ranger 侧也会记录拒绝日志
        • 三、为什么 Impala 依赖 Hive Plugin?
        • 四、解决方法:修改 Ranger Hive Plugin 配置
        • 五、重新测试 Impala 权限
      • [不看会报错]-Trino开启准备工作
  • 【关闭】Kerberos认证

  • 其他优化技巧

  • 踩坑合集

  • 其他技巧

  • 组件安装-Kerberos
  • 【开启】Kerberos认证
  • 部分组件开启必要初始化步骤
JaneTTR
2025-11-15
目录

[不看会报错]-Impala开启准备工作

# 一、问题背景

Impala 在不开启 Ranger、不开启 Kerberos 的情况下通常可以直接运行。但当你在 已经部署 Ranger 的环境里启用 Kerberos 后,如果没有提前把 Impala 需要的用户加入 Hive Plugin 的策略拉取清单,就会出现下面这种错误现象。

以下是常见的组合触发场景:

  • 安装 Impala
  • Ranger 已经开启 Hive Plugin
  • 同时开启 Kerberos
  • 使用 Impala-shell 访问数据

结果就是:数据访问失败。

# 二、现象与报错复现

# 1、已经完成 kinit

执行:

kinit -kt /etc/security/keytabs/impala.headless.keytab impala-aaa@TTBIGDATA.COM
1

# 2、尝试访问 Impala

./impala-shell -k
1

连接成功,但实际执行 SQL:

show tables;
1

返回如下错误:

[root@dev1 shell]# ./impala-shell -k
Starting Impala Shell with Kerberos authentication using Python 2.7.18
Using service name 'impala'
Opened TCP connection to dev1:21050
Connected to dev1:21050
Server version: impalad version 4.4.1-RELEASE RELEASE (build 6edbf57651aa84652e0121fe9055e53c4d350871)
***********************************************************************************
Welcome to the Impala shell.
(Impala Shell v4.4.1-RELEASE (6edbf57) built on Sat Oct 18 00:22:46 UTC 2025)

When you set a query option it lasts for the duration of the Impala shell session.
***********************************************************************************
[dev1:21050] default> show tables;
Query: show tables
ERROR: AuthorizationException: User 'impala-aaa@TTBIGDATA.COM' does not have privileges to access: default.*.*

[dev1:21050] default>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

这类错误不是 keytab 的问题

认证已经成功,是 授权被拒绝。Impala 能连上,但 Ranger 没有下发对应策略。

# 3、Ranger 侧也会记录拒绝日志

从日志可以看出 —— Impala 使用的其实是 Hive Plugin。

# 三、为什么 Impala 依赖 Hive Plugin?

关键点

Impala 自身并没有单独的 Ranger Plugin,而是 复用 Hive Plugin 的策略下发机制。

所以,当 Ranger 配置里允许拉取策略的用户没有包含:

  • hive
  • impala

两者中任意一个缺失都会导致 Impala 无法拉取 policy → 认证成功但授权失败。

# 四、解决方法:修改 Ranger Hive Plugin 配置

在 Ranger 管理界面中,找到 Hive 对应的 service。

进入 Config → Advanced 视图,将以下三个参数补全:

tag.download.auth.users = hive,impala
policy.download.auth.users = hive,impala
policy.grantrevoke.auth.users = hive,impala
1
2
3

这些参数的作用
配置项 用途说明
tag.download.auth.users 允许哪些用户下载标签策略(tag-based policy)
policy.download.auth.users 允许哪些用户下载常规策略(resource-based policy)
policy.grantrevoke.auth.users 允许哪些用户执行授予/回收权限操作

填写完成后保存并刷新策略。

# 五、重新测试 Impala 权限

再次执行:

./impala-shell -k
show tables;
1
2

现在已经可以正常访问 default 数据库。

再看 Ranger:

可以看到:

  • Impala 成功拉取策略
  • 权限也被正常匹配
  • 查询不再被拒绝
#Ambari#Kerberos#Impala#Ranger#KDC#Hive Plugin#认证联动#HDFS
[不看会报错]-Zeppelin开启准备工作
[不看会报错]-Trino开启准备工作

← [不看会报错]-Zeppelin开启准备工作 [不看会报错]-Trino开启准备工作→

最近更新
01
[开启Kerberos]-Trino启动-配置文件处理
11-18
02
Livy 安装 2.2.0+
11-17
03
[关闭 Kerberos]-Hive 注销异常
11-17
更多文章>
Theme by Vdoing | Copyright © 2017-2025 JaneTTR | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式