CentOS7.0+Hadoop2.7.2+Hbase1.2.1搭建教程

一、軟件版本

  CentOS-7.0 -1406-x86_64-DVD.iso

  jdk-7u80-linux-x64.tar.gzjava

  hadoop-2.7.2.tar.gznode

  hbase-1.2.1-bin.tar.gzlinux


二、集羣配置

  主機: Master.Hadoop      IP地址: 192.168.1.100
  主機: Slave1.Hadoop      IP地址: 192.168.1.101
  主機: Slave2.Hadoop      IP地址: 192.168.1.102

  用戶設置:系統用了GUI,新版非得創建一個帳戶。例如隨便建一個jfz,密碼1,但操做時使用root(密碼root)直接進行,裝好後重啓,之後用SSH進root。
web


三、配置本地hosts

  輸入指令:
apache

nano /etc/hosts
  將如下數據複製進入各個主機中:

192.168.1.100  Master.Hadoop
192.168.1.101  Slave1.Hadoop
192.168.1.102  Slave2.Hadoop
  使用如下指令在Master主機中進行測試,可以使用相似指令在Slave主機測試:

ping Master.Hadoop
ping Slave1.Hadoop
ping Slave2.Hadoop

四、關閉防火牆

  三臺機器均關閉防火牆。服務器

  中止firewall:app

systemctl stop firewalld.service
  禁止firewall開機啓動:

systemctl disable firewalld.service

五、Java安裝

(1)卸載自帶的OpenJDK v1.7:

java -version
yum remove java-1.7.0-openjdk
  重啓。

(2) JDK安裝:

  在/usr下建立java文件夾,將jdk-7u80-linux-x64.tar.gz文件放到這個文件夾中。ssh

  使用如下指令進行解壓webapp

tar zxvf jdk-7u80-linux-x64.tar.gz
  解壓後能夠刪除掉gz文件

rm jdk-7u80-linux-x64.tar.gz
  配置JDK環境變量:

nano /etc/profile
  添加Java環境變量,將如下數據複製到文件底部:

export JAVA_HOME=/usr/java/jdk1.7.0_80
export JRE_HOME=/usr/java/jdk1.7.0_80/jre
export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
  重載使配置生效:

source /etc/profile
  驗證安裝成功:

java -version

  若是出現對應版本信息,則配置成功:java version "1.7.0_80"oop


六、SSH免密碼登陸

  由於Hadoop須要經過SSH登陸到各個節點進行操做,本集羣用的是root用戶,每臺服務器都生成公鑰,再合併到authorized_keys。

(1)修改sshd_config配置

  CentOS默認沒有啓動SSH無密登陸,去掉/etc/ssh/sshd_config其中2行的註釋,每臺服務器都要設置。

nano /etc/ssh/sshd_config
RSAAuthentication yes
PubkeyAuthentication yes

(2)生成key

  輸入命令:

ssh-keygen -t rsa
  生成key,都不輸入密碼,一直回車,/root就會生成.ssh文件夾,每臺服務器都要設置。

(3)合併key

  合併公鑰到authorized_keys文件,在Master服務器,進入/root/.ssh目錄,經過SSH命令合併。

cat id_rsa.pub>> authorized_keys
ssh root@192.168.1.101 cat ~/.ssh/id_rsa.pub>> authorized_keys
ssh root@192.168.1.102 cat ~/.ssh/id_rsa.pub>> authorized_keys

(4)拷貝key

  把Master服務器的authorized_keys、known_hosts複製到Slave服務器的/root/.ssh目錄。

scp authorized_keys known_hosts root@192.168.1.101:/root/.ssh
scp authorized_keys known_hosts root@192.168.1.102:/root/.ssh

(5)檢證免密登錄

ssh root@192.168.1.101
ssh root@192.168.1.102

  之後就不須要輸入密碼了。


七、Hadoop安裝流程

(1)下載hadoop安裝包

  將下載「hadoop-2.7.2.tar.gz」文件上傳至到/home/hadoop目錄下。

  注意:必定要在Linux下解壓,不然執行權限問題很麻煩。

(2)解壓壓縮包

tar -xzvf hadoop-2.7.2.tar.gz

(3)在/home/hadoop目錄下建立目錄

  建立數據存放的文件夾,tmp、hdfs、hdfs/data、hdfs/name

mkdir -p tmp hdfs/name hdfs/data

(4)配置core-site.xml

  指令:

nano /home/hadoop/hadoop-2.7.2/etc/hadoop/core-site.xml
  內容:
<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://192.168.1.100:9000</value>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>file:/home/hadoop/tmp</value>
    </property>
    <property>
        <name>io.file.buffer.size</name>
        <value>131702</value>
    </property>
</configuration>

(5)配置hdfs-site.xml

  指令:

nano /home/hadoop/hadoop-2.7.2/etc/hadoop/hdfs-site.xml
  內容:
<configuration>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:/home/hadoop/hdfs/name</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:/home/hadoop/hdfs/data</value>
    </property>
    <property>
        <name>dfs.replication</name>
        <value>2</value>
    </property>
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>192.168.1.100:9001</value>
    </property>
    <property>
    <name>dfs.webhdfs.enabled</name>
    <value>true</value>
    </property>
</configuration>

(6)配置mapred-site.xml

  指令:

nano /home/hadoop/hadoop-2.7.2/etc/hadoop/mapred-site.xml
  內容:
<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
    <property>
        <name>mapreduce.jobhistory.address</name>
        <value>192.168.1.100:10020</value>
    </property>
    <property>
        <name>mapreduce.jobhistory.webapp.address</name>
        <value>192.168.1.100:19888</value>
    </property>
</configuration>

(7)配置yarn-site.xml

  指令:

nano /home/hadoop/hadoop-2.7.2/etc/hadoop/yarn-site.xml
  內容:
<configuration>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    <property>
        <name>yarn.nodemanager.auxservices.mapreduce.shuffle.class</name>
        <value>org.apache.hadoop.mapred.ShuffleHandler</value>
    </property>
    <property>
        <name>yarn.resourcemanager.address</name>
        <value>192.168.1.100:8032</value>
    </property>
    <property>
        <name>yarn.resourcemanager.scheduler.address</name>
        <value>192.168.1.100:8030</value>
    </property>
    <property>
        <name>yarn.resourcemanager.resource-tracker.address</name>
        <value>192.168.1.100:8031</value>
    </property>
    <property>
        <name>yarn.resourcemanager.admin.address</name>
        <value>192.168.1.100:8033</value>
    </property>
    <property>
        <name>yarn.resourcemanager.webapp.address</name>
        <value>192.168.1.100:8088</value>
    </property>
    <property>
        <name>yarn.nodemanager.resource.memory-mb</name>
        <value>2048</value>
    </property>
</configuration>
   注意:yarn.nodemanager.resource.memory-mb值要大於1024,不然影響進程!

(8)配置hadoop-env.sh、yarn-env.sh的JAVA_HOME

  配置/home/hadoop/hadoop-2.7.2/etc/hadoop目錄下:

  hadoop-env.sh、yarn-env.sh的JAVA_HOME,不設置的話,啓動不了。

export JAVA_HOME=/usr/java/jdk1.7.0_80

(9)配置slaves

nano /home/hadoop/hadoop-2.7.2/etc/hadoop/slaves
  刪除默認的localhost,增長2個從節點:
192.168.1.101
192.168.1.102

(10)傳送Hadoop至其它節點

  將配置好的Hadoop複製到各個節點對應位置上,經過scp傳送:

scp -r /home/hadoop 192.168.1.101:/home/
scp -r /home/hadoop 192.168.1.102:/home/

(11)啓動Hadoop

  在Master服務器啓動hadoop,從節點會自動啓動。

  進入/home/hadoop/hadoop-2.7.2目錄,初始化,輸入命令:

bin/hdfs namenode -format
  所有啓動:
sbin/start-all.sh
  也能夠分開啓動sbin/start-dfs.sh、sbin/start-yarn.sh。

  Hadoop環境變量配置,須要在/etc/profile 中添加HADOOP_HOME內容,以前已經配置過,因此這一步已經節省下來,那麼可重啓 source /etc/profile。

(12)驗證Hadoop

  jps運行成功結果:

八、Hbase安裝流程

(1)複製安裝包至Master節點/home/hbase目錄下

  經過SFTP或是直接拷貝至Master節點,軟件推薦在Linux下解壓!

(2)解壓壓縮包

tar zxvf hbase-1.2.1-bin.tar.gz

(3)添加到環境變量

  將hbase添加到環境變量/etc/profile中,配環境變量方便使用指令:

nano /etc/profile
內容:
export HBASE_HOME=/home/hbase/hbase-1.2.1
export PATH=$HBASE_HOME/bin:$PATH
export HBASE_MANAGES_ZK=true 
export HBASE_CLASSPATH=/home/hbase/hbase-1.2.1/conf

(4)修改配置文件hbase-env.sh

nano /home/hbase/hbase-1.2.1/conf/hbase-env.sh
  內容:
export JAVA_HOME=/usr/java/jdk1.7.0_80

(5)修改配置文件hbase-site.xml

<configuration>
	<property>
		<name>hbase.rootdir</name>
		<value>hdfs://192.168.1.100:9000/hbase</value>
	</property>
	<property>
		<name>hbase.cluster.distributed</name>
		<value>true</value>
	</property>
	<property>
		<name>hbase.zookeeper.quorum</name>
		<value>Master.Hadoop,Slave1.Hadoop,Slave2.Hadoop</value>
	</property>
	<property>
		<name>hbase.temp.dir</name>
		<value>/home/hbase/hbase-1.2.1/tmp</value>
	</property>
	<property>
		<name>hbase.zookeeper.property.dataDir</name>
		<value>/home/hbase/hbase-1.2.1/tmp/zookeeper</value>
	</property>
	<property>
		<name>hbase.master.info.port</name>
		<value>60010</value>
	</property>
</configuration>

(6)修改配置文件regionservers:

nano regionservers
  將文件內容設置爲:

Master.Hadoop
Slave1.Hadoop
Slave2.Hadoop

(7)Hbase複製到從節點

  差很少要成功了,別忘了最後一步!

scp -r /home/hbase/hbase-1.2.1 root@192.168.1.101:/home/hbase/
scp -r /home/hbase/hbase-1.2.1 root@192.168.1.102:/home/hbase/

(8)驗證Hbase

  一、用jps命令看進程對不對。


  二、測試Web訪問

    http://Master.Hadoop:8088/

    http://Master.Hadoop:50070/

    http://Master.Hadoop:60010/

相關文章
相關標籤/搜索