Hadoop+HBase環境搭建(單機版僞分佈式)

一、準備工作

下載Hadoop:https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/

下載HBase: https://mirrors.tuna.tsinghua.edu.cn/apache/hbase/

Linux版本:任選(我選擇的是Centos7)

下載時,注意查看官方HBase版本與Hadoop版本兩者支持的版本,然後下載相應的版本。

二、環境搭建

1.配置Java環境變量(兩種)

首先查看官方文檔HBase版本與JDK版本的支持:

2.添加JAVA JDK環境變量:(推薦)

# vim /etc/profile.d/java.sh

JAVA_HOME=/usr/local/jdk1.8.0_144
JRE_HOME=/usr/local/jdk1.8.0_144/jre
CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME PATH CLASSPATH

# source /etc/profile.d/java.sh


 

3.另外一種添加Java JDK環境變量(選一種即可)

# vi  /etc/profile

export JAVA_HOME=/usr/local/jdk1.8.0_144
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar 
export PATH=$JAVA_HOME/bin:$HOME/bin:$HOME/.local/bin:$PATH

# reboot  

我這裏爲centos7,如果選擇在 /etc/profile 裏添加 source命令不行 ,只能重啓生效。

4.配置一下 hosts文件(目的是將你的 IP 和 主機名對應起來)

# vi  /etc/hosts

我這裏的主機已經改爲master,不懂的自行百度修改主機名。

二、編輯Hadoop的配置文件

hadoop-env.sh 配置環境變量

export JAVA_HOME=/usr/local/jdk1.8.0_144

core-site.xml 配置公共屬性

<configuration>
<property>  
   <name>fs.default.name</name>  
   <value>hdfs://master:9000</value>   
</property>  

<property>  
   <name>hadoop.tmp.dir</name>  
   <value>/home/hadoop-2.7.4/tmp</value>   
</property>  
</configuration>

hdfs-site.xml 配置HDFS

<configuration>
<property>

      <!--指定SecondaryNameNode位置-->
     <name>dfs.namenode.secondary.http-address</name>
     <value>master:9001</value>
</property>
<property>
     <name>dfs.replication</name>
     <value>1</value>
</property>
</configuration>

yarn-site.xml 配置YARN

<configuration>

<property>
     <name>yarn.nodemanager.aux-services</name>
     <value>mapreduce_shuffle</value>
</property>

</configuration>

mapred-site.xml 配置MapReduce

<configuration>
<property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
</property>
</configuration>

slaves 配置DataNode節點

# vi  slaves

master 

三、配置HBase

1.編輯hbase-env.sh文件

# The java implementation to use.  Java 1.7+ required.
export JAVA_HOME=/usr/local/jdk1.8.0_144

2.編輯hbase-site.xml

<configuration>
  <property>
    <name>hbase.rootdir</name>
    <value>hdfs://master:9000/hbase</value>
  </property>
  <property>
    <name>hbase.zookeeper.quorum</name>
    <value>master</value>
  </property>
  <property>
    <name>hbase.zookeeper.property.dataDir</name>
    <value>/home/hbase-1.2.6/data/zookeeper</value>
  </property>
  <property>
    <name>hbase.cluster.distributed</name>
    <value>true</value>
  </property>
</configuration> 

3.編輯regionservers文件

# vi /opt/hbase-1.2.6/conf/regionservers

master

四、配置Hadoop和HBase的環境變量

# vi  /etc/profile

#Hadoop Environment Setting
export HADOOP_HOME=/opt/hadoop-2.7.4

#HBase Environment Setting
export HBASE_HOME=/opt/hbase-1.2.6

export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HBASE_HOME/bin

#   reboot

再次強調我的是centos7,這裏用 source /etc/profile  報錯,只好重啓reboot生效 

 

五、ssh免密設置

在[root@master ~]# 目錄下

[root@master ~]#  ssh-keygen -t rsa

一路回車

你會看到 ~ 目錄下多了一個.ssh文件

[root@master ~]# ls -a
.   anaconda-ks.cfg  .bash_logout   .bashrc  .oracle_jre_usage  .ssh
..  .bash_history    .bash_profile  .cshrc   .pki               .tcshrc

[root@master .ssh]# ls
 id_rsa  id_rsa.pub

[root@master .ssh]# cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

免密設置的目的是爲了啓動hadoop每次不用輸入密碼,也就是跳過輸密碼步驟,免得麻煩。

六、啓動Hadoop(啓動前先格式化)

# hdfs  namenode  -format 

格式化後會有提示,如果看到 status=0表示格式化成功,然後每次啓動hadoop集羣namenode的信息

<property>  
   <name>hadoop.tmp.dir</name>  
   <value>/home/hadoop-2.7.4/tmp</value>   
</property>

是放在/home/hadoop-2.7.4/tmp路徑文件中,如果之後集羣出問題需要格式化,那麼需要先刪除這個文件路徑中的內容。 

1.格式化後啓動hadoop,配置了Hadoop的環境變量的,在全局都可以啓動

#  start-dfs.sh

# start-yarn.sh

啓動完後訪問50070端口, 我的ip是192.168.233.128:50070如果hadoop是啓動成功的,然後訪問不了界面,那麼請檢查下你虛擬機的 防火牆開啓了嗎。

 

2.啓動hbase,配置了Hbase的環境變量的,在全局都可以啓動

#  start-hbase.sh

啓動成功後在物理機訪問 16010 端口,HBase默認的Web UI端口

這樣HBase已經啓動成功。

如果還需要加Spark框架:https://www.jianshu.com/p/9622f684144d ,我的已經配置成功了。

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