hadoop单机测试环境安装(简)


1.下载hadoop官网就可以下载。可以直接搜hadoop  ,  其实可以直接查看官网的版主文档搭建https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/SingleCluster.html

2.解压包到/usr/local/下便于操作,不接呀也行,由于hadoop依赖java环境,请配置JAVA_HOME(例:JAVA_HOKE=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.161-2.b14.el7.x86_64)

vim hadoop-env.sh

 export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.161-2.b14.el7.x86_64      #25行注释打开

3.测试安装。./bin/hadoop version查看版本。

4.测试环境操作文本查看字符出现的次数

mkdir input

移动对应的文本到input内。

cp ./*.txt   input

./bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.10.0.jar wordcount  grep  /usr/local/hadoop/input   output  '[正则表达式]'#

cat  output/*   #统计了对应的数据放到了output下

5.伪分布式:把需求的组件部署到一台服务器上。默认jps会开启

57904 DataNode
58097 SecondaryNameNode
57746 NameNode
66947 Jps
50531 ResourceManager
50649 NodeManager

5个服务。

vim hdfs-site.xml 



dfs.replication
1



dfs.namenode.name.dir
file:/usr/local/hadoop/tmp/dfs/name


dfs.datanode.data.dir
file:/usr/local/hadoop/tmp/dfs/data

vim core-site.xml



hadoop.tmp.dir
file:/usr/local/hadoop/tmp
Abase for other temporary directories.


fs.defaultFS
hdfs://localhost:9000

vim yarn-site.xml



yarn.nodemanager.aux-services
mapreduce_shuffle


yarn.nodemanager.env-whitelist
JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME

vim mapred-site.xml



mapreduce.framework.name
yarn


mapreduce.application.classpath
/usr/local/hadoop/share/hadoop/mapreduce/*:/usr/local/hadoop/share/hadoop/mapreduce/lib/*

6.开启服务

./bin/hdfs namenode -format

./sbin/start-all.sh

7.查看服务

jps    默认开启5个服务。重启开不起的服务一般都是节点tmp对应目录下id冲突。删除重新启动就可以了。

8.使用方法:

  8.1,配置自身的ssh能免密访问自己。(默认第一步就该做)

  ssh-copy-id   ip

  8.2,创建工作用户目录

  ./bin/hdfs dfs -mkdir  /usr

  ./bin/hdfs dfs -mkdir  /usr/intput

  8.3, 传测试文件

  ./bin/hdfs dfs -put etc/hadoop/*.xml  input

  注:默认命令和bash的一样,只是这里是属于hdfs。本机是看不见的。

  8.4, 测试数据

  ./bin/hadoop jar    share/hadoop/mapreduce/hadoop-mapreduce-examples-2.10.0.jar    grep     /usr/input     output    "dfs[a-z]+"