Hadoop僞分佈式HDFS環境搭建和使用

1.環境要求java

Java版本不低於Hadoop要求,並配置環境變量node

2.安裝web

1)在網站hadoop.apache.org下載穩定版本的Hadoop包shell

2)解壓壓縮包apache

檢查Hadoop是否可用oop

hadoop/bin/hadoop version

3)修改配置文件網站

Hadoop配置以.xml文件形式存在spa

修改文件hadoop/etc/hadoop/core-site.xml:code

<configuration>
        <property>
                <name>hadoop.tmp.dir</name>
                <value>/home/users/hadoop/hadoop/tmp</value>
        </property>
        <property>
                <name>fs.default.name</name>
                <value>hdfs://localhost:9000</value>
        </property>
</configuration>

修改文件hadoop/etc/hadoop/hdfs-site.xml:orm

<configuration>
        <property>
                <name>dfs.datanode.data.dir</name>
                <value>/home/users/hadoop/hadoop/data</value>
        </property>
        <property>
                <name>dfs.namenode.name.dir</name>
                <value>/home/users/hadoop/hadoop/name</value>
        </property>
        <property>
                <name>dfs.http.address</name>
                <value>0.0.0.0:8100</value>
        </property>
        <property>
                <name>dfs.replication</name>
                <value>1</value>
        </property>
</configuration>

4)namenode格式化

hadoop/bin/hdfs namenode -format

格式化成功如上圖所示。

5)開啓Namenode和Datanode

hadoop/sbin/start-dfs.sh

執行成功後,輸入以下命令查看開啓狀態

jps

6)web頁面查看hdfs服務情況

http://hostname:8100     //8100對應hdfs-site.xml配置文件中的dfs.http.address端口號

7)安裝過程當中遇到的問題

<1>namenode格式化的時候遇到JAVA_HOME環境變量問題

解決辦法:hadoop/etc/hadoop/hadoop-env.xml文件中有變量的設置,可是不能知足要求,還要修改一下hadoop/libexec/hadoop-config.sh文件中大概160行,新增:

export JAVA_HOME=/home/tools/tools/java/jdk1.6.0_20

<2>datanode沒法啓動

出現該問題的緣由:在第一次格式化dfs後,啓動並使用了hadoop,後來又從新執行了格式化命令(hdfs namenode -format),這時namenode的clusterID會從新生成,而datanode的clusterID 保持不變。

解決辦法:將hadoop/name/current下的VERSION中的clusterID複製到hadoop/data/current下的VERSION中,覆蓋掉原來的clusterID,讓兩個保持一致而後重啓,啓動後執行jps,查看進程

 

3.HDFS的使用

HDFS的命令執行格式:hadoop fs -cmd,其中cmd是類shell的命令

hadoop fs -ls /        //查看hdfs根目錄的文件樹
hadoop fs -mkdir /test        //建立test文件夾
hadoop fs -cp 文件 文件        //拷貝文件

 

 

注:以上命令能夠經過添加環境變量來簡化

相關文章
相關標籤/搜索