Hadoop安装教程_伪分布式
文章更新于:2020-04-09
注1:hadoop 的安装及单机配置参见:Hadoop安装教程_单机(含Java、ssh安装配置)
注2:hadoop 的完全分布式配置参见:Hadoop安装教程_分布式
注3:hadoop 及其他软件的下载安装配置参见:让我来告诉你,学习大数据都是要安装哪些软件
Hadoop 的伪分布式安装
一、下载安装 Hadoop
1.1、下载 Hadoop
可以去官网 https://hadoop.apache.org/releases.html 下载。
也可在文首注3里面提供的链接下载。
1.2、安装 Hadoop
将下载的 Hadoop 文件解压到系统(Linux)任意目录(
/tmp等目录除外)即可完成安装,但通常的做法是解压到/usr/local/目录下以便统一管理。建议将解压后的文件夹改名为
hadoop以后后期方便管理。建议配置环境变量以便打开终端即可执行命令。
二、配置 Hadoop
hadoop的伪分布式安装是指进行完全分布式安装,但所有节点都放在同一台机器上。因为其并不是真正意义上的分布式,所以称为伪分布式。
进行伪分布式安装需要修改 /usr/local/hadoop/etc/hadopp/ 目录下(此处的 /usr/local/hadoop 是我 hadoop 的安装路径)的两个配置文件。
2.1、修改 core-site.xml 配置文件
配置文件的内容是放一对在<configuration>标签中的,下同。
默认配置文件里面只有注释和一堆空标签,我们需要修改内容如下:
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
注:其中 <name> 和 <value> 标签指定了文件系统的主机和端口,这里是 localhost:9000,因为是伪分布式,所以指定为本机,端口你可以自定义。
2.2、修改 hdfs-site.xml 配置文件
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
注1:这里指定了存储文件的副本数,默认是3,这里设置为1。
注2:一个节点只能存储一个副本,所以如果你只有一个节点,但你设置为2,是无效的,还是按1来对待。
三、启动 Hadoop
注1:系统必须配置 JAVA_HOME 环境变量 Hadoop 才能启动。
注2:(伪)分布式 Hadoop 必须配置 passphraseless ssh (无密码 ssh)才能启动。
注3:Hadoop 的启动日志写在 $HADOOP_LOG_DIR 目录(如果指定),默认在 $HADOOP_HOME/logs。
注4:下面的示例命令如果没有配置环境变量可能会报不到命令的错误。
3.1、格式化文件系统
启动前需要先格式化文件系统
hdfs namenode -format
3.2、启动守护进程
启动名称/数据节点守护进程
start-dfs.sh
3.2 确认启动情况
你可以使用 jps 命令查看节点是否启动,也可以通过webUI 界面来访问 NameNode 节点。
旧版本访问端口在 http://localhost:50070 ,新版端口在 9870 。

注:上图的数据端口 6789 是我自定义的,你的默认应该是 9000 。
四、在 hdfs 中创建目录及文件
刚格式化完毕的 hdfs 中应该是没有文件的。
你可以通过 hdfs dfs xxx 命令来操作 hdfs。
当你使用 hdfs dfs -ls 命令的时候,默认列出 /user/<username>/ 目录下的文件,但刚开始这个目录是不存在的,会报错。所以我们需要先创建这个目录。

从上图我们可以看出,使用 hdfs dfs -ls /user/bigdata 和 hdfs dfs -ls 命令的执行效果是相同的。
五、运行示例程序
5.1、创建需要的目录及拷贝文件
# 创建输入文件夹
hdfs dfs -mkdir input
# 将本地文件推到 hdfs
hdfs dfs -put /usr/local/hadoop/etc/hadoop/*.xml input
5.2、执行程序
hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.2.1.jar grep input output 'dfs[a-z.]+'
5.3、查看程序执行结果
- 可以直接在hdfs 中查看
hdfs dfs -cat output/*

2. 也可以将结果取回本地查看
hdfs dfs -get output/ result
cat result/*

六、停止 hadoop
stop-dfs.sh

七、配置文件的其他选项
7.1、临时文件的基础路径
hadoop 启动的时候会产生一些临时文件,如果没有指定路径,则这些文件将在 /tmp/hadoop-${user.name} 目录下产生。
不过你可以在 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>
7.2、NameNode & DataNode 数据的存储位置
你可以通过设置
dfs.namenode.name.dir的值来指定NameNode的存储位置,如果你用逗号分隔写了多个路径,则数据表将同时写入这些路径以实现冗余,这个值默认是:file://${hadoop.tmp.dir}/dfs/name。你可以通过设置
dfs.datanode.data.dir的值来指定DataNode数据块的存储位置,这个值默认是:file://${hadoop.tmp.dir}/dfs/data。
<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>
注:更改 replication 后,只对新创建的文件有效,之前创建的文件不受影响。
至此,hadoop伪分布式安装完成。
八、Enjoy!
Hadoop安装教程_伪分布式的更多相关文章
- Hadoop安装教程_单机/伪分布式配置_CentOS6.4/Hadoop2.6.0
Hadoop安装教程_单机/伪分布式配置_CentOS6.4/Hadoop2.6.0 环境 本教程使用 CentOS 6.4 32位 作为系统环境,请自行安装系统.如果用的是 Ubuntu 系统,请查 ...
- 转载:Hadoop安装教程_单机/伪分布式配置_Hadoop2.6.0/Ubuntu14.04
原文 http://www.powerxing.com/install-hadoop/ 当开始着手实践 Hadoop 时,安装 Hadoop 往往会成为新手的一道门槛.尽管安装其实很简单,书上有写到, ...
- Hadoop安装教程_单机/伪分布式配置_Hadoop2.6.0/Ubuntu14.04
摘自: http://www.cnblogs.com/kinglau/p/3796164.html http://www.powerxing.com/install-hadoop/ 当开始着手实践 H ...
- Hadoop安装教程_单机/伪分布式配置_Hadoop2.6.0/Ubuntu14.04(转)
http://www.powerxing.com/install-hadoop/ http://blog.csdn.net/beginner_lee/article/details/6429146 h ...
- 【转】Hadoop安装教程_单机/伪分布式配置_Hadoop2.6.0/Ubuntu14.04
原文链接:http://dblab.xmu.edu.cn/blog/install-hadoop/ 当开始着手实践 Hadoop 时,安装 Hadoop 往往会成为新手的一道门槛.尽管安装其实很简单, ...
- Hadoop安装教程_单机/伪分布式配置
环境 本教程使用 CentOS 6.4 32位 作为系统环境,请自行安装系统(可参考使用VirtualBox安装CentOS).如果用的是 Ubuntu 系统,请查看相应的 Ubuntu安装Hadoo ...
- 新手推荐:Hadoop安装教程_单机/伪分布式配置_Hadoop-2.7.1/Ubuntu14.04
下述教程本人在最新版的-jre openjdk-7-jdk OpenJDK 默认的安装位置为: /usr/lib/jvm/java-7-openjdk-amd64 (32位系统则是 /usr/lib/ ...
- Hadoop安装教程_集群/分布式配置
配置集群/分布式环境 集群/分布式模式需要修改 /usr/local/hadoop/etc/hadoop 中的5个配置文件,更多设置项可点击查看官方说明,这里仅设置了正常启动所必须的设置项: slav ...
- Hadoop安装教程_分布式
Hadoop的分布式安装 hadoop安装伪分布式以后就可以进行启动和停止操作了. 首先需要格式化HDFS分布式文件系统.hadoop namenode -format 然后就可以启动了.start- ...
随机推荐
- vue2.0:项目开始,首页入门(main.js,App.vue,importfrom)
对main.js App.vue 等进行操作: 但是这就出现了一个问题:什么是main.js,他主要干什么用的?App.vue又是干什么用的?main.js 里面的import from又在干嘛?ne ...
- tesseract的简单使用
Tesseract 是一个开源的 OCR 引擎,可以识别多种格式的图像文件并将其转换成文本,最初由 HP 公司开发,后来由 Google 维护.下载地址:https://digi.bib.uni-ma ...
- 小白学 Python 数据分析(18):Matplotlib(三)常用图表(上)
人生苦短,我用 Python 前文传送门: 小白学 Python 数据分析(1):数据分析基础 小白学 Python 数据分析(2):Pandas (一)概述 小白学 Python 数据分析(3):P ...
- 【JAVA进阶架构师指南】之三:深入了解类加载机制
前言 在上一篇文章中,我们知道了JVM的内存划分,其中在说到方法区的时候说到方法区中存放的信息包括[已被JVM加载的类信息,常量,静态变量,即时编译的代码等],整个方法区其实就和类加载有关. 类加 ...
- Spring Boot入门系列(八)整合定时任务Task,一秒搞定定时任务
前面介绍了Spring Boot 中的整合Redis缓存已经如何实现数据缓存功能.不清楚的朋友可以看看之前的文章:https://www.cnblogs.com/zhangweizhong/categ ...
- 还是只使用console.log()进行调试?好吧,其实还有更多。
在浏览器控制台中打印消息无疑可以拯救所有开发人员. console.log()消息就像您的大多数疾病的药,同时调试了代码中的一些有线问题. 那里的大多数开发人员都喜欢— 让我们在浏览器中打印消息以了解 ...
- C语言结构体实现类似C++的构造函数
其主要依靠函数指针来实现,具体看代码吧~ #include <stdio.h> #include <stdlib.h> #include <string.h> ty ...
- 接口自动化框架pyface详细介绍
版权说明 本框架系本人结合一些实践经验和开源框架设计思想,在家基于兴趣爱好独立完成的代码开发. 源码只保存在私人电脑,办公电脑上无.github开源与公司无关,先把关系撇清,不涉及侵权. 嘘. 框架定 ...
- python爬取中国大学排名
教程来自:[Python网络爬虫与信息提取].MOOC. 北京理工大学 目标:爬取最好大学网前50名大学 代码如下: import requests from bs4 import Beautiful ...
- java 实现全排列
public List<List<Integer>> permute(int[] nums) { List<List<Integer>> res = n ...