快速运行你的第一个Hadoop程序!

414 阅读2分钟

Hadoop安装配置

一、下载安装Hadoop

下载Hadoop的压缩包,解压之指定目录,下载网址如下:

hadoop.apache.org/releases.ht…

二、设置环境变量

主要有JDK、Hadoop的环境变量配置

JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_201.jdk/Contents/Home
CLASSPAHT=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
PATH=$JAVA_HOME/bin:$PATH:
export JAVA_HOME
export CLASSPATH
export PATH
export HADOOP_HOME=/Users/Bigdata/hadoop-3.1.4
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
export LD_LIBRARY_PATH=$HADOOP_HOME/lib/native/
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_ROOT_LOGGER=INFO,console
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib/native"

三、配置Hadoop

进入到 /etc/hadoop目录下修改以下几个文件的内容

  • core-site.xml

  • hdfs-site.xml

  • mapred.xml
 <property>  
        <name>mapreduce.framework.name</name>  
        <value>yarn</value>  
    </property>  
    <property>  
        <name>mapreduce.admin.user.env</name>  
        <value>HADOOP_MAPRED_HOME=$HADOOP_COMMON_HOME</value>  
    </property>  
    <property>  
        <name>yarn.app.mapreduce.am.env</name>  
        <value>HADOOP_MAPRED_HOME=$HADOOP_COMMON_HOME</value>  
    </property> 

    <property>
      <name>mapreduce.application.classpath</name>
       <value>
            /Users/Bigdata/hadoop-3.1.4/etc/hadoop,
            /Users/Bigdata/hadoop-3.1.4/share/hadoop/common/*,
            /Users/Bigdata/hadoop-3.1.4/share/hadoop/common/lib/*,
            /Users/Bigdata/hadoop-3.1.4/share/hadoop/hdfs/*,
            /Users/Bigdata/hadoop-3.1.4/share/hadoop/hdfs/lib/*,
            /Users/Bigdata/hadoop-3.1.4/share/hadoop/mapreduce/*,
            /Users/Bigdata/hadoop-3.1.4/share/hadoop/mapreduce/lib/*,
            /Users/Bigdata/hadoop-3.1.4/share/hadoop/yarn/*,
            /Users/Bigdata/hadoop-3.1.4/share/hadoop/yarn/lib/*
       </value>
    </property> 
  • yarn-site.xml

四、运行hadoop

启动出现问题:

开启远程登录

设置ssh免密登录,执行以下命令一直回车即可(中间询问是否覆盖,选择y):

ssh-keygen -t rsa

1)初始化:

hdfs namenode -format

2)启动

3)查看是否启动

jps

4)查看namenode,输入以下网址:http://localhost:9870/dfshealth.html#tab-overview

5)启动yarn

start-yarn.sh

我这里已经显示启动了。

启动成功后可以在浏览器输入 http://localhost:8088/cluster ,出现如下界面:

6)使用hdfs

  • 创建文件目录
hdfs fs -mkdir /input
  • 查看文件目录
hdfs fs -ls /

创建三个文件目录如下:

7)测试hadoop自带的wordcount入门案例

准备工作:将写好的测试txt文件上传到input目录 只需执行以下目录:

hdfs dfs -put 本地的txt文件路径 /input

然后进入主目录下的share/hadoop 目录执行以下命令:

hadoop jar hadoop-mapreduce-examples-3.1.4.jar wordcount /input/inputword /output/wordcount

此时hadoop的ui界面上已经有一个job在running了

查看生产的文件:

如果想要删除文件夹的话,使用以下命令:

hadoop fs -rm -r /output

开启hadoop调试日志输出,在~/.bash_profile文件里面加入下面配置:

export HADOOP_ROOT_LOGGER=DEBUG,console //开启dubug
export HADOOP_ROOT_LOGGER=INFO,console  // 关闭debug

五、遇到的问题:

1、在执行hdfs命令的时候总是出现以下警告:

WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

该问题暂时没有解决

2、Tracking UI无法访问

进入hadoop/sbin目录下执行如下命令启动服务,使用jps查看JobHistoryServer有没有开启:

再次访问即可