1. 軟件列表
hadoop 2.6.0 、 zookeeper 3.4.6和hbase 1.2.0
2. 機器環境
序號 | 主機名 | IP | 安裝軟件 |
1 | d-hdp-client | 192.1.131.199 | hadoop hbase 不運行 |
2 | d-hdp-01 | 192.1.131.201 | hadoop namenode zookeeper server-1 hbase hmaster |
3 | d-hdp-02 | 192.1.131.202 | hadoop datanode zookeeper server-2 hbase HRegionServer |
3 | d-hdp-03 | 192.1.131.203 | hadoop datanode zookeeper server-3 hbase HRegionServer |
3. hadoop安裝
參考《adoop編程入門學習筆記-1 安裝運行hadoop》。多部署一臺機器用作client,通過他提交hadoop mapreduce job和對hbase的訪問,這臺機器上拷貝d-hdp-01上的程序,在hdfs-site.xml增加一個屬性。
<property>
<name>hadoop.job.ugi</name>
<value>hadoop,supergroup</value>
</property>
4. zookeeper安裝
在/home/hadoop/cloud目錄下解壓縮zookeeper-3.4.6.tar.gz
tar -xvf zookeeper-3.4.6.tar.gz
mv zookeeper-3.4.6 zookeeper
cd zookeeper
mkdir tmp
mkdir logs
cd conf
cp zoo_template.cfg zoo.cfg
在conf 目錄編輯zoo.cfg文件zoo.cfg,在最後增加一下內容
dataDir=/home/hadoop/cloud/zookeeper/tmp
dataLogDir=/home/hadoop/cloud/zookeeper/logs
server.1=d-hdp-01:2388:3888
server.2=d-hdp-02:2388:3888
server.3=d-hdp-03:2388:3888
cd ../tmp
touch myid
編輯myid 增加已行1
編輯~/目錄下的.bashrc文件
#add for hadoop
export JAVA_HOME="/usr/lib/jvm/java-7-openjdk-amd64/jre"
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$JAVA_HOME/bin:$JAVA_HOME/lib:$JAVA_HOME/jre/bin:$PATH:$HOME/bin
export HADOOP_HOME=/home/hadoop/cloud/hadoop
export PATH=.:$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export ZOOKEEPER_HOME=/home/hadoop/cloud/zookeeper
export PATH=$PATH:$ZOOKEEPER_HOME/bin:$ZOOKEEPER_HOME/conf
cd /home/hadoop/cloud
tar cvf zookeeper.tar zookeeper
scp zookeeper.tar hadoop@d-hdp-02:~/cloud
scp zookeeper.tar hadoop@d-hdp-03:~/cloud
ssh分別登錄到d-hdp-02和d-hdp-03機器上應用tar解壓縮文件,並修改tmp下的myid裏的id爲2和3
ssh d-hdp-02
cd ~/zookeeper/tmp
完成後用zkServer.sh start 在三臺機器上分別啓動zookeeper
5.hbase安裝
在/home/hadoop/cloud目錄下解壓縮hbase-1.2.0-bin.tar.gz
cd /home/hadoop/cloud
tar -xvf hbase-1.2.0-bin.tar.gz
mv hbase-1.2.0 hbase
cd conf
編輯hbase-env.sh
export HADOOP_HOME=/home/hadoop/cloud/hadoop
export HBASE_HOME=/home/hadoop/cloud/hbase
export JAVA_HOME="/usr/lib/jvm/java-7-openjdk-amd64/jre"
export HBASE_CLASSPATH=/home/hadoop/cloud/hbase/conf
export HBASE_LOG_DIR=${HBASE_HOME}/logs
export HBASE_MANAGES_ZK=false
編輯hbase-site.xml
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://d-hdp-01:9000/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.master</name>
<value>d-hdp-01:60000</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/opt/zookeeper</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>d-hdp-01,d-hdp-02,d-hdp-03</value>
</property>
<property>
<name>hbase.zookeeper.property.clientPort</name>
<value>2181</value>
</property>
</configuration>
編輯regionservers
d-hdp-02
d-hdp-03
拷貝分發文件
cd ~/cloud
tar cvf hbase.tar hbase
scp hbase.tar hadoop@d-hdp-02:~/cloud
scp hbase.tar hadoop@d-hdp-03:~/cloud
cd ~
編輯.bashrc(三臺機器上都執行)
#add for hadoop
export JAVA_HOME="/usr/lib/jvm/java-7-openjdk-amd64/jre"
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$JAVA_HOME/bin:$JAVA_HOME/lib:$JAVA_HOME/jre/bin:$PATH:$HOME/bin
export HADOOP_HOME=/home/hadoop/cloud/hadoop
export PATH=.:$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export ZOOKEEPER_HOME=/home/hadoop/cloud/zookeeper
export PATH=$PATH:$ZOOKEEPER_HOME/bin:$ZOOKEEPER_HOME/conf
export HBASE_HOME=/home/hadoop/cloud/hbase
export PATH=$PATH:$HBASE_HOME/bin
登錄到d-hdp-02和d-hdp-03上解壓hbase.tar tar -xvf hbase.tar
在d-hdp-01上啓動hbase
start-hbase.sh
用檢查運行結果