伪分布式搭建
1. 下载 hadoop2.7.1.tar.gz
, 解压放在磁盘C:\
2. 新建文件夹
3. 修改C:\hadoop2.7.1\etc\hadoop下文件
hadoop-env.cmd
set JAVA_HOME=E:\PROGRA~1\Java\jdk1.8.0_171
- 因为jdk路径, E:\Program Files\Java\jdk1.8.0_171有空格, 所以采用了DOS 8.3命名规则: 写头6个字母, 另加波浪号和1(编号, 如果多个文件前6个字符一样, 则按输出顺序从1开始编号), 即PROGRA~1
core-site.xml
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/C:/hadoop_data/tmp</value>
</property>
<property>
<name>dfs.name.dir</name>
<value>/C:/hadoop_data/namenode</value>
</property>
</configuration>
mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapred.job.tracker</name>
<value>hdfs://localhost:9001</value>
</property>
</configuration>
hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/c:/hadoop_data/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/c:/hadoop_data/datanode</value>
</property>
</configuration>
yarn-site.xml
<configuration>
<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.resourcemanager.hostname</name>
<!-- namenode服务器IP -->
<value>localhost</value>
</property>
</configuration>
4. 配置系统变量: [hadoop(bin/sbin), jdk(bin), jre(bin)]
变量名(N): `CLASSPATH`
// JAVA_HOME是jdk的路径
变量值(V): `.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;`
5. 为避免一系列错误(选用):
- 把hadoop.dll和winutils.exe放到hadoop的bin文件夹里
- 把hadoop.dll放到C:\Windows\System32下
- 下载地址: https://pan.baidu.com/s/1J0O-Lki8XyC78GYj-dKXLg
6. hadoop文件系统hdfs格式化, 然后退出hadoop安全模式
hdfs namenode -format
hadoop dfsadmin -safemode leave
7. 开启, 关闭hadoop服务
start-all.cmd
stop-all.cmd