如何编译安装Atlas 2.2.0并集成ElasticSearch导入Hive数据?

2026-05-25 17:311阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1045个文字,预计阅读时间需要5分钟。

如何编译安装Atlas 2.2.0并集成ElasticSearch导入Hive数据?

在数据仓库项目中,我们常选用Apache Atlas进行数据治理。本文结合作者在生产环境中遇到的问题及解决方案,完整地介绍了Atlas的编译、部署和使用过程。1、编译阶段:组件信息

在数仓项目中,我们常常会选择Apache Atlas进行数据的治理。本文结合笔者在生产环境中遇到的常见问题及解决方法,整合出完整的Atlas编译、部署及使用过程。 1、编译阶段

组件信息:

如何编译安装Atlas 2.2.0并集成ElasticSearch导入Hive数据?

组件名称 版本 Atals 2.2.0 HBase 2.2.6 Hive 3.1.2 Hadoop 3.1.1 Kafka 2.11_2.4.1 Zookeeper 3.6.2 ElasticSearch 7.12.1


架构: x86 (已知arm编译时会报node-sass缺少的问题,git上没有对应arm架构的包)
操作系统:CentOS 7.6

说明:
1、编译不包括其内嵌的HBase和Solr,只编译Atlas本身
2、下面的步骤中有些并非编译过程报错,而是具体使用中或导入hive元数据时报的错,提前修改

步骤:
step1:官网下载Atlas-2.2.0源码,解压

step2:配个国内源。可以在maven的conf目录下settings.xml里配置,也可以在项目的pom.xml里配置,这里贴阿里源做参考

step3:提前从Here下一个nodejs的包放到maven仓库下,目录参考
$MAVEN_REPOSITORY/com/github/eirslett/node/12.16.0/node-12.16.0-linux-x64.tar.gz

注意下下来的包名字叫node-v12.16.0-linux-x64.tar.gz,放在maven仓库里的时候要把里面的v去掉。如果不提前下,编译时候自己下载的速度很慢

step4:主pom.xml里添加下面两个依赖

<dependency> <groupId>org.restlet.jee</groupId> <artifactId>org.restlet</artifactId> <version>2.4.0</version> </dependency> <dependency> <groupId>org.restlet.jee</groupId> <artifactId>org.restlet.ext.servlet</artifactId> <version>2.4.0</version> </dependency>


step5:修改./intg/src/main/java/org/apache/atlas/ApplicationProperties.java
注释掉line 365 LOG.info("Setting " + SOLR_WAIT_SEARCHER_CONF + " = " + getBoolean(SOLR_WAIT_SEARCHER_CONF));

这步是因为我们采用es作为查询引擎,solr的相关配置都会注释掉,而这行调用会在导入hive元数据的时候报错


step6:把项目里的jsr311-api改成javax.ws.rs-api (6处,可以直接在项目目录下grep -rn搜), 并修改主pom.xmljsr.version为2.0.1

这步主要影响六个支持的组件的数据导入及后续,包括hbase、hive、sqoop、impala、falcon、storm
主要原因:jsr311-api包中javax.ws.rs.core包中没有Link类,而Atlas以HBase作为元数据存储,HBase本身使用的为javax.ws.rs-api包中的core包,其中有Link类,所以调用脚本导入数据时会报以下错误

step7:执行编译命令mvn clean package -DskipTests -Drat.skip=true -Pdist

编译后的包在./distro/target目下,server包即为Atlas部署包,bin包为集成了常用hook(如hbase-hook)的部署包

2、部署阶段

前置条件:
集群内有正常运行且可用的hadoop、hive、hbase、kafka、zk、es,且atlas所在节点必须有hbase及hive的配置文件目录

步骤:
step1:解压atlas-bin包(这里以/data/apps为例,顺便改个名

tar -zxvf apache-atlas-2.2.0-bin.tar.gz -C /data/apps mv apache-atlas-2.2.0 atlas-2.2.0


step2:解压hook包(这里以hive-hook为例),并拷贝内容到atlas安装目录下

tar -zxvf apache-atlas-2.2.0-hive-hook.tar.gz -C /data/apps/ /usr/bin/cp /data/apps/apache-atlas-hive-hook-2.2.0/* /data/apps/atlas-2.2.0/


step3:修改atlas配置文件(有的配置是已有的,修改即可;有的配置没有,需要加)
atlas-application.properties:

#atlas server config atlas.rest.address=atlas-ip:21000 atlas.server.run.setup.on.start=false #hbase config atlas.audit.hbase.tablename=apache_atlas_entiry_audit atuls.audit.zookeeper.session.timeout.ms=1000 atlas.audit.hbase.zookeeper.quorum=zk地址 atlas.graph.storage.hostname=zk地址 #solr config #注释掉所有和solr相关的配置项 #es config atlas.graph.index.search.backend=elasticsearch atlas.graph.index.search.hostname=es-ip:9200 atlas.graph.index.search.elasticsearch.client-only=true atlas.graph.index.search.elasticsearch.www.cnblogs.com/yutianzixia/p/16257916.html。如有遗漏或问题欢迎补充指正

本文共计1045个文字,预计阅读时间需要5分钟。

如何编译安装Atlas 2.2.0并集成ElasticSearch导入Hive数据?

在数据仓库项目中,我们常选用Apache Atlas进行数据治理。本文结合作者在生产环境中遇到的问题及解决方案,完整地介绍了Atlas的编译、部署和使用过程。1、编译阶段:组件信息

在数仓项目中,我们常常会选择Apache Atlas进行数据的治理。本文结合笔者在生产环境中遇到的常见问题及解决方法,整合出完整的Atlas编译、部署及使用过程。 1、编译阶段

组件信息:

如何编译安装Atlas 2.2.0并集成ElasticSearch导入Hive数据?

组件名称 版本 Atals 2.2.0 HBase 2.2.6 Hive 3.1.2 Hadoop 3.1.1 Kafka 2.11_2.4.1 Zookeeper 3.6.2 ElasticSearch 7.12.1


架构: x86 (已知arm编译时会报node-sass缺少的问题,git上没有对应arm架构的包)
操作系统:CentOS 7.6

说明:
1、编译不包括其内嵌的HBase和Solr,只编译Atlas本身
2、下面的步骤中有些并非编译过程报错,而是具体使用中或导入hive元数据时报的错,提前修改

步骤:
step1:官网下载Atlas-2.2.0源码,解压

step2:配个国内源。可以在maven的conf目录下settings.xml里配置,也可以在项目的pom.xml里配置,这里贴阿里源做参考

step3:提前从Here下一个nodejs的包放到maven仓库下,目录参考
$MAVEN_REPOSITORY/com/github/eirslett/node/12.16.0/node-12.16.0-linux-x64.tar.gz

注意下下来的包名字叫node-v12.16.0-linux-x64.tar.gz,放在maven仓库里的时候要把里面的v去掉。如果不提前下,编译时候自己下载的速度很慢

step4:主pom.xml里添加下面两个依赖

<dependency> <groupId>org.restlet.jee</groupId> <artifactId>org.restlet</artifactId> <version>2.4.0</version> </dependency> <dependency> <groupId>org.restlet.jee</groupId> <artifactId>org.restlet.ext.servlet</artifactId> <version>2.4.0</version> </dependency>


step5:修改./intg/src/main/java/org/apache/atlas/ApplicationProperties.java
注释掉line 365 LOG.info("Setting " + SOLR_WAIT_SEARCHER_CONF + " = " + getBoolean(SOLR_WAIT_SEARCHER_CONF));

这步是因为我们采用es作为查询引擎,solr的相关配置都会注释掉,而这行调用会在导入hive元数据的时候报错


step6:把项目里的jsr311-api改成javax.ws.rs-api (6处,可以直接在项目目录下grep -rn搜), 并修改主pom.xmljsr.version为2.0.1

这步主要影响六个支持的组件的数据导入及后续,包括hbase、hive、sqoop、impala、falcon、storm
主要原因:jsr311-api包中javax.ws.rs.core包中没有Link类,而Atlas以HBase作为元数据存储,HBase本身使用的为javax.ws.rs-api包中的core包,其中有Link类,所以调用脚本导入数据时会报以下错误

step7:执行编译命令mvn clean package -DskipTests -Drat.skip=true -Pdist

编译后的包在./distro/target目下,server包即为Atlas部署包,bin包为集成了常用hook(如hbase-hook)的部署包

2、部署阶段

前置条件:
集群内有正常运行且可用的hadoop、hive、hbase、kafka、zk、es,且atlas所在节点必须有hbase及hive的配置文件目录

步骤:
step1:解压atlas-bin包(这里以/data/apps为例,顺便改个名

tar -zxvf apache-atlas-2.2.0-bin.tar.gz -C /data/apps mv apache-atlas-2.2.0 atlas-2.2.0


step2:解压hook包(这里以hive-hook为例),并拷贝内容到atlas安装目录下

tar -zxvf apache-atlas-2.2.0-hive-hook.tar.gz -C /data/apps/ /usr/bin/cp /data/apps/apache-atlas-hive-hook-2.2.0/* /data/apps/atlas-2.2.0/


step3:修改atlas配置文件(有的配置是已有的,修改即可;有的配置没有,需要加)
atlas-application.properties:

#atlas server config atlas.rest.address=atlas-ip:21000 atlas.server.run.setup.on.start=false #hbase config atlas.audit.hbase.tablename=apache_atlas_entiry_audit atuls.audit.zookeeper.session.timeout.ms=1000 atlas.audit.hbase.zookeeper.quorum=zk地址 atlas.graph.storage.hostname=zk地址 #solr config #注释掉所有和solr相关的配置项 #es config atlas.graph.index.search.backend=elasticsearch atlas.graph.index.search.hostname=es-ip:9200 atlas.graph.index.search.elasticsearch.client-only=true atlas.graph.index.search.elasticsearch.www.cnblogs.com/yutianzixia/p/16257916.html。如有遗漏或问题欢迎补充指正