基于hadoop的云计算 第一篇 安装配置篇.docx

上传人:b****2 文档编号:1727414 上传时间:2023-05-01 格式:DOCX 页数:13 大小:96.47KB
下载 相关 举报
基于hadoop的云计算 第一篇 安装配置篇.docx_第1页
第1页 / 共13页
基于hadoop的云计算 第一篇 安装配置篇.docx_第2页
第2页 / 共13页
基于hadoop的云计算 第一篇 安装配置篇.docx_第3页
第3页 / 共13页
基于hadoop的云计算 第一篇 安装配置篇.docx_第4页
第4页 / 共13页
基于hadoop的云计算 第一篇 安装配置篇.docx_第5页
第5页 / 共13页
基于hadoop的云计算 第一篇 安装配置篇.docx_第6页
第6页 / 共13页
基于hadoop的云计算 第一篇 安装配置篇.docx_第7页
第7页 / 共13页
基于hadoop的云计算 第一篇 安装配置篇.docx_第8页
第8页 / 共13页
基于hadoop的云计算 第一篇 安装配置篇.docx_第9页
第9页 / 共13页
基于hadoop的云计算 第一篇 安装配置篇.docx_第10页
第10页 / 共13页
基于hadoop的云计算 第一篇 安装配置篇.docx_第11页
第11页 / 共13页
基于hadoop的云计算 第一篇 安装配置篇.docx_第12页
第12页 / 共13页
基于hadoop的云计算 第一篇 安装配置篇.docx_第13页
第13页 / 共13页
亲,该文档总共13页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

基于hadoop的云计算 第一篇 安装配置篇.docx

《基于hadoop的云计算 第一篇 安装配置篇.docx》由会员分享,可在线阅读,更多相关《基于hadoop的云计算 第一篇 安装配置篇.docx(13页珍藏版)》请在冰点文库上搜索。

基于hadoop的云计算 第一篇 安装配置篇.docx

基于hadoop的云计算第一篇安装配置篇

Hadoop学习笔记——安装配置篇

邓兵野

Hadoop学习笔记——安装配置篇1

1.Hadoop基本组成1

2.名词解释1

3.安装平台:

2

4.所需的软件:

2

5.下载2

6.部署2

7.环境配置2

7.1公共配置(集群中所有机器都需要的配置)2

7.2每个节点不同的配置4

8.hadoop无用户登录配置7

9.启动hadoop9

1.Hadoop基本组成

NameNode主要存放文件映射和文件更改日志

SecondaryNameNode一个守护进程定时从NameNode同步文件更改日志并合并成一条日志,方便hadoop每次重启时找到上次宕机的还原点。

在后续的版本中会被backupNameNode和nameNode集群取代。

Jobtracker任务调度守护进程

Tasktracker任务执行进程

DataName数据存储节点,往往和Tasktracker部署在同一台机器上。

2.名词解释

名词

说明

备注

NN

NameNode

Master主节点

SNN

SecondaryNameNode

Jt

Jobtracker

Tt

Tasktracker

DN

DataNode

数据存储节点

3.安装平台:

GNU/Linux,hadoop不建议在win32平台上使用,顾这里只介绍在linux系统上的安装和配置

4.所需的软件:

JavaTM1.5.x及以上的版本,必须安装,建议选择Sun公司发行的Java版本。

ssh必须安装并且保证sshd一直运行,以便用Hadoop脚本管理远端Hadoop守护进程。

5.下载

本文使用的是hadoop-0.20.203.0,笔者当前的稳定版本。

下载地址http:

//hadoop.apache.org/common/releases.html#Download

6.部署

本文使用的是4台linux机器,hadoop.master作为namenode节点,hadoop.second作为secondaryNameNode节点,hadoop.slave1作为第一datanode节点,hadoop.slave2作为第二个datanode节点。

7.环境配置

7.1公共配置(集群中所有机器都需要的配置)

Ø编辑环境变量

建议直接编辑/etc/profile文件增加JAVA_HOME和HADOOP_HOME环境变量,具体事例如下所示:

[root@hadoop~]#vi/etc/profile

增加如下几行代码

exportJAVA_OPTS='-Xms256m-Xmx512m'

exportJAVA_HOME=/usr/local/java

exportCLASSPATH=.:

$JAVA_HOME/lib/dt.jar:

$JAVA_HOME/lib/tools.jar

exportJRE_HOME=/usr/local/java/jre

exportPATH=$JAVA_HOME/bin:

$PATH

exportHADOOP_HOME=/usr/local/hadoop

exportPATH=$PATH:

$HADOOP_HOME/bin

笔者为了以后方便起停hadoop把hadoop的bin也目录加到path中。

:

wq

让环境变量即时生效

[root@hadoop~]#source/etc/profile

Ø修改hosts文件

[root@hadoop~]#vi/etc/hosts

在打开的文件中添加如下配置

192.168.2.17hadoop.master

192.168.2.19hadoop.slave1

192.168.2.14hadoop.slave2

192.168.1.197hadoop.second

增加如上几个域名,具体ip地址由各自的实际情况定,这里只列出笔者实验环境所需的。

Hadoop集群环境中使用域名访问的,所以需要把slave,master等域名加到每台服务器上。

Ø建立hadoop专属用户

Groupaddhadoop

Useraddhadoop–ghadoop

Passwdhadoop

Changingpasswordforuserhadoop.

NewUNIXpassword:

123456

RetypenewUNIXpassword:

123456

Ø安装软件

安装JDK到/usr/local下命名为java

将下载好的hadoop-0.20.3.tar.gz文件上传到master的/usr/local/hadoop

tarzxvfhadoop-0.20.3.tar.gz#解压文件

设置hadoop目录的访问权限

chown–Rhadoop:

hadoop/usr/local/hadoop

Ø改机器名

把每台机器的机器名改成localhost。

Vi/etc/sysconfig/network

修改HOSTNAME=localhost

此处是没搞清楚为什么的地方,实验结果表明必须改成localhosthadoop才能正常启动。

具体原理目前还没有搞清楚,只知其然,其所以然有待于以后研究。

7.2每个节点不同的配置

7.2.1配置hadoop

Hadoop的配置文件在早期版本中都放在同一个文件里hadoop-site.xml,在新版本中hadoop把配置文件做了区分,分成了:

Core-site.xml配置Common组件的属性

Hadoop-site.xml配置HDFS组件的属性

Mapred-site.xml配置map-reduce组件的属性

除了这3个配置文件以外还有hadoop-env.xml用来设置hadoop用到的环境变量;masters文件用来配置SNN节点地址注意必须配置域名;slaves文件配置所有DN节点的地址,必须是域名

7.2.2Core-site.xml配置实例

DN节点以及NN节点,snn节点配置一至:

fs.default.name//配置NN节点地址和端口号

hdfs:

//hadoop.master:

9000//注意格式必须是host:

port的形式

hadoop.tmp.dir//hadoop临时目录用来存放nn临时文件

/usr/local/hadoop/tmp//该目录必须预先手工创建不能删除

fs.checkpoint.period//snn检查nn日志的时间周期

60//单位是秒,正式环境上建议配置成12小时

fs.checkpoint.size//snn每次从nn上读取的数据大小

67108864//通常情况下默认值就可以

7.2.3Hdfs-site.xml

ØNN节点

dfs.name.dir//指定name镜像文件存放目录,如不指定则

/usr/local/hadoop/hdfs/name//默认为core-site中配置的tmp目录

dfs.replication//数据节点冗余备份的数量,由于实验只有2个

1//NN顾设置唯一,实际配置是可由实际情况

//配置,建议尽量大于3

dfs.permissions//是否需要角色权限验证,上传文件时会用到,

false//如果为true,需要绑定hadoop用户角色

dfs.secondary.http.address//SNN的web访问地址。

hadoop.second:

50090

ØDN节点配置

dfs.data.dir//数据存放的目录,如果不写默认为

/usr/local/hadoop/hdfs/data//core-site中配置的tmp目录

dfs.replication//数据节点冗余备份的数量,由于实验只有2个

1//NN顾设置唯一,实际配置是可由实际情况

//配置,建议尽量大于3

dfs.permissions//是否需要角色权限验证,上传文件时会用到

false//如果为true,需要绑定hadoop用户角色

dfs.secondary.http.address//SNN的web访问地址

hadoop.second:

50090

ØSN节点的配置

dfs.name.dir//指定name镜像文件存放目录,如不指定则

/usr/local/hadoop/hdfs/name//默认为core-site中配置的tmp目录

dfs.replication//数据节点冗余备份的数量,由于实验只有2个

1//NN顾设置唯一,实际配置是可由实际情况

//配置,建议尽量大于3

dfs.permissions

false

dfs.http.addressNN的web访问地址,注意此处和其他节点不同

hadoop.master:

50070

ØMapred-site.xml配置

所有节点都一致

mapred.job.tracker

hadoop.master:

9001//必须为host:

port的形式,不能直接写ip

Jobtracker的分布式的配置方法目前没设置成功,有待于继续研究

ØMasters文件配置和slaves文件配置所有节点全部一致

所有节点的masters里面均配置SNN的域名

所有节点的slaves里面均配置所有DN的域名,一行一个DN

ØHadoop-env.sh文件配置

里面是hadoop运行时定义的环境变量

其他的都可以用默认值,但是有一项必须修改就是javahome环境变量,指定到实际的javahome目录。

实例:

exportJAVA_HOME=/usr/local/java

8.hadoop无用户登录配置

用hadoop用户进入每台机器:

进入/home/hadoop目录

ssh-keygen-trsa#建立ssh目录,敲回车到底

1)登录NN服务器

2)进入/home/hadoop/.ssh目录

3)scp-rid_rsa.pubhadoop@hadoop.slave1:

/home/hadoop/.ssh/authorized_keys

#将master上的密钥传到slave1的hadoop用户下,重命名为authorized_keys

4)scp-rid_rsa.pubhadoop@hdoop.slave2:

/home/hadoop/.ssh/authorized_keys

#将master上的密钥传到slave2的hadoop用户下,重命名为authorized_keys

5)scp-rid_rsa.pubhadoop@hadoop.second:

/home/hadoop/.ssh/authorized_keys

#将master上的密钥传到snn的hadoop用户下,重命名为authorized_keys

6)用hadoop用户进入hadoop.slave1/home/hadoop/.ssh目录

7)catid_rsa.pub>>authorized_keys

#把自己的id_rsa.pub内容也放到authorized_keys中

8)scp-rid_rsa.pubhadoop@hadoop.master:

/home/hadoop/.ssh/authorized_keys_s1

#将slave1上的密钥传到master的hadoop用户下

9)用hadoop用户进入hadoop.slave2/home/hadoop/.ssh目录

10)catid_rsa.pub>>authorized_keys

#把自己的id_rsa.pub内容也放到authorized_keys中

11)scp-rid_rsa.pubhadoop@hadoop.master:

/home/hadoop/.ssh/authorized_keys_s2

#将slave2上的密钥传到master的hadoop用户下

12)用hadoop用户进入hadoop.second/home/hadoop/.ssh目录

13)catid_rsa.pub>>authorized_keys

#把自己的id_rsa.pub内容也放到authorized_keys中

14)scp-rid_rsa.pubhadoop@hadoop.master:

/home/hadoop/.ssh/authorized_keys_second

#将snn上的密钥传到master的hadoop用户下

15)在master,上执行以下操作

16)catid_rsa.pub>>authorized_keys

#将本地密钥添加authorized_keys

17)catauthorized_keys_s1>>authorized_keys

18)catauthorized_keys_s2>>authorized_keys

19)catauthorized_keys_second>>authorized_keys

20)rmauthorized_keys_second

21)rmauthorized_keys_s1

22)rmauthorized_keys_s2

这样主节点和从节点之间就可以不用密码直接ssh访问

特别注意authorized_keys文件的访问权限必须设置成600

登录每台机器执行chmod600authorized_keys

9.启动hadoop

用hadoop用户进入nn服务器的/usr/local/hadoop/hadoop-0.20.203.0/bin目录

Ø格式化hadoop

Hadoopnamenode–format

Ø启动hadoop

./start-all.ssh,不建议这样启动建议单独启动守护进程。

ØHadoop日志目录

/usr/local/hadoop/hadoop-0.20.203.0/logs

启动完检查下启动日志,启动后到nn上查看

hadoop-hadoop-namenode-master.log

hadoop-hadoop-jobtracker-master.log

因为我们的nn和jobtracker部署在同一台机器上,所有master上会有2个日志

登录snn节点服务器查看

hadoop-hadoop-secondarynamenode-master.log

这几个没错误就OK了

这时候就可以进入管理页面看看了

http:

//192.168.2.15:

50030/

http:

//192.168.2.15:

50070/

 

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2