1. 程式人生 > >hadoop單機版安裝及基本功能演示

hadoop單機版安裝及基本功能演示

lis fs基本操作 map jdk1 linu logs tput open etc

本文所使用的Linux發行版本為:CentOS Linux release 7.4.1708 (Core)

hadoop單機版安裝

準備工作

創建用戶

useradd -m hadoop
passwd hadoop

下載安裝包

1.jdk
到官方下載頁面http://www.oracle.com/technetwork/java/javase/downloads/index.html,下載jdk,我下載的版本為jdk-8u151-linux-x64.tar.gz。

2.hadoop安裝包
到hadoop官網下載hadoop的二進制包,我使用的版本為:hadoop-2.7.5.tar.gz。

將jdk和hadoop的包上傳到linux上,路徑為:/home/hadoop。

hadoop安裝及配置

安裝

以hadoop用戶登錄,分別解壓jdk和hadoop的包。

tar -zxvf jdk-8u151-linux-x64.tar.gz
tar -zxvf hadoop-2.7.5.tar.gz

重命名hadoop的目錄

mv hadoop-2.7.5/ hadoop/

hadoop運行環境配置

進入到hadoop的目錄/home/hadoop/hadoop
vi etc/hadoop/hadoop-env.sh

設置jdk的路徑

# The java implementation to use.
export JAVA_HOME=/home/hadoop/jdk1.8.0_151

使用hadoop進行單詞統計

創建輸入文件目錄及測試文件

mkdir input4test

vi input4test/1.txt
hadoop is an open-source software

vi input4test/2.txt
I want to learn hadoop

執行單詞統計操作

bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.5.jar wordcount ./input4test ./output4test

查看統計結果

cat output4test/part-r-00000
I   1
an  1
hadoop  2
is  1
learn   1
open-source 1
software    1
to  1
want    1

hdfs相關配置及操作

配置hdfs

進入到hadoop的目錄/home/hadoop/hadoop
修改配置文件etc/hadoop/core-site.xml

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
</configuration>

修改配置文件etc/hadoop/hdfs-site.xml

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
</configuration>

設置免密碼登錄

$ ssh-keygen -t rsa -P ‘‘ -f ~/.ssh/id_rsa
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
$ chmod 0600 ~/.ssh/authorized_keys

hdfs格式化及啟動

  1. hdfs格式化

    bin/hdfs namenode -format
  2. hdfs啟動

    sbin/start-dfs.sh
  3. 查看hdfs狀態
    在瀏覽器中輸入http://IP:50070,可以查看hdfs的狀態。如果50070端口沒有打開,輸入下面命令打開50070端口。

    iptables -I INPUT -p tcp --dport 50070 -j ACCEPT

hdfs基本操作

查看文件和文件夾

bin/hadoop dfs -ls -R /

該命令表示以遞歸方式查看根目錄下的所有文件和文件夾。

創建目錄

bin/hadoop dfs -mkdir /input

該命令表示在根目錄下創建input目錄。

上傳文件到hdfs

bin/hadoop hdfs -put input4test/1.txt /input/
bin/hadoop hdfs -put input4test/2.txt /input/

該命令表示將本地input4test/1.txt和2.txt文件上傳到hdfs中的/input目錄下。

查看文件內容

bin/hadoop dfs -cat  /input/1.txt

通過YARN調度

配置YARN

修改配置文件etc/hadoop/mapred-site.xml

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

修改配置文件etc/hadoop/yarn-site.xml

<configuration>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    <property>
        <name>yarn.nodemanager.env-whitelist</name>
        <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>
    </property>
</configuration>

啟動YARN

sbin/start-yarn.sh

查看YARN狀態

在瀏覽器中輸入http://IP:8088,可以查看YARN的狀態。如果8088端口沒有打開,輸入下面命令打開8088端口。

iptables -I INPUT -p tcp --dport 8088 -j ACCEPT

再次執行單詞統計操作

bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.5.jar wordcount /input /output

本次執行的輸入和輸出目錄,都是hdfs的目錄。

查看統計結果

bin/hadoop dfs -cat /output/part-r-00000

和之前的結果一樣。

I   1
an  1
hadoop  2
is  1
learn   1
open-source 1
software    1
to  1
want    1

hadoop單機版安裝及基本功能演示