Centos7.2 安裝Hadoop、Hbase、Elasticsearch與JanusGraph並配置Http訪問

JanusGraph是分佈式圖數據庫,前身是Titan。JanusGraph是Titan的一個fork。Titan項目創建於2012年,於2016年停止維護,2017年,JanusGraph項目fork了Titan,直至今天。所以建議大家優選JanusGraph,當然Titan依然是可用的。

JanusGraph支持多種後端和索引,這裏博主選擇Hbase與Elasticsearch。大家在安裝之前,請一定參考相關版本的兼容性。這裏博主使用:

Centos7.2

jdk-8u191-linux-x64.rpm

hadoop-2.7.6

zookeeper-3.4.9

hbase-1.2.6

elasticsearch-5.6.5

janusgraph-0.3.1-hadoop2

這裏JanusGraph使用hbase做後端、elasticsearch做索引,並且在單節點進行僞分佈式的配置。所以首先安裝jdk,安裝之前請先卸載系統自動的jdk。

一、安裝Java環境

1、下載 jdk-8u191-linux-x64.rpm

2、安裝jdk:

rpm -ivh jdk-8u191-linux-x64.rpm

安裝成功之後即可使用 java -version 查看java的信息。但是爲了後續安裝,還是建議配置java環境變量。

3、配置java環境變量:

vim /etc/profile

在最後面加上:

export JAVA_HOME=/usr/java/jdk1.8.0_191-amd64
export JRE_HOME=/usr/java/jdk1.8.0_191-amd64/jre
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib

保存後使環境變量生效:

source /etc/profile

二、關閉禁用防火牆:

systemctl stop firewalld.service

systemctl disable firewalld.service

三、安裝Hadoop:

爲了避免後續安裝問題,安裝的Hadoop一定要根據Hbase的兼容性選擇版本。

1、下載hadoop-2.7.6.tar.gz

2、解壓:

tar -xzvf hadoop-2.7.6.tar.gz

3、配置環境變量,在/etc/profile之後加上:

export HADOOP_HOME=/data/janus/hadoop-2.7.6
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

source /etc/profile

4、配置hadoop-2.7.6/etc/hadoop/slaves:

將localhost改成master  (master爲hostname)

5、配置hadoop-2.7.6/etc/hadoop/hadoop-env.sh:

export JAVA_HOME=/usr/java/jdk1.8.0_191-amd64

改爲實際的java地址。

6、配置hadoop-2.7.6/etc/hadoop/core-site.xml:

<configuration>
    <property> 
        <name>fs.defaultFS</name>
        <value>hdfs://master:9000</value> 
    </property> 
    <property> 
        <name>hadoop.tmp.dir</name>
        <value>data/janus/hadoop-2.7.6/tmp</value> 
    </property> 	
</configuration>

data/janus/hadoop-2.7.6爲hadoop的解壓目錄

7、配置hadoop-2.7.6/etc/hadoop/hdfs-site.xml:

<configuration>
    <property> 
        <name>dfs.namenode.name.dir</name> 
        <value>data/janus/hadoop-2.7.6/dfs/name</value> 
    </property> 
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>data/janus/hadoop-2.7.6/dfs/data</value> 
    </property> 
    <property>
        <name>dfs.replication</name>
        <value>1</value> 
    </property>
    <property> 
        <name>dfs.namenode.secondary.http-address</name> 
        <value>master:9001</value> 
    </property> 
    <property>
        <name>dfs.webhdfs.enabled</name>
        <value>true</value> 
    </property>
</configuration>

建議在data/janus/hadoop-2.7.6下先創建name與data文件夾,並賦予777權限。

8、配置hadoop-2.7.6/etc/hadoop/yarn-site.xml:

<configuration>
    <property>
        <name>yarn.nodemanager.aux-services</name> 
        <value>mapreduce_shuffle</value> 
    </property> 
    <property> 
        <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name> 
        <value>org.apache.hadoop.mapred.ShuffleHandler</value> 
    </property> 
    <property>
        <name>yarn.resourcemanager.address</name> 
        <value>master:8032</value> 
    </property> 
    <property>
        <name>yarn.resourcemanager.scheduler.address</name> 
        <value>master:8030</value> 
    </property> 
    <property>
        <name>yarn.resourcemanager.resource-tracker.address</name>  
        <value>master:8031</value> 
    </property> 
    <property>
        <name>yarn.resourcemanager.admin.address</name>   
        <value>master:8033</value> 
    </property> 
    <property>
        <name>yarn.resourcemanager.webapp.address</name> 
        <value>master:8034</value> 
    </property> 
</configuration>

9、配置hadoop-2.7.6/etc/hadoop/mapred-site.xml:

<configuration>
    <property>
        <name>mapreduce.framework.name</name> 
        <value>yarn</value> 
    </property> 
    <property>
        <name>mapreduce.jobhistory.address</name> 
        <value>master:10020</value> 
    </property> 
    <property> 
        <name>mapreduce.jobhistory.webapp.address</name> 
        <value>master:19888</value> 
    </property>
</configuration>

10、初始化:

在hadoop-2.7.6/下執行:

bin/hdfs namenode -format

11、啓動hadoop:

sbin/start-all.sh (停止sbin/stop-all.sh)

12、在瀏覽器中通過:

IP:50070進行訪問。

四、安裝zookeeper

1、下載zookeeper-3.49.tar.gz

2、解壓:

tar -vxf zookeeper-3.49.tar.gz

3、配置zookeeper-3.4.9/conf/zoo.cfg:

tickTime=2000
initLimit=10
syncLimit=5
dataDir=/data/install_pakage/zookeeper-3.4.9/data
clientPort=2181

4、啓動:

bin/zkServer.sh start 

查看啓動狀態 bin/zkServer.sh status

五、安裝hbase-1.2.6

1、下載hbase-1.2.6-bin.tar.gz

2、解壓:

tar -xvf hbase-1.2.6-bin.tar.gz

3、添加環境變量:

export HBASE_HOME=/data/janus/hbase-1.2.6
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HBASE_HOME/bin

4、配置hbase-1.2.6/conf/regionservers

改爲master

5、配置hbase-1.2.6/conf/hbase-env.sh

export JAVA_HOME=/usr/java/jdk1.8.0_191-amd64/

6、配置hbase-1.2.6/conf/hbase-site.xml

<configuration>
    <property> 
        <name>hbase.rootdir</name>
        <value>hdfs://master:9000/opt/hbase/hbase_db</value>
    </property> 
    <property> 
        <name>hbase.cluster.distributed</name>
        <value>true</value> 
    </property>
    <property> 
        <name>hbase.zookeeper.quorum</name>
        <value>master</value> 
    </property>     
    <property><!--zookooper配置、日誌等的存儲位置 -->
        <name>hbase.zookeeper.property.dataDir</name> 
        <value>/data/janus/zookeeper-3.4.9/data</value>
    </property>	
</configuration>

7、啓動hbase:

bin/start-hbase.sh

8、通過網頁訪問:

IP:16010

六、安裝elasticsearch-5.6.5

1、下載elasticsearch-5.6.5.zip

2、elasticsearch-5.6.5不允許使用root用戶,所以需要首先新建用戶和用戶組:

adduser es
passwd es

groupadd esg
usermod -G esg es

chmod -R 777 elasticsearch-5.6.5

chown -R es elasticsearch-5.6.5
chgrp -R esg elasticsearch-5.6.5

3、配置elasticsearch-5.6.5/config/jvm.options

-Xms2g
-Xmx2g
改爲
-Xms256m
-Xmx256m

4、配置elasticsearch-5.6.5/config/elasticsearch.yml

cluster.name: my-application
node.name: node-1
network.host: 192.168.0.234
http.port: 9200

5、啓動elasticsearch-5.6.5

./bin/elasticsearch

後臺啓動:./bin/elasticsearch -d

結束後臺進程:

ps -ef | grep elastic

kill -9 進程號

6、通過網頁訪問:

IP:9200

七、安裝janusgraph並配置HTTP訪問:

1、下載janusgraph-0.3.1-hadoop2.zip

2、解壓:

unzip janusgraph-0.3.1-hadoop2.zip

3、複製janusgraph-hbase-es.properties 爲http-janusgraph-hbase-es.properties 放在janusgraph-0.3.1-hadoop2/conf/gremlin-server目錄下,http-janusgraph-hbase-es.properties配置如下:

storage.backend = hbase
storage.hostname = master
cache.db-cache = true
cache.db-cache-clean-wait = 20
cache.db-cache-time = 180000
cache.db-cache-size = 0.5
index.search.backend = elasticsearch
index.search.hostname = master
gremlin.graph = org.janusgraph.core.JanusGraphFactory
storage.hbase.table = janus

4、複製gremlin-server.yaml爲http-gremlin-server.yaml 放在janusgraph-0.3.1-hadoop2/conf/gremlin-server目錄下,http-gremlin-server.yaml 更改下列配置如下:

host: 192.168.0.234
port: 8182
scriptEvaluationTimeout: 30000
channelizer: org.apache.tinkerpop.gremlin.server.channel.HttpChannelizer
graphs: {
  graph: conf/gremlin-server/http-janusgraph-hbase-es.properties
}

5、運行gremlin-server:

./bin/gremlin-server.sh conf/gremlin-server/http-gremlin-server.yaml

6、通過web接口訪問:

IP:8182/?gremlin=100-10

結果如下:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章