总结_基于单机的Hadoop伪分布式运行模拟实现即其分析过程(完整版)
- 格式:pdf
- 大小:1.51 MB
- 文档页数:63
hadoop期末实训总结一、实训背景Hadoop是一个开源的分布式计算系统,能够处理大规模数据集。
在现实应用中,大数据的处理成为了一项重要的任务。
为了提高学生的实践能力和对Hadoop分布式计算系统的了解,我们学校安排了Hadoop期末实训。
二、实训目标本次实训的主要目标是让学生了解Hadoop的基本概念和原理,并能够通过实践掌握Hadoop的使用方法和技巧。
具体来说,实训的目标如下:1. 掌握Hadoop的基本概念和原理。
Hadoop是一个分布式计算系统,由一个主节点和多个从节点组成。
主节点负责整个系统的管理和调度,从节点负责存储和计算。
学生需要了解Hadoop的基本概念,例如NameNode、DataNode等,并了解Hadoop的工作流程和原理。
2. 掌握Hadoop的安装和配置。
学生需要学会如何在操作系统上安装和配置Hadoop。
这包括设置Hadoop的环境变量、修改配置文件等。
在安装和配置过程中,学生需要应对各种问题和错误,锻炼自己的解决问题能力。
3. 掌握Hadoop的使用方法和技巧。
学生需要学会使用Hadoop的各种命令和工具,例如HDFS命令、MapReduce程序等。
在使用Hadoop的过程中,学生需要处理各种不同类型的数据集,了解Hadoop的数据处理能力和性能。
三、实训过程1. 学习阶段在实训开始前,学生需要通过自学来了解Hadoop的基本概念和原理。
学生可以通过阅读相关教材和文档,观看在线视频,参加线下培训等方式来学习。
2. 实践阶段在学习阶段结束后,学生需要进行实际操作。
学生首先需要在自己的计算机上安装Hadoop,并按照要求进行配置。
然后,学生需要完成一系列小实验,例如创建一个HDFS 文件系统、上传和下载文件、运行一个简单的MapReduce程序等。
3. 项目开发阶段在完成小实验后,学生需要参与到一个真实的项目开发中。
每个学生会被分配到一个小组中,小组由4-5人组成。
hadoop分布式实验总结Hadoop分布式实验总结一、实验目标本次实验的目标是深入理解Hadoop分布式文件系统(HDFS)和MapReduce计算模型,通过实际操作和案例分析,掌握Hadoop的基本原理和应用。
二、实验内容在本次实验中,我们主要完成了以下几个部分的内容:1. HDFS的基本操作:包括在HDFS中创建文件夹、上传和下载文件等。
2. MapReduce编程:编写Map和Reduce函数,实现对数据的处理和分析。
3. Hadoop集群搭建:配置Hadoop集群,了解节点间的通信和数据传输机制。
4. 性能优化:通过调整参数和优化配置,提高Hadoop集群的性能。
三、实验过程1. HDFS操作:首先,我们在本地机器上安装了Hadoop,并启动了HDFS。
然后,我们通过Hadoop命令行工具对HDFS进行了基本的操作,包括创建文件夹、上传和下载文件等。
在操作过程中,我们遇到了权限问题,通过修改配置文件解决了问题。
2. MapReduce编程:我们选择了一个经典的问题——单词计数作为案例,编写了Map和Reduce函数。
在编写过程中,我们了解了MapReduce的基本原理和编程模型,以及如何处理数据的分片和shuffle过程。
3. Hadoop集群搭建:我们在实验室的局域网内搭建了一个Hadoop集群,配置了各个节点之间的通信和数据传输。
在配置过程中,我们注意到了防火墙和网络通信的问题,通过调整防火墙规则和配置网络参数,解决了问题。
4. 性能优化:我们对Hadoop集群进行了性能优化,通过调整参数和优化配置,提高了集群的性能。
我们了解到了一些常用的优化方法,如调整数据块大小、优化网络参数等。
四、实验总结通过本次实验,我们深入了解了Hadoop分布式文件系统和MapReduce计算模型的基本原理和应用。
在实验过程中,我们遇到了一些问题,但通过查阅资料和互相讨论,最终解决了问题。
通过本次实验,我们不仅掌握了Hadoop的基本操作和编程技能,还提高了解决实际问题的能力。
Hadoop测试题一.填空题,1分(41空),2分(42空)共125分1.(每空1分) datanode 负责HDFS数据存储。
2.(每空1分)HDFS中的block默认保存 3 份。
3.(每空1分)ResourceManager 程序通常与NameNode 在一个节点启动。
4.(每空1分)hadoop运行的模式有:单机模式、伪分布模式、完全分布式。
5.(每空1分)Hadoop集群搭建中常用的4个配置文件为:core-site.xml 、hdfs-site.xml、mapred-site.xml 、yarn-site.xml 。
6.(每空2分)HDFS将要存储的大文件进行分割,分割后存放在既定的存储块中,并通过预先设定的优化处理,模式对存储的数据进行预处理,从而解决了大文件储存与计算的需求。
7.(每空2分)一个HDFS集群包括两大部分,即namenode 与datanode 。
一般来说,一个集群中会有一个namenode 和多个datanode 共同工作。
8.(每空2分) namenode 是集群的主服务器,主要是用于对HDFS中所有的文件及内容数据进行维护,并不断读取记录集群中datanode 主机情况与工作状态,并通过读取与写入镜像日志文件的方式进行存储。
9.(每空2分) datanode 在HDFS集群中担任任务具体执行角色,是集群的工作节点。
文件被分成若干个相同大小的数据块,分别存储在若干个datanode 上,datanode 会定期向集群内namenode 发送自己的运行状态与存储内容,并根据namnode 发送的指令进行工作。
10.(每空2分) namenode 负责接受客户端发送过来的信息,然后将文件存储位置信息发送给client ,由client 直接与datanode 进行联系,从而进行部分文件的运算与操作。
11.(每空1分) block 是HDFS的基本存储单元,默认大小是128M 。
实训项目名称:搭建Hadoop集群项目目标:通过实际操作,学生将能够搭建一个基本的Hadoop集群,理解分布式计算的概念和Hadoop生态系统的基本组件。
项目步骤:1. 准备工作介绍Hadoop和分布式计算的基本概念。
确保学生已经安装了虚拟机或者物理机器,并了解基本的Linux命令。
下载Hadoop二进制文件和相关依赖。
2. 单节点Hadoop安装在一台机器上安装Hadoop,并配置单节点伪分布式模式。
创建Hadoop用户,设置环境变量,编辑Hadoop配置文件。
启动Hadoop服务,检查运行状态。
3. Hadoop集群搭建选择另外两台或更多机器作为集群节点,确保网络互通。
在每个节点上安装Hadoop,并配置集群节点。
编辑Hadoop配置文件,包括core-site.xml、hdfs-site.xml、mapred-site.xml等。
配置SSH无密码登录,以便节点之间能够相互通信。
4. Hadoop集群启动启动Hadoop集群的各个组件,包括NameNode、DataNode、ResourceManager、NodeManager 等。
检查集群状态,确保所有节点都正常运行。
5. Hadoop分布式文件系统(HDFS)操作使用Hadoop命令行工具上传、下载、删除文件。
查看HDFS文件系统状态和报告。
理解HDFS的数据分布和容错机制。
6. Hadoop MapReduce任务运行编写一个简单的MapReduce程序,用于分析示例数据集。
提交MapReduce作业,观察作业的执行过程和结果。
了解MapReduce的工作原理和任务分配。
7. 数据备份和故障恢复模拟某一节点的故障,观察Hadoop集群如何自动进行数据备份和故障恢复。
8. 性能调优(可选)介绍Hadoop性能调优的基本概念,如调整副本数、调整块大小等。
尝试调整一些性能参数,观察性能改善情况。
9. 报告撰写撰写实训报告,包括项目的目标、步骤、问题解决方法、实验结果和总结。
利用Hadoop实现分布式数据处理的步骤与方法随着数据量的急剧增长和计算任务的复杂化,传统的数据处理方法已经无法满足当今大数据时代的需求。
分布式数据处理技术由此应运而生,它能够将庞大的数据集分解为多个小块,然后在多个计算节点上并行处理,提高数据处理的效率和可靠性。
Hadoop作为目前最流行的分布式数据处理框架之一,具备高可靠性、高扩展性以及良好的容错性,并且能够在廉价的硬件上运行。
下面将介绍使用Hadoop实现分布式数据处理的步骤与方法。
1. 数据准备在开始之前,首先需要准备需要处理的数据集。
这些数据可以是结构化数据、半结构化数据或非结构化数据。
在准备数据时,需要考虑数据的格式、大小以及数据的来源。
可以从本地文件系统、HDFS、数据库或云存储等不同的数据源中获取数据。
确保数据的完整性和正确性非常重要。
2. Hadoop集群搭建接下来,需要搭建一个Hadoop集群来支持分布式数据处理。
Hadoop集群由一个主节点(Master)和多个从节点(Slaves)组成。
主节点负责任务调度、资源管理和数据分发,而从节点负责实际的数据处理任务。
搭建Hadoop集群的过程包括设置主节点和从节点的配置文件、创建HDFS文件系统以及配置各个节点的网络设置等。
可以采用Apache Hadoop的标准发行版或者使用商业发行版(如Cloudera或Hortonworks)来搭建Hadoop集群。
3. 数据分析与计算一旦完成Hadoop集群的搭建,就可以开始进行数据处理了。
Hadoop通过MapReduce模型来实现数据的并行处理。
Map阶段将输入数据分割为若干个小的数据块,并将每个数据块交给不同的计算节点进行处理。
Reduce阶段将Map阶段输出的结果进行合并和汇总。
为了实现数据的分析与计算,需要编写Map和Reduce函数。
Map函数负责将输入数据转换成键值对(Key-Value Pair),而Reduce函数负责对Map函数输出的键值对进行操作。
Hadoop伪分布式搭建实验报告心得一、实验目的1. 掌握Hadoop的基本原理和架构。
2. 学习并实践Hadoop的伪分布式环境的搭建。
3. 熟悉Hadoop的基本操作和管理。
二、实验环境1. 操作系统:CentOS 7.x2. Hadoop版本:2.x3. Java版本:1.8三、实验步骤1. 安装JDK首先需要在服务器上安装Java开发工具包(JDK),可以从Oracle官网下载对应版本的JDK安装包,然后按照提示进行安装。
2. 配置环境变量编辑/etc/profile文件,添加以下内容:```bashexport JAVA_HOME=/usr/local/java/jdk1.8.0_xxxexport PATH=$JAVA_HOME/bin:$PATH```使配置生效:```bashsource /etc/profile```3. 下载并解压Hadoop从Apache官网下载Hadoop的tar包,然后解压到指定目录,例如:/usr/local/hadoop。
4. 配置Hadoop环境变量编辑~/.bashrc文件,添加以下内容:```bashexport HADOOP_HOME=/usr/local/hadoopexport PATH=$HADOOP_HOME/bin:$PATH```使配置生效:```bashsource ~/.bashrc```5. 配置Hadoop的核心配置文件复制一份hadoop-env.sh.template文件到hadoop-env.sh,并修改其中的JAVA_HOME 为实际的JDK路径。
编辑core-site.xml文件,添加以下内容:```xml<configuration><property><name>fs.defaultFS</name><value>hdfs://localhost:9000</value></property></configuration>```编辑hdfs-site.xml文件,添加以下内容:```xml<configuration><property><name>dfs.replication</name><value>1</value></property></configuration>```6. 格式化HDFS文件系统在Hadoop安装目录下执行以下命令:```bashhadoop namenode -format```7. 启动Hadoop集群执行以下命令启动Hadoop集群:```bashstart-all.sh```8. 验证Hadoop集群状态执行以下命令查看Hadoop集群状态:```bashjps | grep Hadoop```如果看到NameNode、SecondaryNameNode、DataNode等进程,说明Hadoop集群已经成功启动。
Hadoop知识点总结Hadoop知识点总结1.什么是hadoop?hadoop是⼀个开源软件框架,⽤于存储⼤量数据,并发处理/查询在具有多个商⽤硬件(即低成本硬件)节点的集群上的那些数据。
总之Hadoop包括⼀下内容:HDFS(Hadoop分布式⽂件系统):允许以⼀种分布式和冗余的⽅式存储⼤量数据。
例如:1GB(即1024MB)⽂本⽂件可以拆分为16*128MB⽂件,并存储在Hadoop集群中的8个不同节点上。
每个分裂可以复制三次,以实现容错,以便如果⼀个节点出现错误的话,也有备份。
HDFS适⽤于顺序的"⼀次写⼊,多次读取"的类型访问。
MapReduce:⼀个计算框架。
它以分布式和并⾏的⽅式处理⼤量的数据,当你对所有年龄>18的⽤户在上述1GB⽂件上执⾏查询时,将会有"8个映射"函数并⾏运⾏,以在其128MB拆分⽂件中提取年龄>18的⽤户,然后"reduce"函数将将会运⾏以将所有单独的输出组合成单个最终结果。
YARN(⼜⼀资源定位器):⽤于作业调度和集群资源管理的框架。
Hadoop⽣态系统,拥有15多种框架和⼯具,如Sqoop,Flume,Kafka,Pig,Hive,Spark,Impala等以便将数据摄⼊HDFS,在HDFS中转移数据(即变换、丰富、聚合等),并查询来⾃HDFS的数据⽤于商业智能和分析。
某些⼯具(如Pig和Hive)是MapReduce上的抽象层,⽽Spark和Impala等其他⼯具则是来⾃MapReduce的改进架构/设计,⽤于显著提⾼延迟以⽀持近实时和实时处理2.为什么组织从传统的数据仓库⼯具转移到基于Hadoop⽣态系统的智能数据中⼼?1.现有数据基础设施:主要使⽤存储在⾼端和昂贵硬件中的"structured data,结构化数据"主要处理为ETL批处理作业,⽤于将数据提取到RDBMS和数据仓库系统中进⾏数据挖掘,分析和报告,以进⾏关键业务决策主要处理以千兆字节到兆字节为单位的数据量2.基于Hadoop的更加智能的数据基础设施,其中:结构化(例如RDBMS),⾮结构化(例如images,PDF,docs)和半结构化(例如logs,XMLs)的数据可以以可扩展和容错的⽅式存储在⽐较便宜的商⽤机器中数据可以存储诸如Spark和Impala之类的⼯具以低延迟的能⼒查询可以存储以兆兆字节到千兆字节为单位的较⼤数据量3.基于Hadoop的数据中⼼的好处是什么?随着数据量和复杂性的增加,提⾼量整体服务⽔平协议。
1.Hadoop集群搭建(单机伪分布式)>>>加磁盘1)⾸先先将虚拟机关机2)选中需要加硬盘的虚拟机:右键-->设置-->选中硬盘,点击添加-->默认选中硬盘,点击下⼀步-->默认硬盘类型SCSI(S),下⼀步-->默认创建新虚拟磁盘(V),下⼀步-->根据实际需求,指定磁盘容量(单个或多个⽂件⽆所谓,选哪个都⾏),下⼀步。
-->指定磁盘⽂件,选择浏览,找到现有虚拟机的位置(第⼀次出现.vmdk⽂件的⽂件夹),放到⼀起,便于管理。
点击完成。
-->点击确定。
3) 可以看到现在选中的虚拟机有两块硬盘,点击开启虚拟机。
这个加硬盘只是在VMWare中,实际⼯作中直接买了硬盘加上就可以了。
4)对/dev/sdb进⾏分区df -h 查看当前已⽤磁盘分区fdisk -l 查看所有磁盘情况磁盘利⽤情况,依次对磁盘命名的规范为,第⼀块磁盘sda,第⼆块为sdb,第三块为sdc。
可以看到下图的Disk /dev/sda以第⼀块磁盘为例,磁盘分区的命名规范依次为sda1,sda2,sda3。
同理也会有sdb1,sdb2,sdb3。
可以参照下图的/dev/sda1。
下⾯的含义代表sda盘有53.7GB,共分为6527个磁柱,每个磁柱单元Units的⼤⼩为16065*512=8225280 bytes。
sda1分区为1-26号磁柱,sda2分区为26-287号磁柱,sda3为287-6528号磁柱下⾯的图⽚可以看到,还未对sdb磁盘进⾏分区fdisk /dev/sdb 分区命令可以选择m查看帮助,显⽰命令列表p 显⽰磁盘分区,同fdisk -ln 新增分区d 删除分区w 写⼊并退出选w直接将分区表写⼊保存,并退出。
mkfs -t ext4 /dev/sdb1 格式化分区,ext4是⼀种格式mkdir /newdisk 在根⽬录下创建⼀个⽤于挂载的⽂件mount /dev/sdb1 /newdisk 挂载sdb1到/newdisk⽂件(这只是临时挂载的解决⽅案,重启机器就会发现失去挂载)blkid /dev/sdb1 通过blkid命令⽣成UUIDvi /etc/fstab 编辑fstab挂载⽂件,新建⼀⾏挂载记录,将上⾯⽣成的UUID替换muount -a 执⾏后⽴即⽣效,不然的话是重启以后才⽣效。
hadoop实验报告总结Hadoop是一个大数据处理框架,它可以处理 petabyte 级别的数据存储和处理。
在大数据时代,Hadoop 的使用越来越普及,因此学习和掌握 Hadoop 成为了当今大数据从业人员的必修课。
本实验报告旨在介绍 Hadoop 的使用,以及在使用过程中所遇到的问题和解决方法。
我们需要了解 Hadoop 的基本架构。
Hadoop 的基本组成部分包括 HDFS(Hadoop Distributed File System),MapReduce,YARN(Yet Another Resource Negotiator)等。
HDFS 是一个用于存储和管理大数据的分布式文件系统,MapReduce 是一种用于分布式数据处理的编程模型,YARN 则是一个资源管理系统。
这三个组成部分相互配合,使得Hadoop 可以完成大数据存储和处理的任务。
在本次实验中,我们主要使用 HDFS 和 MapReduce 进行操作。
在使用 HDFS 进行操作之前,我们需要了解 HDFS 的基本概念和几个关键点。
HDFS 的文件以块的形式存储在不同的数据节点中,每个块的大小默认为 128MB。
每个文件至少会存储在三个数据节点中,以确保数据的容错性和高可用性。
HDFS 还具有很好的扩展性,可以根据需要增加更多的数据节点。
在使用 HDFS 进行操作时,我们可以使用 Hadoop 自带的命令行界面或者使用 GUI工具,如 Apache Ambari。
在本次实验中,我们使用了 Hadoop 自带的命令行界面进行操作。
在操作中,我们通过以下几个步骤实现了文件的上传、下载和删除操作:1. 使用命令 `hdfs dfs -put` 上传文件到 HDFS 上。
2. 使用命令 `hdfs dfs -get` 从 HDFS 上下载文件到本地。
3. 使用命令 `hdfs dfs -rm` 删除 HDFS 上的文件。
在使用 HDFS 时还需要注意以下几个关键点:1. 在上传文件时需要指定文件的大小和副本数,默认情况下副本数为 3。
hadoop分布式环境搭建实验总结Hadoop分布式环境搭建实验总结一、引言Hadoop是目前最流行的分布式计算框架之一,它具有高可靠性、高扩展性和高效性的特点。
在本次实验中,我们成功搭建了Hadoop分布式环境,并进行了相关测试和验证。
本文将对实验过程进行总结和归纳,以供参考。
二、实验准备在开始实验之前,我们需要准备好以下几个方面的内容:1. 硬件环境:至少两台具备相同配置的服务器,用于搭建Hadoop 集群。
2. 软件环境:安装好操作系统和Java开发环境,并下载Hadoop 的安装包。
三、实验步骤1. 安装Hadoop:解压Hadoop安装包,并根据官方文档进行相应的配置,包括修改配置文件、设置环境变量等。
2. 配置SSH无密码登录:为了实现集群间的通信,需要配置各个节点之间的SSH无密码登录。
具体步骤包括生成密钥对、将公钥分发到各个节点等。
3. 配置Hadoop集群:修改Hadoop配置文件,包括core-site.xml、hdfs-site.xml和mapred-site.xml等,设置集群的基本参数,如文件系统地址、数据存储路径等。
4. 启动Hadoop集群:通过启动NameNode、DataNode和ResourceManager等守护进程,使得集群开始正常运行。
可以通过jps命令来验证各个进程是否成功启动。
5. 测试Hadoop集群:可以使用Hadoop自带的例子程序进行测试,如WordCount、Sort等。
通过执行这些程序,可以验证集群的正常运行和计算能力。
四、实验结果经过以上步骤的操作,我们成功搭建了Hadoop分布式环境,并进行了相关测试。
以下是我们得到的一些实验结果:1. Hadoop集群的各个节点正常运行,并且能够相互通信。
2. Hadoop集群能够正确地处理输入数据,并生成期望的输出结果。
3. 集群的负载均衡和容错能力较强,即使某个节点出现故障,也能够继续运行和处理任务。
基于单机的Hadoop伪分布式运行模拟实现即其分析过程目录基于单机的Hadoop伪分布式运行模拟实现 (2)通过单机的Hadoop伪分布式运行理解Hadoop运行过程(1) (20)通过单机的Hadoop伪分布式运行理解Hadoop运行过程(2) (32)通过单机的Hadoop伪分布式运行理解Hadoop运行过程(3) (56)声明:本资料信息来源于互联网,由作者总结而成,仅供学习。
云南大学周军 2009/11/8基于单机的Hadoop伪分布式运行模拟实现在单机来模拟Hadoop基于分布式运行,最终通过在本机创建多个线程来模拟。
主要就是实现运行Hadoop自带的WordCount这个例子,具体实现过程将在下面详细叙述。
这种模式也是在一台单机上运行,但用不同的 Java 进程模仿分布式运行中的各类结点 ( NameNode, DataNode, JobTracker, TaskTracker, Secondary NameNode ),请注意分布式运行中的这几个结点的区别:从分布式存储的角度来说,集群中的结点由一个 NameNode 和若干个 DataNode 组成, 另有一个 Secondary NameNode 作为 NameNode 的备份。
从分布式应用的角度来说,集群中的结点由一个 JobTracker 和若干个 TaskTracker 组成,JobTracker 负责任务的调度,TaskTracker 负责并行执行任务。
TaskTracker 必须运行在 DataNode 上,这样便于数据的本地计算。
JobTracker 和 NameNode 则无须在同一台机器上。
安装cygwin步骤如下:1、首先点击/setup.exe下载setup.exe,例如保存到桌面,点击就可以进行下载安装了。
2、运行下载文件,将会看到:Cygwin Installer3、然后选择安装路径、安装文件存放路径、连接方式(这里选择Use IE5 Settings)、下载站点镜像,自动创建下载文件列表,4、当你看到如下界面时,请确保下面红圈内的包被下载,也即’openssh’被选择;或者 选择安装类型,可以单击最顶层的All后面的循环样式图标切换安装类型,是的最顶层All行的最后一个单词为Install,如图:其实,如果你选择了Install安装类型,就已经选择了openssh包。
为让你看到openssh包,你可以在Net [图标] Install 下面看到与网络有关的包,如图所示:向下滑动滚动条,可以看到openssh,如图所示:在Cirrent下如果显示版本号,说明该包已经被此次安装选择上了,否则的话会显示一个Skip,意思是跳过该包,并不会安装该包的。
4、继续按下一步结束安装。
Cygwin的配置安装完成之后,例如我的Cygwin安装在C:\Cygwin\目录下面,进行配置如下:设置环境变量:在系统变量中新建变量【变量名:CYGWIN,变量值:ntsec tty】;编辑添加变量【变量名:Path,变量值:c:\cygwin\bin;c:\cygwin\usr\bin;其它的保留】。
配置ssh 后台守候程序配置过程如下图所示:Example of using ssh-host-config如果之前配置过一次,会显示如下所示提示操作,以及我都选择了no,如图:接下来,它会询问你是否将sshd作为一项服务进行安装,即“*** Query: Do you want to install sshd as a service?”,看我的选择过程:我选择了是将sshd作为一项服务进行安装,接着提示我输入:Enter the value of CYGWIN for the daemon: [ntsec]其实,我已经在环境变量中设置了CYGWIN = tty的,但是似乎不好使,还要看提示信息的:*** ERROR: Only [no] "check_case:strict" "ntsec" "smbntsec" "traverse" allowed.提示说,只有"check_case:strict" "ntsec" "smbntsec" "traverse"这四个可以选择作为一种服务进行安装,而且[no] "check_case:strict"应该表示不存在吧。
直接输入ntsec即可,如下所示:*** Query: Enter the value of CYGWIN for the daemon: [ntsec] ntsec*** Info: The sshd service has been installed under the LocalSystem *** Info: account (also known as SYSTEM). To start the service now, call *** Info: `net start sshd' or `cygrunsrv -S sshd'. Otherwise, it*** Info: will start automatically after the next reboot.*** Info: Host configuration finished. Have fun!SHIYANJUN@cbbd2ce9428e48b ~可见,它提示sshd已经在本地系统安装好了,可以启动sshd了,sshd是守护进程。
启动ssh 后台守候程序生成authorization keys在ssh-keygen.exe的过程中有可能产生错误:c:\program请去除 高级 -环境变量 -用户变量 –HOME对于上面这种方法是可行的,当然还可以参考下面步骤:因为基于分布式的多个Datanode结点需要向Namenode提供任务执行报告信息,如果每次访问Namenode结点都需要密码验证的话就麻烦了,当然我要说的就是基于无密码认证的方式的配置,可以参考我的其他文章。
生成RSA公钥的命令如下:$ ssh-keygen 失败 已解决:去除 高级-》环境变量-》用户变量-》HOME生成过程如图所示:上面执行到如下步骤时需要进行设置:Enter file in which to save the key (/home/SHIYANJUN/.ssh/id_rsa):直接按回车键即可,按照默认的选项将生成的RSA公钥保存在/home/SHIYANJUN/.ssh/id_rsa文件中,以便结点之间进行通讯认证。
继续执行,又会提示进行输入选择密码短语passphrase,在如下这里:Enter passphrase (empty for no passphrase):直接按回车键,而且一定要这么做,因为空密码短语就会在后面执行过程中免去结点之间通讯进行的认证,直接通过RSA公钥(事实上,我们使用的是DSA认证,当然RSA也可以进行认证,继续看后面)认证。
RSA公钥主要是对结点之间的通讯信息加密的。
如果RSA公钥生成过程如上图,说明正确生成了RSA公钥。
接着生成DSA公钥,使用如下命令:$ ssh-keygen -t dsa生成过程与前面的RSA类似,如图所示:然后,需要将DSA公钥加入到公钥授权文件authorized_keys中,使用如下命令:$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys如图所示,没有任何信息输出:在配置结束后,用ssh localhost测试Hadoop 下载并安装Hadoop配置首先进行Hadoop配置:1、conf/hadoop-env.sh文件中最基本需要指定JAVA_HOME,例如我的如下: 打开它你可以看到:# The java implementation to use. Required.# export JAVA_HOME=/usr/lib/j2sdk1.5-sun将第二行的注释符号去掉,同时指定在你的机器上JAVA_HOME的值,如下为我修改的内容:# The java implementation to use. Required.export JAVA_HOME="D:\Program Files\Java\jdk1.6.0_07"这里要注意,如果你的JDK安装目录中存在空格,需要使用双引号引起来,否则就会报错。
还需注意这个地方的JDK是系统正在使用的JDK。
2、只需要修改conf/hadoop-site.xml文件即可,默认情况下,hadoop-site.xml 并没有被配置,如果是基于单机运行,就会按照hadoop-default.xml中的基本配置选项执行任务。
将hadoop-site.xml文件修改为如下所示:<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="configuration.xsl"?><!-- Put site-specific property overrides in this file. --><configuration><property><name></name><value> hdfs://localhost:9000</value></property><property><name>mapred.job.tracker</name><value>localhost:9001</value></property><property><name>dfs.replication</name><value>1</value></property></configuration>参数 指定 NameNode 的 IP 地址和端口号。
缺省值是file:///, 表示使用本地文件系统, 用于单机非分布式模式。
此处我们指定使用运行于本机 localhost 上的 NameNode。
参数 mapred.job.tracker 指定 JobTracker 的 IP 地址和端口号。