Hadoop安装指南

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

支持平台

  • GNU/Linux是产品开发和运行的平台。 Hadoop已在有2000个节点的GNU/Linux主机组成的集群系统上得到验证。
  • Win32平台是作为开发平台支持的。由于分布式操作尚未在Win32平台上充分测试,所以还不作为一个生产平台被支持。    

所需软件

LinuxWindows所需软件包括:

  1. JavaTM1.5.x,必须安装,建议选择Sun公司发行的Java版本。
  2. ssh 必须安装并且保证 sshd一直运行,以便用Hadoop 脚本管理远端Hadoop守护进程。    

一般来说,现在的Linux都带有open ssh,可以通过下面的命令看看是不是启用了sshd ps -ef | grepsshd,如果没有启用可以在/etc/init.d里面找到启用

Windows下的附加软件需求

  1. Cygwin - 提供上述软件之外的shell支持。

安装软件

如果你的集群尚未安装所需软件,你得首先安装它们。

Ubuntu Linux为例:

$ sudo apt-get install ssh
$ sudo apt-get install rsync

Cent OS Linux为例,本示例采用的是Cent OS Linux

yum install rsync

Windows平台上,如果安装cygwin时未安装全部所需软件,则需启动cyqwin安装管理器安装如下软件包:

  • openssh - Net     类

下载

为了获取Hadoop的发行版,从Apache的某个镜像服务器上下载最近的 稳定发行版。这里下载的是0.20.203.0版本

新建系统Hadoop用户

Hadoop要求所有机器上hadoop的部署目录结构要相同,并且都有一个相同的用户名的帐户,所以需要每台机器见一个同名的用户。

在这4台机器上建hadoop用户,密码:hadoop,默认路径/home/hadoop/

运行Hadoop集群的准备工作

解压所下载的Hadoop发行版。编辑conf/hadoop-env.sh文件,至少需要将JAVA_HOME设置为Java安装根路径。

尝试如下命令:
$ bin/hadoop
将会显示hadoop脚本的使用文档。

现在你可以用以下三种支持的模式中的一种启动Hadoop集群:

  • 单机模式
  • 伪分布式模式
  • 完全分布式模式

单机模式的操作方法

默认情况下,Hadoop被配置成以非分布式模式运行的一个独立Java进程。这对调试非常有帮助。

下面的实例将已解压的conf目录拷贝作为输入,查找并显示匹配给定正则表达式的条目。输出写入到指定的output目录。

hadoop根目录下:
$ mkdir input
$ cp conf/*.xml input
$ bin/hadoop jar hadoop-examples-*.jar grep input output 'dfs[a-z.]+'
$ cat output/*

说明:这里的grep不是通常意义的grep,语句的意思是,使用hadoop运行hadoop-examples-*.jargrep作为jar的参数,input作为输入,output作为输出。通常意义的grep如下:

grepglobal search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。Unixgrep家族包括grepegrepfgrep

相关问答

更多
  • 非常感谢楼上的兄弟给我了那么多好的意见,,真是非常感谢,,只是本人的英语水平有限,看英文的安装指导难免有疏忽之处,请多指点 !!
  • 事实就是事实,,我完全按照他的步骤就是装不上去,我是指出别人的缺点让大家共勉 ,这样不好吗?当然绝对没有批判的意思,而且杨先生写的有很多地方值得学习。。
  • 参加豆瓣China-pub抽奖,比较幸运的得到这本Hadoop权威指南中文第二版,拿来与第一版相比,发现新加入了Hive和Sqoop章节,译文质量也提高了不少,并且保留了英文索引......
  • 现在hadoop1.0都出了 简单说一下吧 你的java jdk的环境变量没有设置吧? 最好按以下步骤再做一遍: 1 用root用户安装jdk1.6以上 2 用root用户 创建hadoop用户 3 在hadoop用户下安装hadoop(你上面说的1到4) 4 修改/home/hadoop/.bash_profile将JDK和hadoop的环境变量设置好 5 安装ssh(伪集群也需要ssh)
  • hadoop安装问题[2023-11-22]

    你看的教程是旧的,新版的hadoop启动脚本放在sbin下。start-all.sh已经逐渐被废弃,采用新的启动脚本: sbin/hadoop-daemon.sh --script hdfs start datanodesbin/hadoop-daemon.sh --script hdfs start namenodesbin/yarn-daemon.sh start resourcemanagersbin/yarn-daemon.sh start proxyserversbin/mr-jobhistory ...
  • 没有找到NameNode这个类,估计是你hadoop不全,或者其他配置文件有错误,不是这个配置文件的问题
  • 就是那本有400多页的书吧,我有电子版,讲得挺详细的,主要是讲基础,原理以及架构,不过相对现在来说有些点有些老了
  • 使用bash而不是sh来调用脚本。 这解决了我的问题。 Use bash and not sh to invoke the scripts. That solved my problem.
  • 实际上,如果您使用Cloudera CDH(推荐安装它的方式)的包裹,它将位于/ opt / cloudera / parcels / CDH中,而这又将符号链接到实际的CDH宗地。 在这个目录下,你会发现非常类似于在/下开源Apache Hadoop的结构。 更多的,如果你浏览/你会发现Hadoop正常的二进制文件是符号链接,通过替代方式指向CDH活动宗地。 例如检查/usr/bin/hadoop 。 此安装策略使Cloudera能够在一秒钟内激活新的CDH,并且看起来像普通的Apache Hadoop结 ...
  • 绝对可能。 不要认为Hadoop是一个可安装的程序,它只是由一群在集群内不同节点上运行的java进程组成。 如果你使用hadoop tar ball,你可以只运行NameNode和DataNodes进程,如果你只想要HDFS。 如果您使用其他hadoop发行版(例如HDP),我认为HDFS和mapreduce来自不同的rpm软件包,但安装两个rpm软件包都有害。 如果您只需要HDFS,请再次运行NameNode和DataNodes。 Absolutely possible. Don't think Hado ...