Windows搭建HDFS 2.6.0(附加搭建Hadoop)
1. 环境
- 操作系统: Windows 7
- JDK版本: 1.8.0_221
- Hadoop版本: 2.6.0
2. 下载
3. 前期准备
3.1. 配置JAVA环境变量
4. 安装部署
4.1. 解压,提示报有错误发生不影响
4.2. 更改配置文件
- hadoop-env.cmd - 添加JAVA_HOME环境变量
排坑: Windows环境下,配置文件中Program Files中存在空格,会造成引用失败,使用PROGRA~1替换Program Files。 解决办法详见: Windows格式化namenode报错 - Error: JAVA_HOME is incorrectly set. Please update F:hadoopconfhadoop-e...
set JAVA_HOME=C:PROGRA~1Javajdk1.8.0_221
- .etchadoopcore-site.xml
排坑: Windows下URI路径前要加/,例如:/E:/soft_work/hadoop-2.6.0/data/hdfs 解决办法详见: Windows格式化namenode报错 - ERROR namenode.NameNode: Failed to start namenode.
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://127.0.0.1:8020</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/E:/soft_work/hadoop-2.6.0/data/hdfs</value>
</property>
</configuration>
- .etchadoophdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
4.3. 格式化namenode
.binhdfs.cmd namenode -format
下面是成功信息,出现 has been successfully formatted.
2020-10-14 13:10:51,919 INFO common.Storage: Storage directory E:soft_workhado
op-2.6.0datahdfsdfsname has been successfully formatted.
2020-10-14 13:10:51,930 INFO namenode.FSImageFormatProtobuf: Saving image file E
:soft_workhadoop-2.6.0datahdfsdfsnamecurrentfsimage.ckpt_000000000000000
0000 using no compression
2020-10-14 13:10:52,043 INFO namenode.FSImageFormatProtobuf: Image file E:soft_
workhadoop-2.6.0datahdfsdfsnamecurrentfsimage.ckpt_0000000000000000000 of
size 389 bytes saved in 0 seconds.
2020-10-14 13:10:52,060 INFO namenode.NNStorageRetentionManager: Going to retain
1 images with txid >= 0
2020-10-14 13:10:52,066 INFO namenode.NameNode: SHUTDOWN_MSG:
/************************************************************
SHUTDOWN_MSG: Shutting down NameNode at jfp/172.18.16.29
************************************************************/
4.4. 启动HDFS
.sbinstart-dfs.cmd
排坑: 启动hdfs时出现
找不到文件hadoop
解决办法详见: Windows启动HDFS报错 - 系统找不到文件 hadoop。 报错信息如下:
排坑: 启动报错
Could not locate Hadoop executable: E:soft_workhadoop-2.6.0binwinutils.exe
解决办法详见: Windows启动HDFS报错 - Could not locate Hadoop executable: E:soft_workhadoop-2.6.0binwinutils.exe 报错信息如下: Caused by: java.io.FileNotFoundException: Could not locate Hadoop executable: E:soft_workhadoop-2.6.0binwinutils.exe at org.apache.hadoop.util.Shell.getQualifiedBinInner(Shell.java:605) at org.apache.hadoop.util.Shell.getQualifiedBin(Shell.java:578) at org.apache.hadoop.util.Shell.<clinit>(Shell.java:675) at org.apache.hadoop.util.StringUtils.<clinit>(StringUtils.java:78) at org.apache.hadoop.hdfs.server.datanode.DataNode.secureMain(DataNode.java:2871) at org.apache.hadoop.hdfs.server.datanode.DataNode.main(DataNode.java:2896)排坑: 启动报错
org.apache.hadoop.io.nativeio.NativeIO$Windows.access0(Ljava/lang/String;I)Z
解决办法详见: Windows启动HDFS报错 - org.apache.hadoop.io.nativeio.NativeIO$Windows.access0(Ljava/lang/String;I)Z 报错信息如下: 2020-10-14 13:33:09,920 ERROR namenode.NameNode: Failed to start namenode. java.lang.UnsatisfiedLinkError: org.apache.hadoop.io.nativeio.NativeIO$Windows.access0(Ljava/lang/String;I)Z at org.apache.hadoop.io.nativeio.NativeIO$Windows.access0(Native Method) at org.apache.hadoop.io.nativeio.NativeIO$Windows.access(NativeIO.java:606) at org.apache.hadoop.fs.FileUtil.canWrite(FileUtil.java:971) at org.apache.hadoop.hdfs.server.common.Storage$StorageDirectory.analyzeStorage(Storage.java:613) at org.apache.hadoop.hdfs.server.common.Storage$StorageDirectory.analyzeStorage(Storage.java:573) at org.apache.hadoop.hdfs.server.namenode.FSImage.recoverStorageDirs(FSImage.java:365) at org.apache.hadoop.hdfs.server.namenode.FSImage.recoverTransitionRead(FSImage.java:221) at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.loadFSImage(FSNamesystem.java:1072) at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.loadFromDisk(FSNamesystem.java:704) at org.apache.hadoop.hdfs.server.namenode.NameNode.loadNamesystem(NameNode.java:665) at org.apache.hadoop.hdfs.server.namenode.NameNode.initialize(NameNode.java:727) at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:950) at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:929) at org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1653) at org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1720)
- 排坑之后 启动完成 namenode 和 datanode 均启动成功
4.5. 查看UI界面 启动成功
5. 拓展
5.1 通过jps查看 namenode 和 datanode进程
Windows环境需要特殊配置,详见: Windows中jps命令无法查看java进程问题
C:Usersuser>jps
5968 Jps
6776 NameNode
9816 DataNode
6. 安装启动HADOOP
如果想同时启动HDFS,Yarn,MapReduce,执行以下步骤:
6.1修改配置文件
- .etchadoopyarn-site.xml
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>localhost</value>
</property>
</configuration>
- .etchadoopmapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
6.2 启动全部
.sbinstart-all.cmd
6.3 查看启动进程
启动成功
C:Usersuser>jps
10096 NodeManager
10304 Jps
11240 NameNode
14856 ResourceManager
12892 DataNode
6.4 查看yarn Web-UI
- 报告称10后已变成出境游“老司机”屌丝80后:我还没出过国
- 担心人工智能取代你的工作?听听微软科学家怎么说!
- Radiant: 基于Ruby on Rails的内容管理系统
- “大数据”如何追回1.3亿元税款?
- Enterprise Library深入解析与灵活应用(5):创建一个简易版的批处理执行器,认识Enterprise Library典型的配置方式和对象创建方式
- BTC.com时讯-IBM等老牌大企业因区块链技术获得新活力
- Kit 3D 更新
- Enterprise Library深入解析与灵活应用(5):创建一个简易版的批处理执行器,认识Enterprise Library典型的配置方式和对象创建方式
- 晚上好啊!这是今天人工智能精选要闻
- 构建Flex应用的10大误区
- Flex的起步推动新语言学习
- 简单科普云计算相关内容
- Silverlight初级教程-开发工具
- WCF的Binding模型之五:绑定元素(Binding Element)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 推荐一款MD神器吧:重度MD用户必备神器
- 鸿蒙系统开源
- 40张图看懂分布式追踪系统原理及实践
- 为什么我们需要批量操作?
- 面向对象与函数式编程的简单案例
- 小白学PyTorch | 6 模型的构建访问遍历存储(附代码)
- MLQuant:基于XGBoost的金融时序交易策略(附代码)
- 探索在网页中使用“标注”
- 笔试题:了解穷举算法吗?如何用代码实现
- 硬核看房利器——Web 全景的实现
- 超级播放器tcplayer如何设置logo
- 【Flutter 实战】1.20版本更新及新增组件
- 手把手教你使用Python实现常用的假设检验 !
- Oracle 每日一题系列合集
- Arrow更好用的python时间序列处理库,你用过吗?