CentOS7虚拟机部署元数据管理Atlas

1. Atlas 概述

Apache Atlas 为组织提供开放式元数据管理和治理功能,用以构建其数据资产目录,对 这些资产进行分类和管理,并为数据分析师和数据治理团队,提供围绕这些数据资产的协作功能。
1)表与表之间的血缘依赖



2)字段与字段之间的血缘依赖


2. Atlas 架构原理

2. Atlas 安装

1)Atlas 官网地址:https://atlas.apache.org/
2)文档查看地址:https://atlas.apache.org/2.1.0/index.html
3)下载地址:https://www.apache.org/dyn/closer.cgi/atlas/2.1.0/apache-atlas-2.1.0-sources.tar.gz

2.1 安装前环境准备

Atlas 安装分为:集成自带的 HBase + Solr;集成外部的 HBase + Solr。通常企业开发中 选择集成外部的 HBase + Solr,方便项目整体进行集成操作。
以下是Atlas所以依赖的环境及集群规划。本文只包含Solr和Atlas的安装指南。


1)安装JDK,Hadoop参考
https://www.jianshu.com/p/2a947044f2dc
2)安装 Zookeeper参考
https://www.jianshu.com/p/8935a8a34d6a
3)安装 Kafka参考
https://www.jianshu.com/p/a493130ca48a
4)安装 Hbase参考
https://www.jianshu.com/p/5613ceb3ab38
5)安装Hive参考
https://www.jianshu.com/p/741fa67cf66b

2.2 安装Solr-7.7.3
  1. 在每台节点创建系统用户solr
[root@bigdata101 src]# useradd solr
[root@bigdata101 src]# echo solr | passwd --stdin solr
更改用户 solr 的密码 。
passwd:所有的身份验证令牌已经成功更新。
(superset) [root@bigdata102 ~]# useradd solr
(superset) [root@bigdata102 ~]# echo solr | passwd --stdin solr
更改用户 solr 的密码 。
passwd:所有的身份验证令牌已经成功更新。
[root@bigdata103 ~]# echo solr | passwd --stdin solr
更改用户 solr 的密码 。
passwd:所有的身份验证令牌已经成功更新。
  1. 解压solr-7.7.3.tgz,并改名为solr
[root@bigdata101 src]# tar -zxvf solr-7.7.3.tgz 
[root@bigdata101 src]# mv solr-7.7.3/ solr
  1. 修改solr目录的所有者为solr用户
[root@bigdata101 src]# chown -R solr:solr solr
  1. 修改solr配置文件
    修改solr.in.sh文件中的以下属性
[root@bigdata101 src]# vim solr/bin/solr.in.sh 
ZK_HOST="bigdata101:2181,bigdata102:2181,bigdata103:2181"  
  1. 分发solr
[root@bigdata101 src]# xsync solr 
  1. 启动solr集群
    1)启动Zookeeper集群
    [root@bigdata101 src]# zk.sh start
    2)启动solr集群
    出于安全考虑,不推荐使用root用户启动solr,此处使用solr用户,在所有节点执行以下命令启动solr集群
[root@bigdata101 src]# sudo -i -u solr /usr/local/src/solr/bin/solr start

出现 Happy Searching! 字样表明启动成功。



说明:上述警告内容是:solr推荐系统允许的最大进程数和最大打开文件数分别为65000和65000,而系统默认值低于推荐值。如需修改可参考以下步骤,修改完需要重启方可生效,此处可暂不修改。
(1)修改打开文件数限制
修改/etc/security/limits.conf文件,增加以下内容

* soft nofile 65000
* hard nofile 65000

(2)修改进程数限制
修改/etc/security/limits.d/20-nproc.conf文件

*          soft    nproc     65000

(3)重启服务器

  1. 访问web页面
    默认端口为8983,可指定三台节点中的任意一台IP
    http://bigdata101:8983/solr/#/

    提示:UI界面出现Cloud菜单栏时,Solr的Cloud模式才算部署成功。
2.3 安装Atlas2.1.0

1.把apache-atlas-2.1.0-server.tar.gz 上传到bigdata101的/usr/local/src目录下
2.解压apache-atlas-2.1.0-server.tar.gz

[root@bigdata101 src]# tar -zxvf apache-atlas-2.1.0-server.tar.gz

3.修改apache-atlas-2.1.0 的名称为atlas

[root@bigdata101 src]# mv apache-atlas-2.1.0 atlas
2.4 Atlas配置

1.修改atlas-application.properties配置文件中的以下参数

[root@bigdata101 src]# cd atlas/
[root@bigdata101 atlas]# vim conf/atlas-application.properties 
atlas.graph.storage.hostname=bigdata101:2181,bigdata102:2181,bigdata103:2181 

2.修改atlas-env.sh配置文件,增加以下内容

[root@bigdata101 atlas]# vim conf/atlas-env.sh 
export HBASE_CONF_DIR=/usr/local/src/hbase-2.0.5/conf 
2.5 Atlas集成Solr

1.修改atlas/conf/atlas-application.properties配置文件中的以下参数

[root@bigdata101 atlas]#  vim conf/atlas-application.properties 
atlas.graph.index.search.backend=solr
atlas.graph.index.search.solr.mode=cloud
atlas.graph.index.search.solr.zookeeper-url=bigdata101:2181,bigdata102:2181,bigdata103:2181
  1. 创建solr collection
root@bigdata101 atlas]# sudo -i -u solr /usr/local/src/solr/bin/solr create  -c vertex_index -d /usr/local/src/atlas/conf/solr/ -shards 3
Created collection 'vertex_index' with 3 shard(s), 1 replica(s) with config-set 'vertex_index'

[root@bigdata101 atlas]# sudo -i -u solr /usr/local/src/solr/bin/solr create  -c edge_index -d /usr/local/src/atlas/conf/solr/ -shards 3
Created collection 'edge_index' with 3 shard(s), 1 replica(s) with config-set 'edge_index'

[root@bigdata101 atlas]# sudo -i -u solr /usr/local/src/solr/bin/solr create  -c fulltext_index -d /usr/local/src/atlas/conf/solr/ -shards 3 -replicationFactor 2
Created collection 'fulltext_index' with 3 shard(s), 2 replica(s) with config-set 'fulltext_index'
2.6 Atlas集成Kafka

修改conf/atlas-application.properties配置文件中的以下参数

[root@bigdata101 atlas]# vim conf/atlas-application.properties
atlas.notification.embedded=false
atlas.kafka.data=/usr/local/src/kafka_2.11-0.11.0.0/data
atlas.kafka.zookeeper.connect=bigdata101:2181,bigdata102:2181,bigdata103:2181/kafka
atlas.kafka.bootstrap.servers=bigdata101:9092,bigdata102:9092,bigdata103:9092 
2.7 Atlas Server配置
  1. 修改conf/atlas-application.properties配置文件中的以下参数
#########  Server Properties  #########
atlas.rest.address=http://bigdata101: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.zookeeper.quorum=bigdata101:2181,bigdata102:2181,bigdata103:2181
  1. 记录性能指标,进入/usr/local/atlas/conf/路径,修改当前目录下的atlas-log4j.xml
[root@bigdata101 atlas]# vim conf/atlas-log4j.xml
#去掉如下代码的注释
<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>
2.8 Atlas集成Hive
  1. 安装Hive Hook
    1)解压Hive Hook
[root@bigdata101 src]# tar -zxvf apache-atlas-hive-hook-2.1.0.tar.gz

2)将Hive Hook依赖复制到Atlas安装路径

[root@bigdata101 src]# cp -r apache-atlas-hive-hook-2.1.0/* atlas/  

3)修改/usr/local/apache-hive-3.1.2-bin/conf/hive-env.sh配置文件
增加如下参数

export HIVE_AUX_JARS_PATH=/usr/local/src/atlas/hook/hive
  1. 修改Hive配置文件,在/usr/local/hive/conf/hive-site.xml文件中增加以下参数,配置Hive Hook。
<property>
      <name>hive.exec.post.hooks</name>
      <value>org.apache.atlas.hive.hook.HiveHook</value>
</property>
  1. 修改/usr/local/atlas/conf/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
  1. 将Atlas配置文件/usr/local/atlas/conf/atlas-application.properties
    拷贝到/usr/local/hive/conf目录
[root@bigdata101 src]# cp atlas/conf/atlas-application.properties apache-hive-3.1.2-bin/conf/
2.9Atlas启动
  1. 启动Atlas所依赖的环境
    1)启动Hadoop集群
    (1)在NameNode节点执行以下命令,启动HDFS
    [root@bigdata101~]# start-dfs.sh
    (2)在ResourceManager节点执行以下命令,启动Yarn
    [root@bigdata101~]# start-yarn.sh
    2)启动Zookeeper集群
    [root@bigdata101~]# zk.sh start
    3)启动Kafka集群
    [root@bigdata101~]# kf.sh start
    4)启动Hbase集群
    在HMaster节点执行以下命令,使用hbase用户启动HBase
[root@bigdata101 src]# start-hbase.sh

5)启动Solr集群
在所有节点执行以下命令,使用solr用户启动Solr

[root@bigdata101 src]# sudo -i -u solr /usr/local/src/solr/bin/solr start
*** [WARN] *** Your open file limit is currently 1024.
 It should be set to 65000 to avoid operational disruption.
 If you no longer wish to see this warning, set SOLR_ULIMIT_CHECKS to false in your profile or solr.in.sh
*** [WARN] ***  Your Max Processes Limit is currently 4096.
 It should be set to 65000 to avoid operational disruption.
 If you no longer wish to see this warning, set SOLR_ULIMIT_CHECKS to false in your profile or solr.in.sh
Waiting up to 180 seconds to see Solr running on port 8983 [\]
Started Solr server on port 8983 (pid=72572). Happy searching!

6)进入/usr/local/atlas路径,启动Atlas服务

[root@bigdata101 atlas]# bin/atlas_start.py
  File "bin/atlas_start.py", line 107
    print "Cannot run setup when server is running."
                                                   ^
SyntaxError: Missing parentheses in call to 'print'

切换到python2环境再次启动:

[root@bigdata101 atlas]# source activate py2
(py2) [root@bigdata101 atlas]# bin/atlas_start.py 
starting atlas on host localhost
starting atlas on port 21000
..............................................................................................................................................................................................................................................................................................................
Apache Atlas Server started!!!

提示:
(1)错误信息查看路径:/opt/module/atlas/logs/*.out和application.log
(2)停止Atlas服务命令为atlas_stop.py

7)访问Atlas的WebUI
访问地址:http://bigdata101:21000
注意:等待若干分钟。
账户:admin
密码:admin

登录后:


填坑

部署完成后到hive客户端执行SQL报错,如下图所示:


解决办法:

  1. /usr/local/src/atlas/hook/hive/atlas-plugin-classloader-2.1.0.jar包拷贝到
    /usr/local/src/atlas/conf目录,即和atlas-application.properties同一个目录。
  2. 执行以下命令,把atlas-application.properties打入atlas-plugin-classloader-1.2.0.jar
zip -u atlas-plugin-classloader-1.2.0.jar  atlas-application.properties

再次进入hive,执行SQL正常!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 220,192评论 6 511
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,858评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 166,517评论 0 357
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,148评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,162评论 6 397
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,905评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,537评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,439评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,956评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,083评论 3 340
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,218评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,899评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,565评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,093评论 0 23
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,201评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,539评论 3 375
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,215评论 2 358

推荐阅读更多精彩内容