Hadoop的安装和部署

1.       环境概述

系统:RedHat linux enterprise5

Jdkjdk1.6

HadoopHadoop-0.19.2

节点数目:两台(可自行扩充)

2.       匿名登录设置

l  设置机器的hosts

转换问root用户,修改/etc/hosts文件,内容如下:

# Do not remove the following line, or various programs

# that require network functionality will fail.

127.0.0.1       localhost.localdomain   localhost

::1     localhost6.localdomain6 localhost6

192.168.0.121   hwellzen-bj-1.compute   hwellzen-bj-1

192.168.0.122   hwellzen-bj-2.compute   hwellzen-bj-2

 

注意:以上的内容有回车符的时候才进行换行。将两台机器的hosts都设置问以上的内容,然后分别重启系统。

l  设置匿名登录

Ø  转换用户到你需要设置匿名登录的用户下,本安装用户为liuzj,执行

[liuzj@hwellzen-bj-1 ~]$ssh-keygen  -t  rsa

这个命令将为hwellzen-bj-1上的用户liuzj生成其密钥对,询问其保存路径时直接回车采用默认路径,当提示要为生成的密钥输入passphrase的时候,直接回车,也就是将其设定为空密码。生成的密钥对id_rsaid_rsa.pub,默认存储在/home/liuzj/.ssh目录下。

执行命令:

cp id_rsa.pub authorized_keys

可以实现用户在本地匿名登录,现象为

[liuzj@hwellzen-bj-1 ~]$ssh hwellzen-bj-1

Last login: Tue Aug 11 09:31:49 2009 from 192.168.0.129

[liuzj@hwellzen-bj-1 ~]$

 

 

 

Ø  登录到另一台机器上执行相同的命令

[liuzj@hwellzen-bj-1 ~]$ssh-keygen  -t  rsa

Ø  现在两台机器的密钥都有了,现在激动人心 的时刻到了。设置hwellzen-bj-1hwellzen-bj-2的匿名登录:

n  hwellzen-bj-1的密钥id_rsa.pub拷贝到hwellzen-bj-2上,使用命令:

[liuzj@hwellzen-bj-1 ~]$ scp .ssh/id_rsa.pub hwellzen-bj-2:/home/liuzj

n  登录到hwellzen-bj-2,将hwellzen-bj-1的密钥加入到匿名的文件中

[liuzj@hwellzen-bj-2 ~]$ cat id_rsa.pub >> .ssh/authorized_keys

n  试试吧,登录到hwellzen-bj-1执行命令[liuzj@hwellzen-bj-1 ~]$ ssh hwellzen-bj-2

我这里的现象:

[liuzj@hwellzen-bj-1 ~]$ ssh hwellzen-bj-2

Last login: Tue Aug 11 09:31:49 2009 from 192.168.0.129

[liuzj@hwellzen-bj-2 ~]$

n  好了,最后用以上的方法自己设置,hwellzen-bj-2匿名登录到hwellzen-bj-1

n  注意:生成设置匿名登录之前要把hosts设置好,然后重启。

3.       Jdk安装

Ø  jdk-6u2-linux-i586.bin拷贝到hwellzen-bj-1

Ø  转换为root用户,设置jdk-6u2-linux-i586.bin为可执行的文件,

Chmod u+x jdk-6u2-linux-i586.bin

Ø        创建目录/usr/local/java,并cd到该目录,将jdk-6u2-linux-i586.bin拷贝到该目录(装完删了),执行命令:

./ jdk-6u2-linux-i586.bin

文件安装完成

Ø  设置配置所有用户都可以用,编辑vi /etc/profile,在文件的最后添加以下内容

PATH=/usr/local/java/jdk1.6.0_02/bin:$PATH

JAVA_HOME=/usr/local/java/jdk1.6.0_02

export PATH JAVA_HOME

Ø  将设置生效执行命令:

source  /etc/profile

Ø  安装完啦,看看现在的java版本呗:

执行命令:java –version

[liuzj@hwellzen-bj-2 ~]$ java -version

java version "1.6.0_02"

Java(TM) SE Runtime Environment (build 1.6.0_02-b05)

Java HotSpot(TM) Client VM (build 1.6.0_02-b05, mixed mode, sharing)

[liuzj@hwellzen-bj-2 ~]$

                     

4.       Hadoop安装

Ø  解压hadoop文件

hadoop-0.19.2.tar.gz解压到,用户liuzj下使用的命令为

[liuzj@hwellzen-bj-2 ~]$ tar zxvf hadoop-0.19.2.tar.gz

最终解压后的目录为:

[liuzj@hwellzen-bj-2 hadoop-0.19.2]$ pwd

/home/liuzj/hadoop-0.19.2

注意:保证各台机器安装的目录机构都是相同的。

Ø  配置文件设置

需要配置的文件:hadoop-env.shslavesmastershadoop-site.xml

n  hadoop-env.sh配置javahome,内容为

# The java implementation to use.  Required.

 export JAVA_HOME=/usr/local/java/jdk1.6.0_02

n  slaves配置子节点,内容为

hwellzen-bj-2

hwellzen-bj-1

n  masters配置主节点,内容为

hwellzen-bj-1

n  hadoop-site.xml配置的内容比较多,内容为

<configuration>

<property>

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

   <value>hdfs://hwellzen-bj-1:4310/</value>

</property>

<property>

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

   <value>hdfs://hwellzen-bj-1:4311/</value>

</property>

<property>

   <name>dfs.replication</name>

   <value>2</value>

</property>

<property>

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

    <value>/home/liuzj/hadoop-0.19.2/tmp</value>

</property>

<property>

  <name>dfs.name.dir</name>

  <value>/home/liuzj/hadoop-0.19.2/filesystem/name/</value>

</property>

<property>
  <name>dfs.data.dir</name>
  <value>/opt/hadoop-0.19.2/filesystem/data</value>
  <description>Determines where on the local filesystem an DFS data node should store its blocks. If this is a comma-delimited list of directories, then data will be stored in all named directories, typically on different devices. Directories that do not exist are ignored.</description>
</property>

<property>

   <name>mapred.child.java.opts</name>

   <value>-Xmx512m</value>

</property>

</configuration>

格式化dfs:

                     [liuzj@hwellzen-bj-1 hadoop-0.19.2]$ bin/hadoop namenode -format

 

 

启动hadoop

[liuzj@hwellzen-bj-1 hadoop-0.19.2]$ bin/start-all.sh

访问

 

http://192.168.0.121:50070/dfshealth.jsp

http://192.168.0.121:50030/jobtracker.jsp

 

注意:保证hadoop的需要用的端口都是可以访问的,本人在配置的时候因为防火墙组织了端口的访问造成hadoop的启动失败,后来关闭的防火墙,启动成功。

你可能感兴趣的:(jdk,hadoop,linux,ssh,防火墙)