centos6.5配置Hadoop环境,运行wordcount例子

前端之家收集整理的这篇文章主要介绍了centos6.5配置Hadoop环境,运行wordcount例子前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
  • 安装vmware12centos6.5(还是6.5好,稳定流畅,7界面好看但是虚拟机里面卡死了),删除自带openjdk下载安装jdk1.7
  • 配置环境变量 vim /etc/profile->最后加上下面这段

export JAVA_HOME=/usr/java/jdk1.7.0_79
exportCLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin

执行source/etc/profile使之生效

  • 安装hadoop,下载下载 hadoop-2.x.y.tar.gz这样类型的,64位电脑记得下载64位的
  • 执行tar -zxf ~/下载/hadoop-2.6.0.tar.gz -C /usr/local 释放hadoop到本地,修改一下名字mv hadoop-2.6.0 hadoop
  • 配置环境变量,/etc/profile下面加上这两行

export HADOOP_HOME=/usr/local/hadoop

export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin

  • 修改/usr/local/hadoop/etc/hadoop/下的 core-site.xml和hdfs-site.xml

core-site.xml:

<configuration>

<property>

<name>hadoop.tmp.dir</name>

<value>file:/usr/local/hadoop/tmp</value>

<description>Abase for other temporary directories.</description>

</property>

<property>

<name>fs.defaultFS</name>

<value>hdfs://localhost:9000</value>

</property>

</configuration>

hdfs-site.xml:

<configuration>

<property>

<name>dfs.replication</name>

<value>1</value>

</property>

<property>

<name>dfs.namenode.name.dir</name>

<value>file:/usr/local/hadoop/tmp/dfs/name</value>

</property>

<property>

<name>dfs.datanode.data.dir</name>

<value>file:/usr/local/hadoop/tmp/dfs/data</value>

</property>

</configuration>

  • 执行./bin/hdfs namenode -format进行 NameNode的格式化

成功的话,会看到successfully formattedExitting with status 0提示,若为Exitting with status 1则是出错。

  • 接着开启 NaneNode 和 Datanode 守护进程:执行sbin/start-dfs.sh 开启守护进程
  • 2.x版本之后上传命令不一样了:hadoop fs -mkdir input改为hdfs dfs -mkdir -p
  • input目录创建完成之后,开始上传本地目录:

上传失败显示:mkdir: Cannot create directory /input. Name node is insafe mode.

通过执行bin/hadoop dfsadmin -safemode leave 来关闭safe mode

  • 上传文件报错:WARN hdfs.DFSClient: DataStreamer Exception,原因是防火墙未关闭,执行service iptables stop关闭防火墙
  • 若要停止hadoop进程,./sbin/stop_all.sh(注意:要先启动namenode然后再启动其他,否则也会报上面的错)
  • hadoop fs-mkdir /input创建input文件
  • hadoop fs -put 文件 /input(如:hadoop fs -put 1 /input是将当前目录的文件1上传至hdfs中的/input目录下)
  • hadoop jar hadoop-mapreduce-examples-2.5.1.jar wordcount /input/1 /input/output/1 运行wordcount程序
  • hadoop fs -cat /input/output/1查看生成文件

猜你在找的CentOS相关文章