CDH6.3.0下Apache Atlas2.1.0安装与配置
CDH6.3.0下Apache Atlas2.1.0安装与配置
0. 说明
文中的${ATLAS_HOME}, ${HIVE_HOME} 环境变更需要根据实际环境进行替换。
1. 依赖
A. 软件依赖
CDH6.3.0 环境已安装:
- Apache Hadoop
- Apache Zookeeper
- Apache Kafka
- Apache HBase
- Apache Solr
- Apache Hive
2. Apache Atlas包编译
下载源文件包:https://atlas.apache.org/#/Downloads
在IDEA里编译
mvn clean install -Dmaven.test.skip=true
mvn clean package -Pdist -Dmaven.test.skip=true
编译过程中会因为网络、插件等各种问题阻断。多试几次就可以了。
distro/pom.xml 里有个exec-maven-plugin一直编译不过,把他注释掉继续编译就可以了。
编译完成后在distro/target目录下会有如下产物:
distro/target/apache-atlas-{project.version}-bin.tar.gz
distro/target/apache-atlas-{project.version}-hbase-hook.tar.gz
distro/target/apache-atlas-{project.version}-hive-hook.gz
distro/target/apache-atlas-{project.version}-kafka-hook.gz
distro/target/apache-atlas-{project.version}-sources.tar.gz
distro/target/apache-atlas-{project.version}-sqoop-hook.tar.gz
distro/target/apache-atlas-{project.version}-storm-hook.tar.gz
3. 安装配置
A. 传送jar包到服务器并解压
tar -zxf apache-atlas-2.0.0-bin.tar.gz
B. 集成Hbase
a. 在atlas-application.properties文件中修改配置
vim atlas-application.properties
#修改atlas存储数据主机
atlas.graph.storage.hostname=${zk_hostname1}:2181,${zk_hostname2}:2181,${zk_hostname3}:2181
b. 将hbase的配置文件链接到${ATLAS_HOME}
ln -s ${HBASE_HOME}/conf/ ${ATLAS_HOME}/conf/hbase/
c. 在atlas_env.sh文件中添加HBASE_CONF_DIR
vim atlas-env.sh
export HBASE_CONF_DIR=${ATLAS_HOME}/conf/hbase/conf
C. 集成Solr
有个问题,我在非zookeeper结点上执行solrctl命令失败,要在zookeeper结点上执行才成功。
a. 在atlas-application.properties文件中修改配置
vim atlas-application.properties
#修改如下配置
atlas.graph.index.search.solr.zookeeper-url=${zk_hostname1}:2181/solr
b. 实例化atlas配置文件
solrctl instancedir --create atlas ${ATLAS_HOME}/conf/solr
c. 创建collection
solrctl collection --create vertex_index -s 1 -c atlas -r 1
solrctl collection --create edge_index -s 1 -c atlas -r 1
solrctl collection --create fulltext_index -s 1 -c atlas -r 1
D. 集成Kafka
a. 在atlas-application.properties文件中修改配置
vim atlas-application.properties
######### Notification Configs #########
atlas.notification.embedded=false
atlas.kafka.zookeeper.connect=${zk_hostname1}:2181,${zk_hostname2}:2181,${zk_hostname3}:2181
atlas.kafka.bootstrap.servers=${kafka_hostname1}:9092,${kafka_hostname2}:9092,${kafka_hostname2}:9092
atlas.kafka.zookeeper.session.timeout.ms=4000
atlas.kafka.zookeeper.connection.timeout.ms=2000
atlas.kafka.enable.auto.commit=true
b. 在启动好的kafka集群中创建Topic
kafka-topics --zookeeper ${zk_hostname1}:2181 --create --replication-factor 3 --partitions 3 --topic _HOATLASOK
kafka-topics --zookeeper ${zk_hostname1}:2181 --create --replication-factor 3 --partitions 3 --topic ATLAS_ENTITIES
E. Atlas配置
a.在atlas-application.properties文件中修改配置
因为CDH里21000端口被Impala占用了,这里把端口改为21001
vim atlas-application.properties
#Server port configuration
atlas.server.http.port=21001
######### Server Properties #########
atlas.rest.address=http://hadoop102:21001
#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.zookeeper.quorum=${zk_hostname1}:2181,${zk_hostname2}:2181,${zk_hostname3}:2181
F. 集成Hive
a. 在atlas-application.properties文件中修改配置
vim atlas-application.properties
######### Hive Hook Configs #######
atlas.hook.hive.synchronous=false
atlas.hook.hive.numRetries=3
atlas.hook.hive.queueSize=10000
atlas.cluster.name=primary
b. 将atlas-application.properties文件夹复制到hive/conf目录下
cp ${ATLAS_HOME}/conf/atlas-application.properties ${HIVE_HOME}/conf
c. 将atlas-application.properties配置文件加入到atlas-plugin-classloader-2.0.0.jar中
zip -u ${ATLAS_HOME}/hook/hive/atlas-plugin-classloader-2.0.0.jar ${ATLAS_HOME}/conf/atlas-application.properties
d. 在CDH中配置hive-site
- 修改 hive-site.xml
<property>
<name>hive.exec.post.hooks</name>
<value>org.apache.atlas.hive.hook.HiveHook</value>
</property>
- 修改 hive-env.sh 的 Gateway 客户端环境高级配置代码段(安全阀)
HIVE_AUX_JARS_PATH=/usr/local/src/atlas/apache-atlas-2.0.0/hook/hive
- 修改 HIVE_AUX_JARS_PATH
- 修改 hive-site.xml 的 HiveServer2 高级配置代码段(安全阀)
<property>
<name>hive.exec.post.hooks</name>
<value>org.apache.atlas.hive.hook.HiveHook</value>
</property>
<property>
<name>hive.reloadable.aux.jars.path</name>
<value>/usr/local/src/atlas/apache-atlas-2.0.0/hook/hive</value>
</property>
- 修改 HiveServer2 环境高级配置代码段
HIVE_AUX_JARS_PATH=/usr/local/src/atlas/apache-atlas-2.0.0/hook/hive
e.在CM页面重新启动Hive相关服务
重启后检查下第c步copy的配置文件还在不,不在的话,再copy一次
G.分发atlas软件包到各个节点
scp -r /usr/local/src/atlas/apache-atlas-2.0.0 root@cdh02.cm:/usr/local/src/atlas/
scp -r /usr/local/src/atlas/apache-atlas-2.0.0 root@cdh02.cm:/usr/local/src/atlas/
4. 启动与关闭
A. 启动
cd ${ATLAS_HOME}
bin/atlas_start.py
输入账户密码 user:admin password:admin
访问地址 http://${HOST_NAME}:21001
B. 关闭
cd ${ATLAS_HOME}
bin/atlas_stop.py
5.导入Hive元数据
- 所有节点添加hive环境变量
vim /etc/profile
#>>>
#hive
export HIVE_HOME=/opt/cloudera/parcels/CDH-6.2.0-1.cdh6.2.0.p0.967373/lib/hive
export HIVE_CONF_DIR=/etc/hive/conf
export PATH=$HIVE_HOME/bin:$PATH
#<<<
source /etc/profile
- 执行atlas脚本
cd ${ATLAS_HOME}
bin/imort_hive.sh
输入账户密码 user:admin password:admin
注意:CDH6.3.0安装的HIVE版本为2.1.0, 但Atlas 2.1.0版本中编译用的HIVE版本为3.x的。
在执行import_hive.sh时会报找不到方法的错。需要修改下源代码里的方法,重新编译包hive-bridge-2.1.0.jar
所需修改的项目位置:apache-atlas-sources-2.1.0\addons\hive-bridge
org/apache/atlas/hive/bridge/HiveMetaStoreBridge.java 577行
修改后重新编译,将apache-atlas-sources-2.1.0/addons/hive-bridge/target/hive-bridge-2.1.0.jar
替换${ATLAS_HOME}/hook/hive/atlas-hive-plugin-impl/hive-bridge-2.1.0.jar
CDH6.3.0下Apache Atlas2.1.0安装与配置的更多相关文章
- Windows下Apache与PHP的安装与配置
下载Apache Apache的官网(http://httpd.apache.org) 1.把解压后的Apache拷贝到要安装的目标位置.建议拷贝到C盘根目录下,因为这是其默认设置. 2.我选择的是拷 ...
- CentOS下Apache+SVN+LDAP的安装与配置
上班接近4个月了,在公司做配置管理工程师,主要是在Linux下对公司的源代码以及项目发布进行管理.4个月接触了好多新知识,也对各种工具的集成使用搞得云里来雾里去的,所以打算自己搭建一套环境,进行测试. ...
- Linux下MyCat和MyCat_web的安装和配置
Linux下MyCat和MyCat_web的安装和配置 Mycat 是一个数据库分库分表中间件 Mycat web 可以对 Mycat进行监控,这里分享一下 Mycat web 的搭建过程 详细内容可 ...
- Sublime Text3下的markdown插件的安装及配置
Sublime Text3下的markdown插件的安装及配置 安装准备--安装Package Control 安装MarkdownEditing 安装Markdown Preview或OmniMar ...
- Centos 7.3下 Linux For SQL Server安装及配置介绍
Centos 7.3下 Linux For SQL Server安装及配置介绍 高文龙关注13人评论2828人阅读2017-03-05 21:46:21 Centos 7.3下Linux For SQ ...
- Apache+php+mysql的安装与配置 - 之三(Apache的虚拟主机配置)
Apache+php+mysql的安装与配置 - 之三(Apache的虚拟主机配置) Apache核心(Core)配置 VirtualHost 语法 <VirtualHost addr[:por ...
- CentOS 下 Java 的下载、安装、配置
CentOS 下 Java 的下载.安装.配置 系统: CentOS 7 x86_64 Java 版本: 1.8.0_171 本文将 Java 目录放在 /usr/local/java 文件夹下,读者 ...
- 在VC6.0下如何调用Delphi5.0开发的进程内COM
因为本人的语言水平很差,考大学时150的总分,我考了个60分.外语也是,初中及格过一次,会考及格过一次.其它的时间好像从没有及格过.所以我不写文章,因我一百字的文章给我写,至少要出八九个错别字.哈哈… ...
- LinuxMint下Apache Http源码安装过程
1. 源码包下载 Apache Http安装要求必须安装APR.APR-Util.PCRE等包. Apache Http包下载地址:http://httpd.apache.org/download.c ...
随机推荐
- MindManager使用教程:如何导出HTML5交互式导图
Mindmanager思维导图软件有着友好的用户界面以及丰富的思维导图制作功能.再搭配与Microsoft 软件的无缝集成功能,使得这款思维导图软件越来越受到职场人士的喜爱. 不仅是作为制作思维导图的 ...
- jQuery 第二章 实例方法 DOM操作选择元素相关方法
进一步选择元素相关方法: .get() .eq() .find() .filter() .not() .is() .has() .add()集中操作 .end()回退操作 .get() $(&qu ...
- JPA query between的多种方式(mongodb为例)
背景 JPA+MongoDB查询,给定一段时间范围查询分页结果,要求时间范围包含. Page<Log> findByCtimeBetweenOrderByCtime( LocalDateT ...
- laravel 返回SQL
默认情况下,toSql 获取到的 sql 里面的参数使用 "?" 代替的,如下: 1 DB::table('user')->where('id', 1)->toSql( ...
- 接上一篇:(二) IOC的概念和作用
IOC的概念和作用 控制反转(IoC:Inversion of Control)把创建对象的权利转交给框架(框架的重要特征),并非面向对象的专用术语. 它包含依赖注入(DI:Dependency In ...
- 安全的字符串拷贝strcpy_s的实现与理解
在C标准库中提供了字符串拷贝函数strcpy,而微软则为为它提供了一个更安全的版本strcpy_s,其函数原型为 errno_t __cdecl strcpy_s( char* _Destinatio ...
- pixi.js持续渲染页面
Pixi是一个超快的2D渲染引擎,通过Javascript和Html技术创建动画或管理交互式图像,从而制作游戏或应用. 项目地址:https://github.com/pixijs/pixi.js A ...
- 利用Postman和Chrome的开发者功能探究项目
利用Postman和Chrome的开发者功能探究项目 controller层研究 前两天忙着写开题报告,没有来得及做项目,今天继续研究一下这个项目. 上次研究到后端的DAO层,研究了一下后端和数据库交 ...
- Linux无法新增用户
1.查看当前用户是否有权限创建用户 2.磁盘空间不足,vi打开/etc/passwd 报: E297: Write error in swap file"adduser.sh" 1 ...
- AndroidStudio中默认不导入org.apache.http等包的解决方法
参考:http://www.cnblogs.com/xiadongqing/p/5942459.html Eclipse ADT中默认引入了org.apache.http包,而AndroidStudi ...