linux服务器搭建分布式计算,真正的分布式系统搭建

之前都是单节点进行的操作与测试,现在进行真正的多节点系统搭建

1. 准备系统与配置

共准备4台机器搭建Hadoop集群。基于CentOS6.2,jdk1.6.0_31,Hadoop2.2.0版本

192.168.1.132  NameNode  Master132.Hadoop (Master)

192.168.1.110  DateNode   Slave110.Hadoop (Slave)

192.168.1.141  DateNode   Slave141.Hadoop (Slave)

192.168.1.131  DateNode   Slave131.Hadoop (Slave)

2. 首先都分别对几台机器建立Hadoop用户

groupadd hadoop

useradd-g hadoop hadooppasswd hadoop

增加用户组和用户都是hadoop,我这里设置的密码 111111

3. 分别使用root用户,安装jdk并进行设置

我这里JDK的安装路径是 /usr/java/jdk1.6.0_31

修改设置文件/etc/profile,增加如下内容

export JAVA_HOME=/usr/java/jdk1.6.0_31/

export JRE_HOME=/usr/java/jdk1.6.0_31/jre

export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JRE_HOME/lib

export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin

为了使配置马上生效,请执行 source /etc/profile 命令

4. 修改Hosts文件,以便彼此可以访问

文件的内容如下:(注意,把原有的内容都删除掉,否则可能有问题,这个问题困扰我很久)

192.168.1.110 Slave110.Hadoop

192.168.1.141 Slave141.Hadoop

192.168.1.131 Slave131.Hadoop

192.168.1.132 Master132.Hadoop

5. 修改主机名

编辑 /etc/sysconfig/network 文件,修改其中的主机名

NETWORKING=yes

HOSTNAME=Master132.Hadoop

GATEWAY=192.168.1.1

这个步骤需要重启,可以通过 hostname Maseter132.Hadoop 命令直接修改主机名

每一台机器都需要修改,设置我们预期的主机名称

6. 修改ssh免密码连接的设置

编辑/etc/ssh/sshd_config文件,使如下的配置生效

RSAAuthentication yes

PubkeyAuthentication yes

AuthorizedKeysFile .ssh/authorized_keys

重启服务  service sshd restart

7. 关闭防火墙

chkconfig iptables off

以上所有的操作都是在root权限下进行的,下面的操作主要是使用hadoop用户(除非是没有权限)

9. 设置ssh免密码连接

9.1 在/home/hadoop目录下,执行如下的命令

ssh-keygen -t rsa

多次回车之后,将会在 /home/hadoop/.ssl/目录下生产两个文件 id_rsa,id_rsa.pub

9.2 执行 如下命令

cat id_rsa.pub >> authorized_keys

chmod 600 ~/.ssh/authorized_keys  (root权限)

9.3 将所有的Slave节点的 id_rsa.pub 文件导入到Master节点的authorized_keys文件中

cat id_rsa.pub >> ~/.ssh/authorized_keys

9.4 使用同样的办法将Master节点的id_rsa.pub文件也导入到各个Slave节点的authorized_keys文件中

9.5 验证相互之间免密码连接是否成功:ssh Slave110.Hadoop 等命令

10. 安装Hadoop(在Master机器上进行,root权限)

10.1 使用之前已经编译好的文件:hadoop-2.2.0.tar.gz

10.2 解压安装在相同的路径,我安装的路径为 /usr/hadoop/

10.3 进行环境设置,修改/etc/profile文件,增加如下内容

export HADOOP_HOME=/usr/hadoop

export PATH=$PATH:$HADOOP_HOME/bin

别忘了执行 source /etc/profile

10.4 修改安装路径的权限(将hadoop目录的读权限给hadoop组的hadoop用户)

chown –R hadoop:hadoop hadoop

11. 配置Hadoop(在Master机器上进行,hadoop权限)

11.1 修改 /usr/hadoop/libexec/hadoop-env.sh 文件,对JAVA_HOME进行明确指定

export JAVA_HOME=/usr/java/jdk1.6.0_31

11.2 修改 /usr/hadoop/etc/hadoop/core-site.xml

fs.defaultFS

hdfs://Master132.Hadoop:9000

io.file.buffer.size

131072

hadoop.tmp.dir

file:/usr/hadoop/tmp

fs.default.name

hdfs://Master132.Hadoop:8010

11.3 修改 /usr/hadoop/etc/hadoop/hdfs-site.xml

dfs.namenode.secondary.http-address

Master132.Hadoop:9001

dfs.namenode.name.dir

file:/usr/hadoop/dfs/name

dfs.datanode.data.dir

file:/usr/hadoop/dfs/data

dfs.webhdfs.enabled

true

dfs.replication

3 此处请注意,数值不能大于你的Datanode节点数

11.4 修改 /usr/hadoop/etc/hadoop/mapred-site.xml

mapreduce.framework.name

yarn

mapreduce.jobhistory.address

Master132.Hadoop:10020

mapreduce.jobhistory.webapp.address

Master132.Hadoop:19888

11.5 修改 /usr/hadoop/etc/hadoop/slaves

Slave110.Hadoop

Slave131.Hadoop

Slave141.Hadoop

12. 在Slave节点执行10,11步骤

可以将Master节点的配置直接拷贝到其它节点,然后执行10步的内容,完成全部设置

至此,所有的配置完成,下面可以启动一下系统

13. 在Master节点启动系统

13.1 运行如下命令进行格式化

hadoop namenode -format

13.2 正式启动hadoop

start-all.sh

13.3 验证启动的结果,执行如下命令:

hadoop dfsadmin -report

基本上,如果几个datenode都正常就可以了!

如果过程中有问题,请到/usr/hadoop/log 下面查看日志,寻找问题的线索0b1331709591d260c1c78e86d0c51c18.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值