在开始配置前,我们先了解Hadoop的三种运行模式。
Hadoop的三种运行模式- 独立(或本地)模式:无需运行任何守护进程,所有程序都在同一个JVM上执行。在独立模式下测试和调试MapReduce程序很方便,因此该模式在开发阶段比较适合。
- **伪分布式模式:**Hadoop守护进程运行在本地机器上,模拟一个小规模的集群。
- **全分布式模式:**Hadoop守护进程运行在一个集群上。
下面我们进入正题,即如何在Windows 7上搭建Hadoop伪分布式环境。
- 安装JDK,设置环境变量。
首先,在控制面板上查看自己的操作系统是32位还是64位。
然后,检查自己的电脑上是否已经具备Java环境。步骤如下:
1)Ctrl+R
2)cmd
3)输入java -version,若正常显示java版本,证明本机已安装java环境,跳到步骤2.若显示“不是内部或外部命令”,则需要安装JDK,继续步骤4)
4) 安装JDK,楼主用的是jdk-8u131-windows-x64.exe,因为不允许重复上传CSDN资源,所以楼主无法提供给大家,可以自行下载。说明:只需安装JDK,不需要安装JRE。
5)配置Java环境变量,配置路径:计算机(右键)–属性–高级系统设置—高级–环境变量。
在系统变量处新建,变量名:JAVA_HOME;变量值:你安装JDK的位置,楼主的是D:\Tools\jdk
修改path:在原有的那串变量值后增加%JAVA_HOME%\bin;…
6)测试Java环境
在cmd窗口:
测试Java环境:
echo %JAVA_HOME%
echo %path%
path
java -version
javac -version - 下载Hadoop 2.7.7,这个楼主传了资源,诚信赚分,哈哈(https://download.csdn.net/download/u013159040/10620584)
下载,解压到某个文件夹,如D:\Tools\Hadoop - 下载window util for hadoop。为了配合hadoop 2.7.7,楼主也上传了资源(https://download.csdn.net/download/u013159040/10620589),下载后解压到hadoop2.7.7的bin目录下,直接覆盖该目录下的所有内容。请注意此util与具体的hadoop版本是有关的,如果选用不同的hadoop版本,需要找到正确的util。
- 添加Hadoop环境变量,参考Java的,新建HADOOP_HOME 变量名同样是自己存放hadoop的位置,如D:\Tools\Hadoop\hadoop-2.7.7, 并添加path路径:%HADOOP_HOME%\bin
- 创建nodename和datanode目录,用来保存数据,如:
d:\tools\hadoop\data\namenode
d:\tools\hadoop\data\datanode
- 在D:\Tools\Hadoop\hadoop-2.7.7\etc\hadoop里修改4个配置文件:core-site.xml, hdfs-site.xml, mapred-site.xml, yarn-site.xml
<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://localhost:9000</value> </property> </configuration> hdfs-site.xml(不要直接复制楼主的,要看看自己的namenode和datanode存放的位置是否和楼主一致,不一致的要修改):
<configuration> <property> <name>dfs.replication</name> <value>1</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>/D:/Tools/data/namenode</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>/D:/Tools/data/datanode</value> </property></configuration>mapred-site.xml:
<configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property></configuration> yarn-site.xml:
<configuration> <!-- Site specific YARN configuration properties --> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name> <value>org.apache.hadoop.mapred.ShuffleHandler</value> </property> <property> <name>yarn.scheduler.minimum-allocation-mb</name> <value>1024</value> </property> <property> <name>yarn.nodemanager.resource.memory-mb</name> <value>4096</value> </property> <property> <name>yarn.nodemanager.resource.cpu-vcores</name> <value>2</value> </property></configuration> |