鉴于hadoop的须要。。。可是并不限于此。。。有时候闲输入密码麻烦,也能够用这种办法从一个节点经过ssh进入另外一个节点。。。java
设要使master进入slave是免密码的,则能够在master(ip为192.168.169.9)中以下操做:node
命令:ssh-keygen -t rsa 而后一路回车(该命令不须要进入特定目录)python
cd进入/root/.ssh/能够看见以下(橙色是新生成的)linux
id_rsa id_rsa.pub known_hostsweb
而后用scp命令将id_rsa远程传输到slave(ip为192.168.169.10)节点中:scp id_rsa.pub 192.168.169.10:/root/.ssh/192.168.169.9apache
则能够在slave的/root/.ssh/目录下看到名为192.168.169.9的文件:bash
主机名app |
IP 框架 |
功能 dom |
namenode |
192.168.169.9 |
NameNode,jobtraker |
datanode1 |
192.168.169.10 |
DataNode,tasktraker |
datanode2 |
192.168.169.20 |
DataNode,tasktraker |
同时在三台机子的/etc/hosts中添加如下内容以修改机器名:
192.168.169.9 namenode
192.168.169.10 datanode1
192.168.169.20 datanode2
修改后注意解析测验下:(datanode测验同理)
-bash-3.1# ping -c 4 namenode
PING namenode (192.168.169.9) 56(84) bytes of data.
64 bytes from namenode (192.168.169.9): icmp_seq=1 ttl=64 time=0.020 ms
64 bytes from namenode (192.168.169.9): icmp_seq=2 ttl=64 time=0.009 ms
64 bytes from namenode (192.168.169.9): icmp_seq=3 ttl=64 time=0.009 ms
64 bytes from namenode (192.168.169.9): icmp_seq=4 ttl=64 time=0.010 ms
--- namenode ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 2997ms
rtt min/avg/max/mdev = 0.009/0.012/0.020/0.004 ms
而后修改/etc/sysconfig/network中的域名(由于必需要域名和机器名同样)如图(这里只列出namenode的,datanode的相似,只修改HOSTNAME)
NETWORKING=yes
NETWORKING_IPV6=yes
HOSTNAME=namenode
2.ssh免密码认证
具体作法上一篇博文已经讲过。。这里再也不赘述,可是要注意,这里须要作到的是:
例如我对第一条测验一下:
-bash-3.1# ssh datanode1
Last login: Fri Feb 17 08:32:34 2012 from namenode
-bash-3.1# exit
logout
Connection to datanode1 closed.
-bash-3.1# ssh datanode2
Last login: Fri Feb 17 08:32:42 2012 from namenode
-bash-3.1# exit
logout
Connection to datanode2 closed.
3.安装JDK并配置环境变量,由于个人已经安装过了,因此我只须要配置环境变量了,修改/etc/profile内容以下:(注意修改后要source /etc/profile)
export JAVA_HOME=/usr/java/jdk1.6.0_29
export JRE_HOME=$JAVA_HOME/jre
export PATH=$PATH:/usr/java/jdk1.6.0_29/bin
export CLASSPATH=:/usr/java/jdk1.6.0_29/lib:/usr/java/jdk1.6.0_29/jre/lib
查看下版本:
-bash-3.1# java -version
java version "1.6.0_29"
Java(TM) SE Runtime Environment (build 1.6.0_29-b11)
Java HotSpot(TM) 64-Bit Server VM (build 20.4-b02, mixed mode)
写个具体例子跑一下(test.java):
class test
{
public static void main(String[] args)
{
System.out.println("Hello,World!");
}
}
测试一下:
-bash-3.1# javac test.java
-bash-3.1# java test
Hello,World!
说明成功了。。。。。
4.Hadoop安装配置
下载hadoop-0.21.0.tar.gz压缩包下来以后解压缩到必定目录,而后把它放到个固定的地方,我把它放在了/usr/local/hadoop目录下,进去看下