热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Kettle连接Kerberos认证的Hive

题图:摄

背景

      以前的Hadoop平台没有进行安全方面的认证,kettle可以通过正常的jdbc方式连接到Hive;当Hadoop集群上了Kerberos安全系统后,需要一些额外的配置,才能有访问Hive的权限。

配置步骤

1、Kerberos票据授权准备工作

    a、需先生成Kerberos的Keytab文件, 例如:hive_test.keytab

    b、keytab文件复制到Kettle服务器的 /etc目录下

    c、获得Kerberos 票据授权票据:

kinit -kt /etc/hive_test.keytab hive/test@GITHUP.IO

    d、klist命令确认票据授权票据是否生成 

2、创建认证登录文件

   在/etc目录下创建kettle.login:

      com.sun.security.jgss.initiate{

com.sun.security.auth.module.Krb5LoginModule required
useKeyTab=true
useTicketCache=false
keyTab="/etc/hive_test.keytab"
principal="hive/test@GITHUP.IO"
dOnotPrompt=true
debug=true
debugNative=true;
};

参数值说明:

  a、KeyTab:是第一步生成的KeyTab文件

  b、principal:登录hive服务的用户 

3、spoon.sh参数配置

   在OPT参数中新增一下配置:

   -Djava.security.auth.login.cOnfig=/etc/kettle.login

   -Djava.security.krb5.realm=GITHUP.IO

   -Djava.security.krb5.kdc=192.168.5.13

   -Djavax.security.auth.useSubjectCredsOnly=false

4.1、Kettle通过JDBC连接的配置

   主机名:Hive2 Server地址(如:192.168.5.1)

    数据库名称:default;principal=hive/dev-bi-cdh01@GITHUP.IO        

    端口号:hive2的端口号(如:10000)

    用户名&密码:留空

    因是通过kerberos认证的,用户名&密码为空

 4.2、Kettle通过JNDI连接的配置

     a、Kettle安装目录下的simple-jndi/jdbc.properties:

        hive-dev/type=javax.sql.DataSource

        hive-dev/driver=org.apache.hive.jdbc.HiveDrive

        hive-dev/url=jdbc:hive2://dev-bi-cdh01:10000/default;principal=hive/dev-bi-cdh01@GITHUP.IO;

        hive-dev/user=

        hive-dev/password=

      b、数据库连接中选择Mysql的JNDI,然后输入JNDI名称:hive-dev

        hive的连接里没有JNDI选项,只要选择一个RDBMS的JNDI就可以



推荐阅读
  • 服务器部署中的安全策略实践与优化
    服务器部署中的安全策略实践与优化 ... [详细]
  • HTTP(HyperTextTransferProtocol)是超文本传输协议的缩写,它用于传送www方式的数据。HTTP协议采用了请求响应模型。客服端向服务器发送一 ... [详细]
  • Linux下MySQL 8.0.28安装指南
    本文详细介绍了在Linux系统上安装MySQL 8.0.28的步骤,包括下载数据库、解压数据包、安装必要组件和启动MySQL服务。 ... [详细]
  • 本文详细介绍了在 Ubuntu 系统上搭建 Hadoop 集群时遇到的 SSH 密钥认证问题及其解决方案。通过本文,读者可以了解如何在多台虚拟机之间实现无密码 SSH 登录,从而顺利启动 Hadoop 集群。 ... [详细]
  • 网站访问全流程解析
    本文详细介绍了从用户在浏览器中输入一个域名(如www.yy.com)到页面完全展示的整个过程,包括DNS解析、TCP连接、请求响应等多个步骤。 ... [详细]
  • MySQL的查询执行流程涉及多个关键组件,包括连接器、查询缓存、分析器和优化器。在服务层,连接器负责建立与客户端的连接,查询缓存用于存储和检索常用查询结果,以提高性能。分析器则解析SQL语句,生成语法树,而优化器负责选择最优的查询执行计划。这一流程确保了MySQL能够高效地处理各种复杂的查询请求。 ... [详细]
  • 本文深入探讨了NoSQL数据库的四大主要类型:键值对存储、文档存储、列式存储和图数据库。NoSQL(Not Only SQL)是指一系列非关系型数据库系统,它们不依赖于固定模式的数据存储方式,能够灵活处理大规模、高并发的数据需求。键值对存储适用于简单的数据结构;文档存储支持复杂的数据对象;列式存储优化了大数据量的读写性能;而图数据库则擅长处理复杂的关系网络。每种类型的NoSQL数据库都有其独特的优势和应用场景,本文将详细分析它们的特点及应用实例。 ... [详细]
  • 如何优化MySQL数据库性能以提升查询效率和系统稳定性 ... [详细]
  • 本文详细介绍了如何解决DNS服务器配置转发无法解析的问题,包括编辑主配置文件和重启域名服务的具体步骤。 ... [详细]
  • 为了提升单位内部沟通效率,我们开发了一套飞秋软件与OA系统的消息接口服务系统。该系统能够将OA系统中的审批、通知等信息自动同步至飞秋平台,确保员工在使用飞秋进行日常沟通的同时,也能及时获取OA系统的各类重要信息,从而实现无缝对接,提高工作效率。 ... [详细]
  • PTArchiver工作原理详解与应用分析
    PTArchiver工作原理及其应用分析本文详细解析了PTArchiver的工作机制,探讨了其在数据归档和管理中的应用。PTArchiver通过高效的压缩算法和灵活的存储策略,实现了对大规模数据的高效管理和长期保存。文章还介绍了其在企业级数据备份、历史数据迁移等场景中的实际应用案例,为用户提供了实用的操作建议和技术支持。 ... [详细]
  • 本文详细介绍了在CentOS 6.5 64位系统上使用阿里云ECS服务器搭建LAMP环境的具体步骤。首先,通过PuTTY工具实现远程连接至服务器。接着,检查当前系统的磁盘空间使用情况,确保有足够的空间进行后续操作,可使用 `df` 命令进行查看。此外,文章还涵盖了安装和配置Apache、MySQL和PHP的相关步骤,以及常见问题的解决方法,帮助用户顺利完成LAMP环境的搭建。 ... [详细]
  • 在 Axublog 1.1.0 版本的 `c_login.php` 文件中发现了一个严重的 SQL 注入漏洞。该漏洞允许攻击者通过操纵登录请求中的参数,注入恶意 SQL 代码,从而可能获取敏感信息或对数据库进行未授权操作。建议用户尽快更新到最新版本并采取相应的安全措施以防止潜在的风险。 ... [详细]
  • 本文详细介绍了批处理技术的基本概念及其在实际应用中的重要性。首先,对简单的批处理内部命令进行了概述,重点讲解了Echo命令的功能,包括如何打开或关闭回显功能以及显示消息。如果没有指定任何参数,Echo命令会显示当前的回显设置。此外,文章还探讨了批处理技术在自动化任务执行、系统管理等领域的广泛应用,为读者提供了丰富的实践案例和技术指导。 ... [详细]
  • 触发器的稳态数量分析及其应用价值
    本文对数据库中的SQL触发器进行了稳态数量的详细分析,探讨了其在实际应用中的重要价值。通过研究触发器在不同场景下的表现,揭示了其在数据完整性和业务逻辑自动化方面的关键作用。此外,还介绍了如何在Ubuntu 22.04环境下配置和使用触发器,以及在Tomcat和SQLite等平台上的具体实现方法。 ... [详细]
author-avatar
路见不平出手打_418
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有