Atlas 2.2.0源码编译及安装步骤
Atlas 2.2.0源码编译及安装步骤
- 一、源码编译
- 1. 下载源码
- 2. 前置环境安装
- 3. 修改版本号
- 4. 修改源码中 atlas与kafka版本兼容问题
- 5. 开始编译
- 6. 问题锦集
- 二、安装步骤
- 1. 安装解压Atlas
- 2. 集成HBase
- 3. 集成Solr
- 4. 集成Kafka
- 5. Atlas-Server配置
- 6. 集成Hive
- 7. 集成Sqoop[待完善]
一、源码编译
1. 下载源码
wget http://dlcdn.apache.org/atlas/2.2.0/apache-atlas-2.2.0-sources.tar.gz
2. 前置环境安装
- 编译环境linux centos7.6
- 要求 maven3.5.*+
- jdk1.8.322
- 尽量满足linux可以访问外网,因为需要下载jar,否则会很慢,可能会报错
- zookeeper、hadoop、hbase、solr需要提前安装好
3. 修改版本号
- 修改源码中自己集群环境中版本号,【sqoop尽量不要修改,1.4.7版本与atlas兼容有问题】
- 如果业务库是低版本的,建议以高版本为主,atlas所支持的组件版本应该是向下兼容的
<properties><akka.version>2.3.7</akka.version><antlr4.plugin.version>4.5</antlr4.plugin.version><antlr4.version>4.7</antlr4.version><aopalliance.version>1.0</aopalliance.version><aspectj.runtime.version>1.8.7</aspectj.runtime.version><atlas.surefire.options></atlas.surefire.options><calcite.version>1.16.0</calcite.version><checkstyle.failOnViolation>false</checkstyle.failOnViolation><codehaus.woodstox.stax2-api.version>3.1.4</codehaus.woodstox.stax2-api.version><commons-cli.version>1.4</commons-cli.version><commons-codec.version>1.14</commons-codec.version><commons-collections.version>3.2.2</commons-collections.version><commons-collections4.version>4.4</commons-collections4.version><commons-conf.version>1.10</commons-conf.version><commons-conf2.version>2.2</commons-conf2.version><commons-el.version>1.0</commons-el.version><commons-io.version>2.6</commons-io.version><commons-lang.version>2.6</commons-lang.version><commons-logging.version>1.1.3</commons-logging.version><commons-validator.version>1.6</commons-validator.version><curator.version>4.3.0</curator.version><doxia.version>1.8</doxia.version><dropwizard-metrics>3.2.2</dropwizard-metrics><elasticsearch.version>6.8.15</elasticsearch.version><entity.repository.impl>org.apache.atlas.repository.audit.InMemoryEntityAuditRepository</entity.repository.impl><enunciate-maven-plugin.version>2.13.2</enunciate-maven-plugin.version><failsafe.version>2.18.1</failsafe.version><falcon.version>0.8</falcon.version><fastutil.version>6.5.16</fastutil.version><graph.index.backend>solr</graph.index.backend><graph.storage.backend>berkeleyje</graph.storage.backend><gson.version>2.5</gson.version><guava.version>25.1-jre</guava.version><guice.version>4.1.0</guice.version><hadoop.hdfs-client.version>${hadoop.version}</hadoop.hdfs-client.version><hadoop.version>3.2.2</hadoop.version><hbase.version>2.4.9</hbase.version><hive.version>3.1.2</hive.version><hppc.version>0.8.1</hppc.version><httpcomponents-httpclient.version>4.5.13</httpcomponents-httpclient.version><httpcomponents-httpcore.version>4.4.13</httpcomponents-httpcore.version><jackson.databind.version>2.10.5</jackson.databind.version><jackson.version>2.10.5</jackson.version><janus.version>0.5.3</janus.version><javax-inject.version>1</javax-inject.version><javax.servlet.version>3.1.0</javax.servlet.version><jersey-spring.version>1.19.4</jersey-spring.version><jersey.version>1.19</jersey.version><jettison.version>1.3.7</jettison.version><jetty-maven-plugin.stopWait>10</jetty-maven-plugin.stopWait><jetty.version>9.4.31.v20200723</jetty.version><joda-time.version>2.10.6</joda-time.version><json.version>3.2.11</json.version><jsr.version>1.1</jsr.version><junit.version>4.13</junit.version><kafka.scala.binary.version>2.12</kafka.scala.binary.version><kafka.version>2.8.0</kafka.version><keycloak.version>6.0.1</keycloak.version><log4j.version>1.2.17</log4j.version><log4j2.version>2.13.3</log4j2.version><lucene-solr.version>8.6.3</lucene-solr.version><maven-site-plugin.version>3.7</maven-site-plugin.version><MaxPermGen>512m</MaxPermGen><node-for-v2.version>v12.16.0</node-for-v2.version><npm-for-v2.version>6.13.7</npm-for-v2.version><opencsv.version>5.0</opencsv.version><paranamer.version>2.7</paranamer.version><PermGen>64m</PermGen><poi-ooxml.version>4.1.1</poi-ooxml.version><poi.version>4.1.1</poi.version><project.build.dashboardv2.gruntBuild>build-minify</project.build.dashboardv2.gruntBuild><project.build.dashboardv3.gruntBuild>build-minify</project.build.dashboardv3.gruntBuild><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><projectBaseDir>${project.basedir}</projectBaseDir><skipCheck>false</skipCheck><skipDocs>true</skipDocs><skipEnunciate>false</skipEnunciate><skipITs>false</skipITs><skipSite>true</skipSite><skipTests>false</skipTests><skipUTs>false</skipUTs><slf4j.version>1.7.30</slf4j.version><solr-test-framework.version>8.6.3</solr-test-framework.version><solr.version>7.7.3</solr.version><spray.version>1.3.1</spray.version><spring.security.version>4.2.17.RELEASE</spring.security.version><spring.version>4.3.29.RELEASE</spring.version><sqoop.version>1.4.6.2.3.99.0-195</sqoop.version><storm.version>2.1.0</storm.version><surefire.forkCount>2C</surefire.forkCount><surefire.version>2.18.1</surefire.version><testng.version>6.9.4</testng.version><tinkerpop.version>3.4.10</tinkerpop.version><woodstox-core.version>5.0.3</woodstox-core.version><zookeeper.version>3.7.0</zookeeper.version></properties>
4. 修改源码中 atlas与kafka版本兼容问题
位置在:src/main/java/org/apache/atlas/kafka/EmbeddedKafkaServer.java文件中第139行中的代码
kafkaServer = new KafkaServer(KafkaConfig.fromProps(brokerConfig), Time.SYSTEM, Option.apply(this.getClass().getName()), false);
5. 开始编译
# 配置一下运行时jvm内存,防止内存溢出export MAVEN_OPTS="-Xms2g -Xmx2g -XX:MaxPermSize=512M -XX:ReservedCodeCacheSize=512m"# 如果使用内置的hbase 和 solr组件的话,就使用下面的编译语句mvn -clean -DskipTests package -Pdist,embedded-hbase-solr# 如果使用自己安装的组件,那就使用mvn -clean -DskipTests package -Pdist
6. 问题锦集
- 包找不到
- 使用外网下载
- 自己找jar及所依赖的文件,下载后放入到自己配置的mavne仓库中,然后重新编译一下,记得把之前*.lastupdata 文件删除
二、安装步骤
编译成功后,jar存放位置在: /opt/soft/apache-atlas-sources-2.2.0/distro/target
1. 安装解压Atlas
- 解压安装包到安装目录
tar -zxvf /opt/soft/apache-atlas-sources-2.2.0/distro/target/apache-atlas-2.2.0-bin.tar.gz -C /opt/apps/
2. 集成HBase
- 修改 $ATLAS_HOME/conf/
atlas-application.properties
配置文件atlas.graph.storage.backend=hbase2atlas.graph.storage.hbase.table=apache_atlas_janus#Hbase#For standalone mode , specify localhost#for distributed mode, specify zookeeper quorum hereatlas.graph.storage.hostname=hadoop01:2181,hadoop02:2181,hadoop03:2181 # zk集群地址atlas.graph.storage.hbase.regions-per-server=1atlas.graph.storage.lock.wait-time=10000
- 修改 $ATLAS_HOME/conf/
atlas-env.sh
配置文件,【最后追加HBASE_HOME/conf配置文件】# 添加HBASE_CONF_DIR路径地址,也可以配置到/etc/proflie export HBASE_CONF_DIR=$HBASE_HOME/conf
3. 集成Solr
- 修改 $ATLAS_HOME/conf/
atlas-application.properties
配置文件# Graph Search Indexatlas.graph.index.search.backend=solr#Solr#Solr cloud mode propertiesatlas.graph.index.search.solr.mode=cloudatlas.graph.index.search.solr.zookeeper-url=hadoop01:2181,hadoop02:2181,hadoop03:2181 # zk集群地址atlas.graph.index.search.solr.zookeeper-connect-timeout=60000atlas.graph.index.search.solr.zookeeper-session-timeout=60000atlas.graph.index.search.solr.wait-searcher=true
4. 集成Kafka
- 修改 $ATLAS_HOME/conf/
atlas-application.properties
配置文件######### Notification Configs ########## 通知开关关闭atlas.notification.embedded=false# kafka 数据存储位置atlas.kafka.data=/opt/data/kafka# zk中kafka存储的位置atlas.kafka.zookeeper.connect=hadoop01:2181,hadoop02:2181,hadoop03:2181/kafka# kafka的集群通讯位置atlas.kafka.bootstrap.servers=hadoop01:9092,hadoop02:9092,hadoop03:9092
5. Atlas-Server配置
- 修改 $ATLAS_HOME/conf/
atlas-application.properties
配置文件######### Server Properties ######### # 修改atlas WebUI访问页面 atlas.rest.address=http://hadoop01:21000 # If enabled and set to true, this will run setup steps when the server starts # 是否每次启动需要初始化 atlas.server.run.setup.on.start=false ######### Entity Audit Configs ######### atlas.audit.hbase.tablename=apache_atlas_entity_audit atlas.audit.zookeeper.session.timeout.ms=1000 # hbase zk集群地址 atlas.audit.hbase.zookeeper.quorum=hadoop01:2181,hadoop02:2181,hadoop03:2181
- 修改
log4j.xml
文件 【将以下代码解除注释,就代表这可以记录性能指标】<!-- Uncomment the following for perf logs --><appender name="perf_appender" class="org.apache.log4j.DailyRollingFileAppender"><param name="file" value="${atlas.log.dir}/atlas_perf.log" /><param name="datePattern" value="'.'yyyy-MM-dd" /><param name="append" value="true" /><layout class="org.apache.log4j.PatternLayout"><param name="ConversionPattern" value="%d|%t|%m%n" /></layout></appender><logger name="org.apache.atlas.perf" additivity="false"><level value="debug" /><appender-ref ref="perf_appender" /></logger>
6. 集成Hive
修改 $ATLAS_HOME/conf/
atlas-application.properties
配置文件######### Hive Hook Configs ######### hive自动同步测试atlas.hook.hive.synchronous=false# 重试次数3atlas.hook.hive.numRetries=3# 队列大小10000atlas.hook.hive.queueSize=10000# 集群名称atlas.cluster.name=primary
修改Hive的配置文件【$HIVE_HOME/conf/hive-site.xml】,在后面追加上,代表着hive启动hook的钩子程序
<property><name>hive.exec.post.hooks</name><value>org.apache.atlas.hive.hook.HiveHook</value></property>
解压
apache-atlas-2.1.0-hive-hook.tar.gz
文件,然后将解压后中的文件放入atlas安装目录中tar -zxvf apache-atlas-2.1.0-hive-hook.tar.gzcd apache-atlas-2.1.0-hive-hookcp -r ./* $ATLAS_HOME
修改$HIVE_HOME/conf/
hive-env.sh
文件,将hook的文件路径写入到配置当中export HIVE_AUX_JARS_PATH=$ATLAS_HOME/hook/hive
将atlas的配置文件复制到hive的conf文件中
- 【如果用软连接,会涉及到账号权限问题,这里简单的使用可文件拷贝,避免权限问题】
cp $ATLAS_HOME/conf/atlas-application.properties $HIVE_HOME/conf/
7. 集成Sqoop[待完善]
Atlas 2.2.0源码编译及安装步骤相关推荐
- cmake 编译curl源码_OpenCV4.0 源码编译
之前写过几篇关于OpenCV的博客,都是基于openCV 3.14写的,10月份OpenCV发布了4.0的bate版本,我就切换到4.0版本上来.之后的博客都会是基于4.0版本的.本文主要介绍一下三个 ...
- ambari 2.5.0源码编译安装
参考:https://www.ibm.com/developerworks/cn/opensource/os-cn-bigdata-ambari/index.html Ambari 是什么 Ambar ...
- Android4.0源码编译方法以及错误解决方案
from:http://blog.csdn.net/wanjun8659/article/details/8095664 历时一个星期,终于将android4.0源码编译成功,中间经历了各种曲折,非常 ...
- postgresql 12.0 源码编译安装
postgresql 12.0 源码编译安装 1.安装相关软件包 su - root yum install -y cmake gcc gcc-c++ perl readline readline-d ...
- tesseract-4.0.0源码编译安装
tesseract-4.0.0源码编译安装 安装开发工具 apt-get -y install gcc g++ make cmake autoconf automake libtool pkg-con ...
- python 3.10.0源码编译安装
python 3.10.0源码编译安装 文章目录 python 3.10.0源码编译安装 1. 安装编译依赖工具 2. 下载python 3.10.0 3. 编译安装 Python 4. 体验 1. ...
- ubuntu 环境下调试mysql源码_【转】Ubuntu 16.04下 Mysql 5.7.17源码编译与安装
Ubuntu 16.04下 Mysql5.7.17源码编译与安装 系统环境 一. 系统安装条件 1.cmake MySQL使用cmake跨平台工具预编译源码,用于设置mysql的编译参数. sudo ...
- 源码编译构建安装内核kernel
源码编译构建安装内核kernel 荣涛 2021年10月27日 文档修改日志 日期 修改内容 修改人 备注 2021年10月27日 创建 荣涛 2021年10月28日 添加可能的问题 荣涛 1. 引言 ...
- ROS2 Dashing源码编译和安装
ROS2 Dashing源码编译和安装 安装前的准备 1 2 3 4 5 官方教程: https://index.ros.org/doc/ros2/Installation/Dashing/Linux ...
最新文章
- 什么是“自然语言处理”? 它到底在“处理”些什么?
- redis设置数据库数量databases
- android XMl 解析神奇xstream 五: 把复杂对象转换成 xml ,并写入SD卡中的xml文件
- SQL基础【六、and与or】
- 小程序如何选择云服务器,小程序怎么选择云服务器配置
- Oracle数据到MaxCompute乱码问题详解
- 为什么存取周期大于存取时间_为什么开放存取很重要
- 翼虎 android,福特翼虎成首款同时兼容CarPlay和Android Auto的车型
- 23.卷1(套接字联网API)---高级SCTP套接字编程
- 第五章 调优案列分析与实战(待续)
- js--属性和方法(私有/公有)
- zigbee协议栈学习(0)
- java cropper_Image Cropper 的 JAVA 支持
- python对话框打开文件_python打开文件对话框
- unable to resolve host address
- 【将门创投】图像搜索的前世今生,让你买买买停不下来的淘宝是如何做到所拍即所得的?...
- 《那些年啊,那些事——一个程序员的奋斗史》——94
- 王者服务器维护s24,王者荣耀:体验更新S24数据,征召模式痛点解决,不会再失手了...
- 【vue2】axios请求与axios拦截器的使用详解
- 国内计算机视觉与机器学习研究团队
热门文章
- python爬虫可以用来做什么?
- 为jupyter notebook添加目录(Jupyter安装拓展nbextensions)
- Android 简单的录音静音降噪
- 《用Python编程来做数学题|CSDN创作打卡》
- S7-200 SMART PLC自定义脉冲轴控功能块AxisControl_FB(梯形图)
- Android视频学习(二):数据存储与界面展示2
- 双系统安装ubuntu 22.04 LTS(一步到位)
- springboot连接MySQL使用SSL证书
- Java Controller自动urlDecode的坑
- 前端路线--Vue(day01)