[不看会报错]-Zeppelin开启准备工作
# 一、前情说明:为什么安装 Zeppelin 会影响 Kerberos 认证链路?
Zeppelin 本身并不直接管理 Hadoop 底层配置,但在 Ambari 环境中:
- 安装 Zeppelin 会触发 Hadoop/HDFS/HBase/YARN 等客户端配置重新渲染
- Ambari 会把对应的
krb5.conf、JAAS、core-site.xml 等文件重新生成 - 若这些组件未重启,它们仍使用旧配置
- 这会导致 Kerberos 短链不生效,从而影响 Zeppelin 登录
必须记住
开启 Kerberos 后安装任何新组件,都需要 重启 Hadoop 核心组件 才能让认证链路生效。
# 二、现场症状:Zeppelin UI 登录不上
Zeppelin 安装成功,但开启 Kerberos 后:
- Web UI 打开正常
- 输入账号密码后卡住
- 日志无明显报错
- 无法进入主页
页面表现如下:

一开始我们以为是 Zeppelin Shiro 认证的问题,但排查后发现 所有配置都正常。
# 三、排查思路:所有配置正确,但认证仍不生效
我们从页面、日志、Ambari 配置逐项排查,发现都没有异常。

但真正的线索来自:
HDFS、HBase 的认证配置发生了更新。
Zeppelin 客户端安装过程中,会重新加载 Hadoop 安全配置,因此未重启的服务仍使用旧配置。
我们查看到 HDFS 的部分配置有变化:

这些修改包括:
- kerberos principal
- keytab 路径
- auth-to-local 映射
- DataNode / NameNode 认证策略
- hbase-site 追加的安全参数
# 四、真正的解决办法:重启 HDFS、HBase、YARN
为了让 Kerberos 认证链路重新生效,我们依次重启:
- HDFS
- HBase
- YARN(如果 Zeppelin 使用 Spark/Yarn Interpreter)
重启示例图:

重启后再次查看 Zeppelin 日志 /var/log/zeppelin:
- 之前 “失败的 Kerberos 登录尝试” 消失
- Zsession 初始化成功
- WebSocket 握手正常
- Interpreter 认证成功加载

# 五、最终验证:Zeppelin 登录恢复正常
此时回到页面重新登录,发现:
- 能正常进入首页
- Spark/HDFS/HBase Interpreter 均认证成功
- 无需额外修改 Shiro 配置

问题解除。
# 六、总结:Zeppelin + Kerberos 必看清单
若不按清单执行,必报错
以下组件必须在安装 Zeppelin 后全部重启,否则 Kerberos 短链不生效:
| 组件 | 原因 | 是否必须重启 |
|---|---|---|
| HDFS | core-site/hdfs-site 被重写 | ✔ |
| HBase | hbase-site 被更新 | ✔ |
| YARN | 启用 Spark Interpreter 需 Kerberos ticket | ✔ |
| MapReduce | ProxyUser 受 Kerberos 影响 | 建议 |
| Zookeeper | 安全模式无更新,但重启推荐 | 可选 |
| Zeppelin 本身 | 依赖 Hadoop client 的票据 | ✔ |
注意
Ambari UI 中即使没有提示 “Restart Required”,Zeppelin 安装后仍然会更新 Hadoop 客户端配置。
因此必须手工重启相关核心服务。
# 七、额外补充:为什么会出现“短链不生效”?
很多同学会疑惑:
只是安装了 Zeppelin,为什么 HDFS/HBase/YARN 的 Kerberos 会一起受影响?
原因如下:
- Ambari 会为新组件重新生成 Hadoop Client 侧的安全配置
- HDFS/HBase/YARN 当前运行的进程并没有重新加载这些文件
- Exploration/Spark Interpreter 会访问 HDFS/HBase
- 旧票据 + 旧 ACL + 新 krb5.conf = 认证链断裂