记录Atlas安装与配置过程

记录Atlas安装与配置过程


安装环境是基于centos8,安装过程配置文件内容根据自己实际修改

jdk要安装1.8版本

Zookeeper安装

下载Zookeeper

curl -O https://downloads.apache.org/zookeeper/zookeeper-3.6.2/apache-zookeeper-3.6.2-bin.tar.gz

解压

tar -zxvf apache-zookeeper-3.6.2-bin.tar.gz

进入conf目录修改配置文件,由于我只有一台服务部署,所以配置为单机版的

[root@localhost conf]# mv zoo_sample.cfg zoo.cfg #将conf目录下配置模板修改一下名字
[root@localhost conf]# vim zoo.cfg
#配置内容如下:
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/opt/software/zookeeper/data
clientPort=2181

进入bin目录,启动Zookeeper

[root@localhost bin]# ./zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /opt/software/zookeeper/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

查看是否已经启动

[root@localhost bin]# jps -m
2648 Jps -m
2604 QuorumPeerMain /opt/software/zookeeper/bin/../conf/zoo.cfg

可以看到QuorumPeerMain已经处于运行状态,表明zookeeper正在运行,也可以用telnet命令测试一下。


Kafka安装

下载Kafka,解压

curl -O https://mirrors.tuna.tsinghua.edu.cn/apache/kafka/2.7.0/kafka_2.13-2.7.0.tgz
tar -zxvf kafka_2.13-2.7.0.tgz

修改配置文件

#修改config/server.properties文件,修改内容为:
broker.id=0
port=9092
log.dirs=/opt/software/kafka/logs
zookeeper.connect=127.0.0.1:2181

#修改config/zookeeper.properties文件,修改内容为:
dataDir=/opt/software/kafka_2.12-2.7.0/zookeeper/dataDir
dataLogDir=/opt/software/kafka_2.12-2.7.0/zookeeper/dataLogDir
clientPort=2181
maxClientCnxns=100
admin.enableServer=false
tickTime=2000 
initLimit=10

运行Kafka

[root@localhost bin]# ./bin/kafka-server-start.sh ./config/server.properties &

测试创建topic,出现Created topid xxx 则创建成功

[root@localhost bin]# ./bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test2  #test是topic名字可以随便换哦。

查询创建的top主题

[root@localhost bin]# kafka-topics.sh --list --zookeeper localhost:2181
test
test2

用jps也可以看到kafka jvm进程


Hadoop安装

下载Hadoop

curl -O https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-2.10.1/hadoop-2.10.1.tar.gz

解压

tar -zxvf hadoop-2.10.1.tar.gz

添加环境变量

#vim /etc/profile,加上以下几个变量
export HADOOP_HOME=/opt/software/hadoop
export PATH=$HADOOP_HOME/bin:$PATH

修改配置文件

#修改 etc/hadoop/core-site.xml 文件,增加以下配置(一开始的配置文件没有内容的!!!)
<configuration>
    <!-- 指定HDFS老大(namenode)的通信地址 -->
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
    <!-- 指定hadoop运行时产生文件的存储路径 -->
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/usr/hadoop/tmp</value>
    </property>
</configuration>

#修改 etc/hadoop/hdfs-site.xml 文件,增加以下配置
<configuration>
    <property>
        <name>dfs.name.dir</name>
        <value>/usr/hadoop/hdfs/name</value>
        <description>namenode上存储hdfs名字空间元数据 </description> 
    </property>
    <property>
        <name>dfs.data.dir</name>
        <value>/usr/hadoop/hdfs/data</value>
        <description>datanode上数据块的物理存储位置</description>
    </property>
    <!-- 设置hdfs副本数量 -->
    <property>
        <name>dfs.replication</name>
        <value>2</value>
    </property>
</configuration>

#修改hadoop-env.sh配置文件,不然运行时会报以下错误:
localhost: Error: JAVA_HOME is not set and could not be found.
将配置文件中JAVA_HOME改为实际的JAVA_HOME
#这里JAVA_HOME要设置成jdk8的,不然后面hive会报异常
export JAVA_HOME=/opt/software/jdk1.8.0_271

hdfs启动与停止,第一次启动hdfs需要格式化,之后启动就不需要了

[root@localhost bin]# ./bin/hdfs namenode -format
#启动命令
./sbin/start-dfs.sh
#停止命令
./sbin/stop-dfs.sh

查看运行情况

[root@localhost software]# jps
9472 Jps
8802 DataNode
9269 SecondaryNameNode
8377 NameNode
2604 QuorumPeerMain

从结果中可知,Hadoop会启动:NameNode、DataNode、SecondaryNameNode

浏览器输入:http://127.0.0.1:50070,可以查看效果

接下来配置yarn文件, etc/hadoop/mapred-site.xml 。这里注意一下,hadoop里面默认是mapred-site.xml.template 文件,如果配置yarn,把mapred-site.xml.template 重命名为mapred-site.xml 。如果不启动yarn,把重命名还原。

[root@localhost hadoop]# mv mapred-site.xml.template mapred-site.xml
[root@localhost hadoop]# vim mapred-site.xml 
#增加以下配置
<configuration>
    <!-- 通知框架MR使用YARN -->
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>

#修改etc/hadoop/yarn-site.xml文件
[root@localhost hadoop]# vim yarn-site.xml 
#增加以下配置
<configuration>
    <!-- reducer取数据的方式是mapreduce_shuffle -->
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
</configuration>

启动与停止yarn

#启动
./sbin/start-yarn.sh

#停止
./sbin/stop-yarn.sh

查看运行情况

[root@localhost hadoop]# jps 
8802 DataNode
9269 SecondaryNameNode
8377 NameNode
2604 QuorumPeerMain
11630 NodeManager
11039 ResourceManager
11759 Jps

可以看到,yarn会启动resourcemanager,nodemanager
浏览器输入:http://127.0.0.1:8088 (8088是默认端口,如果端口占用,先把占用的端口杀掉 netstat -ano)


Hbase安装

下载Hbase,解压

curl -O https://mirror.bit.edu.cn/apache/hbase/2.4.0/hbase-2.4.0-bin.tar.gz
tar -zxvf hbase-2.4.0-bin.tar.gz

修改系统环境变量

#修改/etc/profile文件,增加以下配置
export HBASE_HOME=/opt/software/hbase
export PATH=$HBASE_HOME/bin:$PATH

修改Hbase配置

#修改 conf/hbase-env.sh,添加以下配置:
#去掉 JAVA_HOME 前的 “#”,并将其修改成自己安装的 Java 路径。
export JAVA_HOME=/opt/software/jdk-11.0.9
export HBASE_HOME=/opt/software/hbase
export HBASE_CLASSPATH=/opt/software/hbase/lib/*
#HBASE_MANAGES_ZK=false是不启用HBase自带的Zookeeper集群。
export HBASE_MANAGES_ZK=false

#修改 conf/hbase-site.xml文件,添加以下配置:
<configuration>
 <property>
  <name>hbase.rootdir</name>
  <value>hdfs://localhost:9000/hbase</value>
  <description>The directory shared byregion servers.</description>
 </property>

  <!-- false是单机模式,true是分布式模式  -->
  <property>
    <name>hbase.cluster.distributed</name>
    <value>true</value>
  </property>


  <property>
    <name>hbase.tmp.dir</name>
    <value>/opt/software/hbase-2.4.0/tmp</value>
  </property>
  

  <property>
    <name>hbase.zookeeper.quorun</name>
    <value>127.0.0.1:2181</value>
  </property>
</configuration>

启动Hbase

[root@localhost bin]# ./bin/start-hbase.sh 

可以用jps查看Hbase运行情况


Solr安装

下载Solr,解压

curl -O https://downloads.apache.org/lucene/solr/8.7.0/solr-8.7.0.tgz
tar -zxvf solr-8.7.0.tgz

进入 solr/bin 目录,修改 solr.in.sh 文件

#添加以下配置:
ZK_HOST="127.0.0.1:2181"
SOLR_HOST="localhost"
#可修改端口号
SOLR_PORT=8983

运行Solr

#root 用户需要加-force参数
[root@localhost bin]# bin/solr start -force

Hive 安装

下载 Hive,解压

curl -O https://mirrors.tuna.tsinghua.edu.cn/apache/hive/hive-3.1.2/apache-hive-3.1.2-bin.tar.gz
tar -zxvf apache-hive-3.1.2-bin.tar.gz

配置hive

#修改 conf/hive-site.xml,增加以下配置
<configuration>
 <property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://localhost:3306/hive_metadata?createDatabaseIfNotExist=true&amp;characterEncoding=UTF-8&amp;useSSL=false&amp;serverTimezone=GMT%2B8&amp;allowPublicKeyRetrieval=true</value>
 </property>
<property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>root</value>
</property>
<property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>root</value>
</property>
<property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.cj.jdbc.Driver</value>
</property>
<property>
    <name>datanucleus.schema.autoCreateAll</name>
    <value>true</value> </property>
<property>
    <name>hive.metastore.schema.verification</name>
    <value>false</value>
 </property>
 <property>
    <name>hive.exec.post.hooks</name>
    <value>org.apache.atlas.hive.hook.HiveHook</value>
 </property>
</configuration>

# 修改hive-env.sh,增加以下配置
HADOOP_HOME=/opt/software/hadoop
export HIVE_CONF_DIR=/opt/software/hive/conf

加载mysql驱动到lib目录下,由于我的mysql版本为8,所以我用的驱动也为8的

初始化数据库

[root@localhost bin]# schematool -initSchema -dbType mysql

启动hive

[root@localhost bin]# hive

Atlas 安装

上传Atlas,解压

#由于atlas只提供源码,所以需要我们先将源码编译后,再将压缩包上传到服务器
tar -zxvf apache-atlas-2.1.0-server.tar.gz

Atlas 集成外部框架

Atlas 集成 Hbase
#进入 conf 目录,修改配置文件 atlas-application.properties
#修改 atlas 存储数据主机
atlas.graph.storage.hostname=127.0.0.1:2181

#进入 conf/hbase 路径,添加 Hbase 集群的配置文件到${Atlas_Home}
[root@localhost hbase]# ln -s /opt/software/hbase/conf/ /opt/software/atlas/conf/hbase/

#在 conf/atlas-env.sh 中添加 HBASE_CONF_DIR
#添加 HBase 配置文件路径
export JAVA_HOME=/opt/software/jdk1.8.0_271
Atlas 集成 Solr
# 进入 conf 目录,修改配置文件atlas-application.properties
atlas.graph.index.search.solr.zookeeper-url=127.0.0.1:2181

#将 Atlas 自带的 Solr 文件夹拷贝到外部 Solr 集群的各个节点。
[root@localhost hbase]# cp -r /opt/software/atlas/conf/solr /opt/software/solr/

#进入到 solr 根路径,修改拷贝过来的配置文件名称为 atlas_conf
[root@localhost hbase]# mv solr  atlas_conf

#在 Cloud 模式下,启动 Solr(需要提前启动 Zookeeper 集群),并创建 collection
[root@localhost hbase]# ./bin/solr create -c vertex_index -d /opt/software/solr/atlas_conf -shards 3 -replicationFactor 2 -force

[root@localhost hbase]# ./bin/solr create -c edge_index -d /opt/software/solr/atlas_conf -shards 3 -replicationFactor 2 -force

[root@localhost hbase]# ./bin/solr create -c fulltext_index -d /opt/software/solr/atlas_conf -shards 3 -replicationFactor 2 -force
-shards 3:表示该集合分片数为 3
-replicationFactor 2:表示每个分片数都有 2 个备份
vertex_index、edge_index、fulltext_index:表示集合名称
注意:如果需要删除 vertex_index、edge_index、fulltext_index 等 collection 可以执行如
下命令。
[root@localhost hbase]# ./bin/solr delete -c ${collection_name}
Atlas 集成 Kafka
# 进入 conf 目录,修改配置文件 atlas-application.properties
atlas.notification.embedded=false
atlas.kafka.data=/opt/software/kafka/logs
atlas.kafka.zookeeper.connect=127.0.0.1:2181/kafka
atlas.kafka.bootstrap.servers=127.0.0.1:9092
atlas.kafka.zookeeper.session.timeout.ms=4000
atlas.kafka.zookeeper.connection.timeout.ms=2000
atlas.kafka.enable.auto.commit=true

# 启动 Kafka 集群,并创建 Topic
[root@localhost hbase]# ./bin/kafka-topics.sh --create --zookeeper 127.0.0.1:2181 --replication-factor 1 --partitions 3 --topic _HOATLASOK

[root@localhost hbase]# ./bin/kafka-topics.sh --create --zookeeper 127.0.0.1:2181 --replication-factor 1 --partitions 3 --topic ATLAS_ENTITIES

#查看kafka topic列表
[root@localhost hbase]# ./bin/kafka-topics.sh --zookeeper 127.0.0.1:2181 --list
Atlas 其他配置
# 进入 conf 目录,修改配置文件 atlas-application.properties
atlas.rest.address=http://localhost:21000
atlas.server.run.setup.on.start=false
atlas.audit.hbase.zookeeper.quorum=localhost:2181

# 记录性能指标,进入 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>
Atlas 集成 Hive
# 进入 conf 目录,修改配置文件 atlas-application.properties
atlas.hook.hive.synchronous=false
atlas.hook.hive.numRetries=3
atlas.hook.hive.queueSize=10000
atlas.cluster.name=primary

# 解压 apache-atlas-2.0.0-hive-hook.tar.gz 到/opt/software/
[root@localhost hbase]# tar -zxvf apache-atlas-2.0.0-hive-hook.tar.gz -C /opt/software/

#剪切 hook 和 hook-bin 目录到到/opt/software/atlas 文件夹中
[root@localhost hbase]# mv
/opt/software/atlas-hive-hook/hook-bin/ /opt/software/atlas/

[root@localhost hbase]# mv
/opt/software/atlas-hive-hook/hook /opt/software/atlas/

# 将 atlas-application.properties 配置文件加入到 atlas-plugin-classloader-1.0.0.jar 中
[root@localhost hbase]# zip -u
/opt/software/atlas/hook/hive/atlas-plugin-classloader-2.0.0.jar
/opt/software/atlas/conf/atlas-application.properties

[root@localhost hbase]# cp
/opt/software/atlas/conf/atlas-application.properties /opt/software/hive/conf/

# 在/opt/software/hive/conf/hive-site.xml 文件中设置 Atlas hook
<property>
    <name>hive.exec.post.hooks</name>
    <value>org.apache.atlas.hive.hook.HiveHook</value>
</property>

# 修改/opt/module/hive/conf/hive-env.sh 
#在 tez 引擎依赖的 jar 包后面追加 hive 插件相关 jar 包
export HIVE_AUX_JARS_PATH=/opt/module/atlas/hook/hive

集群启动,部署完毕!

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

推荐阅读更多精彩内容