因为不懂kerberos,当然到现在也不懂,遇到的几点坑,分享一下,有问题欢迎大家纠正
两点坑
conf.set("kerberos.principal" ,"hbase/_HOST@AC1.HBASE.COM" );
conf.set("hbase.master.kerberos.principal","hbase/_HOST@AC1.HBASE.COM");
conf.set("hbase.regionserver.kerberos.principal","hbase/_HOST@AC1.HBASE.COM");
这三个参数需要设置为 hbase配置文件中的hbase.master.kerberos.principal的配置,例如下图
取这个参数才能运行
第二点UserGroupInformation.loginUserFromKeytab中的user是你hbase数据库里面的用户名,与上面的principal不是一样的,记住不是一样的格式
附一段代码 开箱即用 有问题欢迎留言 准备攻克一下 这个kerberos 有点意思
public class App
{
private static Configurationconf =null;
static Connectionconn =null;
static {
// 这个配置文件主要是记录 kerberos的相关配置信息,例如KDC是哪个IP?默认的realm是哪个?
// 如果没有这个配置文件这边

本文记录了使用Java连接开启Kerberos的HBase过程中遇到的问题,包括Kerberos配置参数设置错误和UserGroupInformation.loginUserFromKeytab中用户名的误解。提供了一段开箱即用的示例代码,帮助开发者理解和解决相关问题。
最低0.47元/天 解锁文章
4406

被折叠的 条评论
为什么被折叠?



