专家提醒 部署Hadoop时应该注意具体事项

开发 架构 Hadoop
关于Hadoop方面的知识相信大家因该有所了解,如何部署Hadoop网上也有许多文章介绍,这里向大家介绍一下在部署Hadoop时应该注意的事项,希望本文的介绍对你的学习有所帮助。

本节向大家简单描述一下在部署Hadoop时应该注意的事项,相信通过本节的学习你对如何部署Hadoop有更深刻的认识,让我们一起来关注部署Hadoop时的注意事项吧。

部署Hadoop时的注意事项

最近云计算在中国极为火爆,但看了云计算的那些云山雾罩的概念后,实在让人望而却步。还好不是所有的东西都摸不着头脑,Hadoop就是实实在在的技术之一。不才最近仔细品读了Hadoop的基础资料,特别是如何部署Hadoop的相关技术文档,发现其中有许多不为人注意的东西,在此整理一下。Hadoop 开发者入门专刊(pdf) 是目前比较权威的文档;有什么与Hadoop相关的技术问题也可以到专业的Hadoop技术论坛上去讨论。

Hadoop 集群的组成成份

Hadoop的核心功能有两个:HDFS与MapReduce 。与HDFS相关的服务有NameNode 、SecondaryNameNode 及DataNode ;与MapReduce 相关的服务有JobTracker 和TaskTracker 两种。
Hadoop集群中有两种角色:master与slave,master又分为主master与次master。其中:
主 master同时提供NameNode 、SecondaryNameNode 及JobTracker 三种服务;
次master只提供SecondaryNameNode 服务;
所有slave可以提供DateNode 或TaskTracker 两种服务。

Hadoop有三种集群方式可以选择:
Local (Standalone) Mode(无集群模式)
Pseudo-Distributed Mode(单机集群模式)
Fully-Distributed Mode(多机集群模式)
一个Hadoop集群由多台电脑组成,每台电脑可作为一种或多种角色存在。
当使用Pseudo-Distributed Mode创建Hadoop集群时,一台电脑同时完成主master和slave两种角色的任务。在Fully-Distributed Mode下,如果只有一台电脑作为master,则此电脑完成主master的任务;如果有多台电脑作为master存在,则第一台电脑完成主 master的任务,其它电脑完成次master的任务。

实际部署Hadoop集群

在实际操作中,集群中的电脑名字都是通过/etc/hosts文件指定的。集群中主master是核心,担任这种角色的电脑在其/etc/hosts中保存有集群中所有电脑的名字。次 master与所有的slave只负责与主master联系,所以在这些计算机上的/etc/hosts中只要保存自身和主master的计算机别名即可。
集群模式的选择主要靠主master上$HADOOP_HOME /conf /目录下的masters与slaves两个文件配置完成。如果需要Pseudo-Distributed Mode,则masters与slaves两个文件的内容同时指向主master电脑名字即可。如果需要Fully-Distributed Mode,则masters文件中第一行记录的是主master电脑名字,其它行记录的是次master电脑名字。

无密码SSH 登录

启动Hadoop的方式是在主master上调用下面的命令:
$HADOOP_HOME /bin/start-all.sh
此调用过程中,Hadoop依次启动以下服务:
在主master上启动NameNode 服务;
在主master上启动SecondaryNameNode 服务;
在次master上启动SecondaryNameNode 服务;
在所有slave上启动DataNode 服务;
在主master上启动JobTracker 服务;
在所有slave上的TaskTracker 服务。

部署Hadoop过程中Hadoop需要启动服务,在此需要注意以下几点:
启动NameNode 与JobTracker 服务不需要SSH授权;
需要通过SSH登录之后才能启动SecondaryNameNode 、DataNode 以及TaskTracker 服务,因此:
因为需要启动SencondaryNameNode 服务,所以要为主master提供SSH授权;
因为需要启动SencoddaryNameNode 服务,所以要为所有的次master提供SSH授权;
因为需要启动DataNode 和TaskTracker 服务,所以要为所有的slave提供SSH授权。
总而言之,要为Hadoop集群中的所有计算机提供SSH授权。

为什么要提供无密码SSH登录方式呢?为的是图省事儿。试想在启动 Hadoop集群过程中,要手动输入每一台电脑的SSH密码将是一件多么烦人的事!SSH授权的方法在这里不做详细的描述。无密码SSH登录技术也是相对成熟的技术。但有一个环节需要注意,那就是文件的访问权限问题。
表现为:
Linux系统中$HOME目录下的.ssh目录为用户所有,权限必须为700(只有用户自己可以全权访问);
.ssh目录下的授权文件“authorized_keys”为用户所有,权限必须为644。本节有关部署Hadoop应该注意的事项介绍完毕。

【编辑推荐】

  1. 实例讲解Hadoop用法
  2. Hadoop配置指导手册
  3. Hadoop配置和启动Hadoop方法详解
  4. 两种模式运行Hadoop分布式并行程序
  5. Hadoop开发环境在Windows下的安全配置如何实现?
责任编辑:佚名 来源: csdn.net
相关推荐

2010-08-12 09:39:26

FlexaddChil

2010-05-26 17:05:13

SVN提交

2010-07-27 14:17:52

Flex SDK4

2010-06-01 10:37:15

SVN合并

2010-09-09 17:06:12

CSS

2009-12-29 13:46:06

2010-07-12 14:38:03

UML用例建模

2010-07-06 15:23:24

UML流程图

2013-07-26 14:03:18

VMwarevCenter

2013-01-09 09:44:31

2010-06-10 17:02:40

UML建模

2010-02-03 10:21:46

初学Python

2011-09-26 11:02:10

2010-10-08 15:58:22

IE JS

2011-05-03 16:58:55

喷墨打印机墨水

2010-01-14 18:19:40

C++语言

2010-01-25 18:12:28

C++

2010-01-26 16:47:47

VC++6.0

2010-09-16 09:52:49

CSS display

2010-09-02 13:28:55

CSS
点赞
收藏

51CTO技术栈公众号