Atlas 采集 HIVE过程搭建

Atlas 采集 HIVE过程搭建

一、参照文章

http://atlas.apache.org/#/HookHive
https://www.cnblogs.com/xizhunet/p/14303932.html#271-%E9%85%8D%E7%BD%AEhive-hook

二、环境清单

● atlas-2.1.0( zookeeper, kafka)
● hive-3.1.2

三、安装步骤

● 将atlas的conf的atlas-applicaiton.properties和该版本的apache-atlas-2.1.0-hive-hook.tar.gz,复制到hive服务的服务器上
● 解压apache-atlas-2.1.0-hive-hook.tar.gz压缩文件,并把里面的hook文件夹拿出来

tar -zxvf apache-atlas-2.1.0-hive-hook.tar.gz
cp apache-atlas-hive-hook-2.1.0/hook ./
ll ./
 # 此时文件夹应该有一个hook目录,在我的电脑上是/software/hook

● 进入hive的conf,添加一个hive-site.xml文件。内容请包含下述信息

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
  			<!-- 重要:在site文件表明atlas-hook信息 -->
        <property>
                <name>hive.exec.post.hooks</name>
                <value>org.apache.atlas.hive.hook.HiveHook</value>
        </property>
  
        <property>
                <name>hive.metastore.warehouse.dir</name>
                <!-- 注意这里写刚刚新创文件的路径 -->
                <value>/softdata/hive</value>
        </property>
        <property>
                <name>hive.metastore.local</name>
                <value>true</value>
        </property>
        <property>
                <name>javax.jdo.option.ConnectionURL</name>
          	    <!-- 这里自己搓自己的mysql的ip地址 -->
                <value>jdbc:mysql://127.0.0.1:3306/hive?createDatabaseIfNotExist=true</value>
        </property>
        <property>
                <name>javax.jdo.option.ConnectionDriverName</name>
                <value>com.mysql.cj.jdbc.Driver</value>
        </property>
        <property>
                <name>javax.jdo.option.ConnectionUserName</name>
                <value>root</value>
        </property>
        <property>
                <name>javax.jdo.option.ConnectionPassword</name>
								<!-- 这里搓自己的mysql账号和密码 -->
  	        		<value>123456</value>
        </property>
</configuration>

● 修改hive/conf下的hive-env.sh文件,修改下述参数

# HADOOP根目录
HADOOP_HOME=/software/hadoop

# Hive配置文件目录
export HIVE_CONF_DIR=/software/hive/conf

# atlas-hook 解压之后拿出来的路已经
export HIVE_AUX_JARS_PATH=/software/hook/hive

● 修改atlas-application.properties文件
需要修改属性在官网已经说明过了,直接贴出来。没有的属性需要添加。

atlas.kafka.zookeeper.connect 属性需要注意。这个zookeeper应该是atlas监听的kafka注册的zookeeper。
atlas.hook.hive.synchronous=false # whether to run the hook synchronously. false recommended to avoid delays in Hive query completion. Default: false
atlas.hook.hive.numRetries=3      # number of retries for notification failure. Default: 3
atlas.hook.hive.queueSize=10000   # queue size for the threadpool. Default: 10000
atlas.cluster.name=primary # clusterName to use in qualifiedName of entities. Default: primary
atlas.kafka.zookeeper.connect=atlas-kafka-zookeeperIp:port  # Zookeeper connect URL for Kafka. Example: localhost:2181
atlas.kafka.zookeeper.connection.timeout.ms=30000 # Zookeeper connection timeout. Default: 30000
atlas.kafka.zookeeper.session.timeout.ms=60000    # Zookeeper session timeout. Default: 60000
atlas.kafka.zookeeper.sync.time.ms=20             # Zookeeper sync time. Default: 20

● 将atlas-application.properties文件放入hook包内的**.jar包中。(和官网不一致,参考第二个文章)
不能将文件放入hive/conf 目录,需要放入hook/hive包内的atlas-plugin-classloader-2.1.0.jar中,因为hook读取该文件是通过classpath读取的。
注意:这个时候应该在atlas-application.properties同级目录下执行。防止上传文件后,文件路径有无。

# 上传
zip -u /software/hook/hive/atlas-plugin-classloader-2.1.0.jar atlas-application.properties

# 检查是否上传成功
jar -vtf /software/hook/hive/atlas-plugin-classloader-2.1.0.jar

# 如果出现类似11783 Sat Sep 18 14:21:22 CST 2021 atlas-application.properties的消息即可
# 但是application.properties前面不应该有任何目录。

● 再将atlas-applicaiton.properties文件复制一份到hive/conf中,并启动import-hive.sh程序。初始化atlas

apache-atlas-hive-hook-2.1.0/hook-bin/import-hive.sh

如果出现需要填写atlas账号密码,并且出现下述日志。说明初始数据导入成功
在这里插入图片描述

● 启动hive

hive/bin/hive

四、测试
进入hive中创建一个表,可以到atlas的hive实体中查看是否存在。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值