Hadoop的安装有三种执行模式

  1. 单机模式(Local (Standalone) Mode):Hadoop的默认模式,0配置。Hadoop执行在一个Java进程中。使用本地文件系统。不使用HDFS,一般用于开发调试MapReduce程序的应用逻辑。

  2. 伪分布式模式(Pseudo-Distributed Mode):需简单配置,相当于仅仅有一个节点的集群,Hadoop的全部守护进程执行在同一台机器上。该模式在单机模式之上添加了代码调试功能,同意你检查内存使用情况,HDFS输入输出。以及其它的守护进程交互。
  3. 全然分布式模式(Fully-Distributed Mode):依据须要进行配置。多节点,一般用于生产环境。可觉得是由伪分布式模式的一个节点变为多个节点。

准备工作

这里的准备工作能够查看Hadoop单机模式部署准备工作

总结一下就是:

  1. Linux系统环境
  2. 安装JDK及其环境变量、ssh及ssh的免password登录
  3. Hadoop安装包
  4. 环境变量的配置

环境搭建

改动core-site.xml

改动$HADOOP_HOME/etc/hadoop/core-site.xml文件。在默认情况下,这个文件为空。没有不论什么配置。这里须要指定NameNode的ip和port(默认port是8020)。

<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://192.168.1.134:9000</value>
</property>
</configuration>

192.168.1.134是我的本机地址。能够写localhost或127.0.0.1。可是假设须要Eclipse远程调用Hadoop的时候,须要些详细的ip地址。否则调不通。

改动hdfs-site.xml

HDFS是分布式文件系统。为了安全性考虑,会将上传至HDFS的文件的每一个分块复制到N个节点上,即复制N次(这里的N成为复制因子)。这里将复制因子改为1。

<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>

启动最小Hadoop伪分布式模式

经过上面的最小配置后,Hadoop已经能够启动伪分布式模式了。

格式化文件系统

第一次执行Hadoop的时候须要格式化其文件系统:

$ bin/hdfs namenode -format

假设成功,会打印:

。。。

14/10/14 19:09:05 INFO common.Storage: Storage directory /tmp/hadoop-lxh/dfs/name has been successfully formatted.
。 。。

启动NameNode守护进程和DataNode守护进程

直接通过Hadoop提供的脚本start-dfs.sh就可以:

$ sbin/start-dfs.sh

启动日志保存在$HADOOPLOGDIR文件夹中(默认是$HADOOP_HOME/logs)。

查看启动的进程

能够通过jps查看已经启动的进程:

31536 SecondaryNameNode
31381 DataNode
31254 NameNode
31643 Jps

说明DataNodeNameNodeSecondaryNameNode已经启动成功。

查看NameNode的web接口

通过默认的NameNode的web接口http://localhost:50070/,能够查看NameNode收集的信息。相当于关于Hadoop提供的一个信息查询系统。

Hello World

运行官网提供的验证程序。

$ hdfs dfs -mkdir /input
$ hdfs dfs -put $HADOOP_HOME/etc/hadoop/* /input
$ hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.4.1.jar grep /input /output 'dfs[a-z.]+'
$ hdfs dfs -cat /output/*

最后一条命令是显示最后的运行结果:

6   dfs.audit.logger
4 dfs.class
3 dfs.server.namenode.
2 dfs.period
2 dfs.audit.log.maxfilesize
2 dfs.audit.log.maxbackupindex
1 dfsmetrics.log
1 dfsadmin
1 dfs.servers
1 dfs.replication
1 dfs.file

停止进程

伪分布式模式中的第一个Hello World运行成功后,能够关闭进程了。

$ stop-dfs.sh

配置YARN

通过配置一些參数,并启动ResourceManager守护进程和NodeManager守护进程,能够在伪分布式模式中,在YARN上执行MapReduce任务。

上面的最小配置不变。

改动mapred-site.xml

在默认的Hadoop安装包中,没有mapred-site.xml文件,能够复制mapred-site.xml.template,并改动。指定在YARN中执行MapReduce任务:

<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>

改动yarn-site.xml

指明须要向MapReduce应用提供的Shuffle服务。

<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>

执行

能够通过start-yarn.sh启动ResourceManager守护进程和NodeManager守护进程,通过stop-yarn.sh停止。

补充配置

Hadoop默认将HDFS文件系统写在/tmp/hadoop-中。由于系统重新启动会清理/tmp文件夹。所以须要保证重新启动系统不丢失数据,须要改动默认数据保存位置。

core-site.xml

<property>
<name>hadoop.tmp.dir</name>
<value>file:/home/lxh/hadoop/tmp/hadoop</value>
</property>

hdfs-site.xml

<property>
<name>dfs.namenode.name.dir</name>
<value>file:/home/lxh/hadoop/hdfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/home/lxh/hadoop/hdfs/data</value>
</property>

Hadoop伪分布式模式部署的更多相关文章

  1. 初学者值得拥有【Hadoop伪分布式模式安装部署】

    目录 1.了解单机模式与伪分布模式有何区别 2.安装好单机模式的Hadoop 3.修改Hadoop配置文件---五个核心配置文件 (1)hadoop-env.sh 1.到hadoop目录中 ​ 2.修 ...

  2. Hadoop伪分布式模式搭建

    title: Hadoop伪分布式模式搭建 Quitters never win and winners never quit. 运行环境: Ubuntu18.10-server版镜像:ubuntu- ...

  3. Hadoop伪分布式模式安装

    一.Hadoop介绍 Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS.HDFS有高容错性的特点,并且设计用来部署在低廉的硬件上:而且 ...

  4. 在Hadoop伪分布式模式下安装Hive(derby,mysql)

    我的Hadoop版本是1.2.0,mysql版本是5.6.12. 先介绍一下嵌入式derby模式: 1.下载/解压 在hive官网上选择要下载的版本,我选择的版本是hive-0.10.0. 下载好解压 ...

  5. 在Hadoop伪分布式模式下安装Hbase

    安装环境:Hadoop 1.2.0, Java 1.7.0_21 1.下载/解压 在hbase官网上选择自己要下的hbase版本,我选择的是hbase-0.94.8. 下载后解压到/usr/local ...

  6. VMware workstation 下Hadoop伪分布式模式安装

    详细过程: 1.VMware安装: 2.centos 6 安装 3.jdk下载安装配置 4.Hadoop 安装配置 1.VMware Workstation 安装: https://www.vmwar ...

  7. Hadoop伪分布式模式

    搭建在单一服务器 基于官方文档 http://hadoop.apache.org/docs/r2.7.2/hadoop-project-dist/hadoop-common/SingleCluster ...

  8. Hadoop完全分布式模式安装部署

    在Linux上搭建Hadoop系列:1.Hadoop环境搭建流程图2.搭建Hadoop单机模式3.搭建Hadoop伪分布式模式4.搭建Hadoop完全分布式模式 注:此教程皆是以范例讲述的,当然你可以 ...

  9. Hadoop伪分布模式配置部署

    .实验环境说明 注意:本实验需要按照上一节单机模式部署后继续进行操作 1. 环境登录 无需密码自动登录,系统用户名 shiyanlou,密码 shiyanlou 2. 环境介绍 本实验环境采用带桌面的 ...

随机推荐

  1. AOP 面向切面编程、拦截器

    AOP(Aspect-Oriented Programming,面向切面的编程),它是可以通过预编译方式和运行期动态代理实现在不修改源代码的情况下给程序动态统一添加功能的一种技术.它是一种新的方法论, ...

  2. hdoj 2896 病毒侵袭(AC自动机)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2896 思路分析:题目为模式匹配问题,对于一个给定的字符串,判断能匹配多少个模式:该问题需要静态建树,另 ...

  3. 在SQL 中生成JSON数据

    这段时间接手一个数据操作记录的功能,刚拿到手上的时候打算用EF做,后来经过仔细考虑最后还是觉定放弃,最后思考再三决定: 1.以模块为单位分表.列固定(其实可以所有的操作记录都放到同一个表,但是考虑到数 ...

  4. <input type="text">文本输人框

    type类型: text  文本框 password  口令密码输人框 reset  重置或清除 buttou  命令按钮 checkbox  复选框 radio  单选框 submit  提交 fi ...

  5. Spring boot实现数据库读写分离

    背景 数据库配置主从之后,如何在代码层面实现读写分离? 用户自定义设置数据库路由 Spring boot提供了AbstractRoutingDataSource根据用户定义的规则选择当前的数据库,这样 ...

  6. json与字符串互转

    1 字符串转JSON var obj=eval('('+str+")') var obj=JSON.parse(str) var obj=str.parseJSON() 2 JSON转字符串 ...

  7. 加特殊符号星号斜杠反斜杠/* \ */ !important等让css实现兼容各个浏览器的技巧的代码

       在编写css样式表的时候常常会碰到一写浏览器兼容的问题,象是不同内核的浏览器显示就不一定相同,不同版本的的浏览器也会产生上下兼容的问题,如何解决这些问题成了我们苦恼的问题,如果你对css hac ...

  8. UNIX网络编程 12 15共享内存区

    管道,FIFO,消息队列,在两个进程交换信息时,都要经过内核传递 共享内存可以绕过,默认fork生成的子进程 并不与父进程共享内存区 mmap munmap msync 父子进程共享内存区的方法之一是 ...

  9. 转: seajs手册与文档之 -- require规则

    require 规则 正确拼写 不要修改 使用直接量 动态依赖的小提示 书写规则 使用 SeaJS 书写模块代码时,需要遵循一些简单规则: 1. 正确拼写 在模块代码中,第一个参数 必须 命名为 re ...

  10. 引用 IP电话的原理结构及其关键技术

    引用 茫然 的 两种将字符串转换成浮点数的方法 方法一: char szString[] = "-2876.99812376443"; double db1; db1 = atof ...