1. #准备三台虚拟机,在root下配置/etc/hosts
10.0.0.11 NameNode
10.0.0.12 DataNode1
10.0.0.13 DataNode2
2. #创建hadoop用户,配置SSH互信
#在hadoop用户下执行
ssh-keygen -t rsa
#将公钥放到授权key文件
cat /home/hadoop/.ssh/id_rsa.pub >> /home/hadoop/.ssh/authorized_keys
#修改文件权限
chmod 600 /home/hadoop/.ssh/authorized_keys
#复制到2台DataNode
scp /home/hadoop/.ssh/authorized_keys hadoop@10.0.0.12:/home/hadoop/.ssh/authorized_keys
#在root下修改配置文件/etc/ssh/sshd_config去掉一下三行注释
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
#重启sshd生效
service sshd restart
#测试远程无密码操作
ssh 10.0.0.12 date
3. #安装配置JDK
chmod +x jdk-6u38-ea-bin-b04-linux-i586-31_oct_2012-rpm.bin
./jdk-6u38-ea-bin-b04-linux-i586-31_oct_2012-rpm.bin
#配置环境变量/etc/profile
export JAVA_HOME=/usr/java/jdk1.6.0_38
export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
4. #Hadoop集群安装
#解压
tar -C /usr/ -xvzf hadoop-1.2.1.tar.gz
#改名
mv /usr/hadoop-1.2.1 /usr/hadoop
#创建临时目录
mkdir /usr/hadoop/tmp
#修改目录属主
chown -R hadoop:hadoop /usr/hadoop
#配置/etc/profile 增加
export HADOOP_HOME=/usr/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
export HADOOP_HOME_WARN_SUPPRESS=1
#Hadoop配置文件放在/usr/hadoop/conf下
#配置hadoop-env.sh 增加
export JAVA_HOME=/usr/java/jdk1.6.0_38
#配置core-site.xml
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/hadoop/tmp</value>
<description>A base for other temporary directories.</description>
</property>
<!-- file system properties -->
<property>
<name>fs.default.name</name>
<value>hdfs://10.0.0.11:9000</value>
</property>
#配置hdfs-site.xml
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
#配置mapred-site.xml
<property>
<name>mapred.job.tracker</name>
<value>http://10.0.0.11:9001</value>
</property>
#配置masters
10.0.0.11
#配置slaves
10.0.0.12
10.0.0.13
#拷贝hadoop目录到2台DataNode
scp -r hadoop root@10.0.0.12:/usr/
#修改目录属主
chown -R hadoop:hadoop /usr/hadoop
5. 启动Hadoop
#格式化HDFS文件系统
hadoop namenode -format
start-all.sh
jps验证
#问题:Address 10.0.0.11 maps to namenode, but this does not map back to the address - POSSIBLE BREAK-IN ATTEMPT!
#修改 /etc/ssh/sshd_config
GSSAPIAuthentication no