首页 > 技术文章 > hadoop集群安装

lianyl 2014-09-27 22:45 原文

hadoop集群安装

一、环境说明:

VMware-workstation-full-10.0.3.exe

rhel-server-6.2-i386-dvd.iso

jdk-6u30-linux-i586-rpm.iso

hadoop-0.20.2.tar.gz

二、环境配置

redhat linux 切换到命令行

vi /etc/inittab id:5:initdefault: 把这一句里面的5改成3就可是以命令行登录了

2.修改配置文件/etc/sysconfig/network-scripts/ifcfg-eth0

使BOOTPROTO = “static”

3.修改配置/etc/sysconfig/network

使HOSTNAME=master(用户名自己设定)

4.使用页面登录config-network图形下配置ip地址

 

如何获取本机中的文件

 

cd /mnt/hgfs/共享目录

 

  1. 1.     hosts配置

准备机器:一台master,若干台slave,配置每台机器的/etc/hosts保证各台机器之间通过机器名可以互访,例如: 

在所有机器上配置/etc/hosts文件

192.168.0.100 master

192.168.0.101 slave1

192.168.0.102 slave2

机器名IP地址作用
Node 192.168.0.100 NameNode
JobTracker
Node 192.168.0.101 DataNode
TaskTracker
Node 192.168.0.102 DataNode
TaskTracker

2.关闭防火墙

1重启后永久性生效:

开启:chkconfig iptables on

关闭:chkconfig iptables off

2即时生效,重启后失效:

开启:service iptables start

关闭:service iptables stop

3.安装java

在所有机器上安装java

cd /usr/local

mkdir java

cd /mnt/hgfs/*

cp jdk* /usr/local/java

sh jdk*

 

4.配置环境变量

 

5.建立hadoop组和hadoop用户

在所有机器上

groupadd hadoop

useradd -g hadoop grid

passwd hduser

 

6.禁用IPv6

在所有机器上

vi /etc/modprobe.d/anaconda.conf添加下列行

install ipv6 /bin/true

7.ssh

登录新建用户grid /home/grid下执行创建目录mkdir .ssh

执行命令在每个主机上:ssh-keygen –t rsa 一路回车

.ssh 目录下生成 .pub 文件

将文件内容导入到cat id_rsa.pub >authorized_keys

把多台主机上的id_rsa.pub汇总到一个authorized_keys在分发到每个主机/home/grid/.ssh目录实现SSH免密码登录

8.hadoop安装配置

chgrp grid hadoop-0.20.2.tar.gz
chown grid hadoop-0.20.2.tar.gz

把 hadoop-0.20.2.tar.gz 复制到 /home/grid
tar –xzvf hadoop-0.20.2.tar.gz

hadoop-0.20.2下建立目录
mkdir data

修改core-site.xml,如下:
<configuration>  
        <property>  
                <name>fs.default.name</name>  
                <value>hdfs://192.168.0.100:9000</value>  
        </property>  
</configuration>


修改hdfs-site.xml,如下:
<configuration>
               <property>
                <name>dfs.data.dir</name>
                <value>/root/software/hadoop-0.20.2/data</value>
        </property>
        <property>
                <name>dfs.replication</name>
                <value>3</value>
        </property>
    </configuration>


修改mapred-site.xml,如下:
<configuration>  
        <property>  
                <name>mapred.job.tracker</name>  
                <value>192.168.0.100:9001</value>  
        </property>  
</configuration>

masters里写入作为namenode节点机器的名称,我们这里是:
master
slaves
里写入作为datanode节点的机器名,这里是:
master
slave
slave1

scp –r hadoop-0.20.2 slave1:/home/grid

scp –r hadoop-0.20.2 slave2:/home/grid

到此基本配置已经完成,在namenodecdhadoop文件夹下,格式化分布式文件系统:
$ bin/hadoop namenode -format  
下面接着在namenode端启动hadoop进程:
$ bin/start-all.sh


如果没有其它差错的话,hadoop可以正常启动,并能够看到如下结果:
namenode端用jps命令查看启动情况,如下:
root@master:~/hadoop-0.20.2$ jps  
xxxx Jps  
xxxx Namenode  
xxxx Secondarynamenode  
xxxx JobTracker 


datanode端用jps查看启动情况,如下:
root@slave:~/hadoop-0.20.2$ jps  
xxxx Jps  
xxxx DataNode  
xxxx TaskTracker


root@slave1:~/hadoop-0.20.2$ jps  
xxxx Jps  
xxxx DataNode  
xxxx TaskTracker

 

推荐阅读