Hadoop on Windows With Eclipse(伪分布式)

2019-03-28 13:03|来源: 网络

1介绍

Hadoop是一个强大的架构,用于自动并行化的计算任务。不幸的是某些编程对于它是个挑战。Hadoop程序让人难以理解和调试。有一种方法可以在开发人员的机器上本地运行一个简化版的Hadoop集群使之更容易一些。本教程描述如何设置这样一个集群运Windows平台上。它还描述了如何使用Eclipse集成这个集群,一个主要的Java开发环境。

2.安装前的准备

在我们开始之前,要确保以下组件安装在了你的机器上。

l Java 1.7.0_17

l Eclipse-SDK-4.2.2

注:本教程测试环境是Hadoop1.0.4版本,如果你使用的是其他版本可以酌情去安装

为了确保不出现问题,建议都使用最新版本,我这两个版本都是最新下载的。

2.1 安装Cygwin

安装完预安装软件后,下一步就是安装Cygwin环境。Cygwin是一个组从Unix上移植到Windows的包。因为Hadoop都是写在Unix平台上的,所以用Cygwin提供Hadoop的运行环境。

安装cygwin环境有以下步骤:

1) 首先从http://www.cygwin.com网站下载所需的安装文件

2) 点击下载文件,你会看到如下的截图-本教程版本为1.7.17-1版本

CygwinInstaller

3) 当你看到上面的截图的时候,点击下一步按钮你会看到屏幕上有选择包的界面。要确保你选择了net category里的”openssh”。这个包是确保Hadoop集群正常运作和Eclipse的插件。

4)你选择完这些包后,点击下一步,完成安装。

3.设置环境变量

下一步是设置路径环境变量,以至于Eclipse IDE可以访问Cygwin命令。

设置环境变量需要以下步骤:

1) 我的计算机右键->属性

2)当你看到这个属性对话框,点击环境变量按钮如下所示

3)当环境变量对话框出现时,单击路径变量位于系统变量栏,然后单击Edit按钮。

 

4)当编辑对话框在Path末尾添加以下文本

$ ;d:\cygwin\bin;d:\cygwin\usr\sbin

注:这个路径要根据你cygwin安装到那个目录

5)OK!!!

4 设置SSH守护进程

两个Hadoop的脚本和Eclipse的插件需要无密码的SSH来操作。本节描述了在Cygwin环境如何设置。

相关问答

更多
  • 0.关闭防火墙 service iptables start;#立即开启防火墙,但是重启后失效。 service iptables stop;#立即关闭防火墙,但是重启后失效。 重启后生效 chkconfig iptables on;#开启防火墙,重启后生效 chkconfig iptables off;#关闭防火墙,重启后生效 1.配置主机名 !!!!!注意安装hadoop的集群主机名不能有下划线!!不然会找不到主机!无法启动! 配置主机名 $vi /etc/sysconfig/network $sour ...
  • 第一步: 安装JDK 因为 Hadoop 运行必须安装 JDK 环境,因此在安装好 Linux 后进入系统的第一步 便是安装 JDK ,安装过程和在 Windows 环境中的安装步骤很类似,首先去Oracle 官网 去下载安装包,然后直接进行解压。我自己解压在路径 /usr/jvm 下面,假如你的安装包现在已经下载在 jvm 文件夹下面,然后 按 Ctrl+Alt+t 进去命令行,然后输入 cd /usr/jvm 进入到jvm文件夹下面,然后再输入如下命令进行解压: sudo tar -zxvf jdk-7 ...
  • 若在windows的Eclipse工程中直接启动mapreduc程序,需要先把hadoop集群的配置目录下的xml都拷贝到src目录下,让程序自动读取集群的地址后去进行分布式运行(您也可以自己写java代码去设置job的configuration属性)。   若不拷贝,工程中bin目录没有完整的xml配置文件,则windows执行的mapreduce程序全部通过本机的jvm执行,作业名也是带有“local"字眼的作业,如 job_local2062122004_0001。 这不是真正的分布式运行mapred ...
  • Hadoop 有两个主要版本,Hadoop 1.x.y 和 Hadoop 2.x.y 系列,比较老的教材上用的可能是 0.20 这样的版本。Hadoop 2.x 版本在不断更新,本教程均可适用 如果需安装 0.20,1.2.1这样的版本,本教程也可以作为参考,主要差别在于配置项,配置请参考官网教程或其他教程。
  • hadoop分为单机模式,伪分布式,和完全分布式。 你说的伪分布式是指:一个机器上,即当namenode,又当datanode,或者说即是jobtracker,又是tasktracker。没有所谓的在多台机器上进行真正的分布式计算,故称为"伪分布式"。
  • 在 /usr/local/hadoop/ 下面启动,找到是/opt/Hadoop/下面的hadoop安装包,是不是HADOOP_HOME环境变量配置的有问题。 可以到海牛部落交流,那里有好多学习hadoop的朋友
  • mahout 和 hadoop没有啥关系,非得说关系的话,你得弄清二者是干啥的 mahout是一个机器学习算法库,人家是做一些经典的机器学习的算法实现的; hadoop是一个开源的分布式的数据处理引擎(HadoopV1来说,是MapReduce),人家很多时候是做大规模数据处理的; 所以,Mahout上的一些算法支持用mapreduce的编程模型实现,所以就可以运行在Hadoop平台上; 这样说你就可以明白了吧,二者不是一个层级上的东西,所发挥的作用也是不一样的,而且你运行的实例的确也没有用到Hadoop。 ...
  • hadoop集群指的是一群机器在一起提供一个hadoop的集群的服务。 hadoop分布式指的是hadoop支持任务分布式运行,因为有hadoop集群提供服务,所以hadoop将任务分发到集群的多台机器运行,所以叫做分布式。 一个是服务器架构,一个是任务运行架构。
  • 请参阅上面的Lorand的评论。 远程调试仅适用于独立模式。 See Lorand's comment above. Remote debugging will only work in standalone mode.
  • 要知道您是以独立还是伪分布模式运行hadoop,请验证您的配置文件。 以下信息可能有帮助。 To know if you are running hadoop in Standalone or Pseudo distributed mode, verify your configuration files. Below information might help.