hadoop部署全程手册

 Hadoop安装手册

Hadoop-namenode:172.16.172.210

Hadoop-node1:172.16.172.212

         Node2:             213

         Node3              214

         Node4              216

1.创建虚拟机(多个虚拟机可以安装在同一个磁盘上

2.选择iso文件.

选中刚创建的虚拟机,右键---->编辑设置

 

如图

 

然后开启虚拟机电源

 

3.安装

   注意一:刚进入安装时,会有磁盘检查,skip就行,不然很慢。

   注意二:如下图,选择‘是,忽略所有数据’

  

注意三:选择使用所有空间

 

 

注意四:当鼠标指针进入虚拟机时,同时按住ctrl+shift即可出来

4.配置网络

打开 /etc/sysconfig/network-scripts/ifcfg-eth0文件

添加如下选项:IPADDR=172.16.172.210(范围是从210~220)

              NETMASK=255.255.255.0

              GATEWAY=172.16.172.1

              DNS1=202.102.134.68

              DNS2=202.102.128.68

 将           BOOTPROTO修改为”static”    ONBOOT修改为”yes”

然后重启网络服务 :service network restart

可以通过ifconfig命令来查看是否配置正确。

 

版本不同,配置不太一样,有的版本如下:

 

vim /etc/sysconfig/network

NETWORKING=yes

HOSTNAME=srv211

GATEWAY=172.16.201.1

 

 

配置/etc/hosts文件,添加如下(每个节点都要配置):

172.16.172.210 namenode

172.16.172.212 node1

172.16.172.213 node2

172.16.172.214 node3

172.16.172.216 node4

 

5.克隆(或从模版部署虚拟机)

如果有模版的话,最好选用模版部署。

用模版:选中模版,右键--->”从该模版部署虚拟机” ,然后更改”名称”

 

 

下一步

 

 

下面忽略即可。

下一步

 

选择存储位置

下一步

 

 

下面的默认即可。

 

用户名和密码和模版的一样

 

(克隆和上述步骤相同)

 

 

6.配置克隆的操作系统

 克隆完成后service network restart 会失败,出现如下错误:

Bringing up interface eth0:  Device eth0 does not seem to be present,delaying initialization.                    [FAILED]

 

 

解决方法:

打开 /etc/udev/rules.d/70-persistent-net.rules

记下 eth1(非零的)的mac

打开etc/sysconfig/network-scripts/ifcfg-eth0

修改相应选项和上面对应即可

 

Service network restart 启动成功

 

 

7安装jdk

本例jdk放在了/tmp目录下。

1.Jdk***.bin是一个自解压的文件,在linux上安装如下:

    进入/tmp目录,执行 sh jdk**.bin(如果在ubuntu下,执   行./jdk.bin)

   一路yes下去

2.jdk***.rpm.bin也是一个自解压文件,不过解压出来是rpm包,执行rpm命令安装 即可。如下:

 Sh jdk.bin

 Rpm -ivh jdk**-rpm

3.配置

打开 /etc/profile文件,添加如下信息:

 

export JAVA_HOME=/tmp/jdk1.6.0_31

export PATH=$PATH:$JAVA_HOME/bin

export CLASSPATH=.:$JAVA_HOME/lib

 

执行如下命令,使配置文件生效:

source /etc/profile

 

输入 java -version 查看版本信息即可。

8.配置ssh无密码登录

(就是从一个节点连接另一个节点时,不用输密码了,这样以后 hadoop启动不用每次都输各个节点的密码)

 

在此之前,确保ssh和rsync已安装。可以通过如下命令查看是否安装:

 

rpm –qa | grep openssh

rpm –qa | grep rsync

若什么都没出现,则表示没有安装。通过如下命令进行安装:

 

yum install ssh  #安装SSH协议

yum install rsync #(rsync是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件)

 

service sshd restart #启动服务

然后便可设置无密码登录,步骤如下:

1.在Master(名称节点)上操作

先进入home目录

cd

ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

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

cat ~/.ssh/id_dsa.pub

 

在此处复制下~/.ssh/id_dsa.pub文件产生的内容,为方便示例用content代替。

通过刚才的命令的内容就能看到主机名称在~/.ssh/id_dsa.pub中,这也是为什么要配置hosts文件的原因。

2.在Slave0(数据节点)上操作

ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

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

将先前复制下的~/.ssh/id_dsa.pub文件产生的内容追加到Slave0的~/.ssh/authorized_keys中

echo 'content' >> ~/.ssh/authorized_keys

其它数据节点和上面的数据节点操作完全一样,下面省略

 

9安装hadoop

下载hadoop压缩包,本例放在了/tmp目录下.

解压 :tar -zxvf hadoop-***.tar.gz

 

 

修改/etc/profile文件,添加如下:

 

export HADOOP_HOME=/tmp/hadoop-1.0.3

export PATH=$PATH:$HADOOP_HOME/bin

 

 

打开 /hadoop-1.0.3/conf文件夹

 

修改hadoop-env.sh 如下:

 export JAVA_HOME=/tmp/jdk1.6.0_31

 

 

修改core-site.xml 如下:

<property>

   <name>hadoop.tmp.dir</name>

   <value>/tmp</value>

</property>

<property>

   <name>fs.default.name</name>

   <value>hdfs://172.16.172.210:9000</value>

</property>

 

 

修改hdfs-site.xml 如下:

 

<property>

    <name>dfs.replication</name>

    <value>3</value>

</property>

 

 

修改mapred-site.xml 如下:

<property>

    <name>mapred.job.tracker</name>

    <value>http://172.16.172.210:9001</value>

  </property>

 

修改masters 如下

172.16.172.210

 

修改slaves(master节点所特有) 如下:

172.16.172.212

172.16.172.213

172.16.172.214

172.16.172.216  Intelmanager 

 

 

 

现在剩下的工作就是配置slave节点了。将上面的hadoop-1.0.3整个文件夹全部复制到各个slave节点上。分别修改各个的/etc/profile文件,和上面一样

 

删除slaves文件

 

 

启动及验证

 

(1)在启动之前要先格式化

 

进入/hadoop-1.0.3/bin目录下,执行如下命令:

Hadoop namenode -format

 

(2)关闭所有节点的防火墙:

Service iptables stop

(3)启动,在bin目录下,执行如下命令

 Sh start-all.sh

 

(4)验证

     1,分别在master和slave上用”jps”命令查看进程.如下

               

Slave                                     master

     2,查看web页

     在浏览器中输入 172.16.172.210:50070

                    172.16.172.210:50030

备注

1如何把window上的文件上传到linux

下载PSCP.EXE(http://www.putty.org):putty.zip,拷贝PSCP.EXE到E盘目录下;

在运行里输入cmd,进入E盘,输入下面的命令:

E:\>pscp.exe l:/intel.gz root@172.16.172.210:/tmp/

 

建议将PSCP.EXE放到C:\WINDOWS\system32下面,这样就可以在任何地方调用了

 

 

2,如何把文件从一个节点复制到另一个节点。执行如下命令

 Scp filename root@172.16.172.212:/tmp

 

根据自己需要进行修改

 

posted @ 2013-09-13 13:52  小指  阅读(397)  评论(0编辑  收藏  举报