• Kerberos (五) --------- Hive 用户认证配置



    一、前置要求

    A、Hadoop 集群启动 Kerberos 认证

    按照上述步骤为Hadoop集群开启Kerberos安全认证。

    B、创建 Hive 系统用户和 Kerberos 主体

    1.创建系统用户

    [root@hadoop102 ~]# useradd hive -g hadoop
    [root@hadoop102 ~]# echo hive | passwd --stdin hive
    
    [root@hadoop103 ~]# useradd hive -g hadoop
    [root@hadoop103 ~]# echo hive | passwd --stdin hive
    
    [root@hadoop104 ~]# useradd hive -g hadoop
    [root@hadoop104 ~]# echo hive | passwd --stdin hive
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    2.创建 Kerberos 主体并生成 keytab 文件

    创建hive用户的Kerberos主体

    [root@hadoop102 ~]# kadmin -padmin/admin -wadmin -q"addprinc -randkey hive/hadoop102"
    
    • 1

    在Hive所部署的节点生成keytab文件

    [root@hadoop102 ~]# kadmin -padmin/admin -wadmin -q"xst -k /etc/security/keytab/hive.service.keytab hive/hadoop102"
    
    • 1

    3.修改keytab文件所有者和访问权限

    [root@hadoop102 ~]# chown -R root:hadoop /etc/security/keytab/
    [root@hadoop102 ~]# chmod 660 /etc/security/keytab/hive.service.keytab
    
    • 1
    • 2

    二、配置认证

    1.修改 $HIVE_HOME/conf/hive-site.xml 文件,增加如下属性

    [root@hadoop102 ~]# vim $HIVE_HOME/conf/hive-site.xml
    
    <property>
        <name>hive.server2.authenticationname>
        <value>kerberosvalue>
    property>
    
    
    <property>
        <name>hive.server2.authentication.kerberos.principalname>
        <value>hive/hadoop102@EXAMPLE.COMvalue>
    property>
    
    
    <property>
        <name>hive.server2.authentication.kerberos.keytabname>
        <value>/etc/security/keytab/hive.service.keytabvalue>
    property>
    
    
    <property>
        <name>hive.metastore.sasl.enabledname>
        <value>truevalue>
    property>
    
    <property>
        <name>hive.metastore.kerberos.keytab.filename>
        <value>/etc/security/keytab/hive.service.keytabvalue>
    property>
    
    <property>
        <name>hive.metastore.kerberos.principalname>
        <value>hive/hadoop102@EXAMPLE.COMvalue>
    property>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34

    2.修改 $HADOOP_HOME/etc/hadoop/core-site.xml 文件,具体修改如下

    [root@hadoop102 ~]# vim $HADOOP_HsOME/etc/hadoop/core-site.xml
    
    • 1

    删除以下参数

    <property>
        <name>hadoop.http.staticuser.username>
        <value>atguiguvalue>
    property>
    
    <property>
        <name>hadoop.proxyuser.atguigu.hostsname>
        <value>*value>
    property>
    
    <property>
        <name>hadoop.proxyuser.atguigu.groupsname>
        <value>*value>
    property>
    
    <property>
        <name>hadoop.proxyuser.atguigu.usersname>
        <value>*value>
    property>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

    增加以下参数

    <property>
        <name>hadoop.proxyuser.hive.hostsname>
        <value>*value>
    property>
    
    <property>
        <name>hadoop.proxyuser.hive.groupsname>
        <value>*value>
    property>
    
    <property>
        <name>hadoop.proxyuser.hive.usersname>
        <value>*value>
    property>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    3.分发配置core-site.xml文件

    [root@hadoop102 ~]# xsync $HADOOP_HOME/etc/hadoop/core-site.xml
    
    • 1

    4.重启Hadoop集群

    [root@hadoop102 ~]# stop-dfs.sh
    [root@hadoop103 ~]# stop-yarn.sh
    
    [root@hadoop102 ~]# start-dfs.sh
    [root@hadoop103 ~]# start-yarn.sh
    
    • 1
    • 2
    • 3
    • 4
    • 5

    三、启动hiveserver2

    注:需使用hive用户启动

    [root@hadoop102 ~]# sudo -i -u hive hiveserver2
    
    • 1
  • 相关阅读:
    档案馆容灾备份案例分享
    YOLOv5的Tricks | 【Trick13】YOLOv5的detect.py脚本的解析与简化
    LeetCode-895. 最大频率栈以及HashMap的存值取值操作
    软件工程:左移策略,决策和工作要前置,是提效的关键
    leetcode 39. 组合总和
    为何学linux及用处
    2020年大厂Java面试前复习的正确姿势(800+面试题答案解析)
    商陆花、秦丝、管家婆,到底服装加盟管理软件哪家强?来看排行榜
    力扣(leetcode)第485题最大连续1的个数(Python)
    zabbix-agnet连接zabbix-proxy
  • 原文地址:https://blog.csdn.net/m0_51111980/article/details/127657155