1) 安装jdk
下载jdk-6u21-linux-i586.bin
然后修改/etc/profile:
export JAVA_HOME=/usr/local/jdk export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH export
PATH=$PATH:$JAVA_HOME/bin
保存,并执行source /etc/profile
2) 配置host
Namenode的机器,需要配置集群中所有机器的ip
修改/etc/hosts
10.10.236.190 master 10.10.236.191 slave-A 10.10.236.193 slave-B
其他的datanode的/etc/hosts 也需要配置集群中所有机器的ip。
10.10.236.190 master 10.10.236.191 slave-A
修改hostname:
/etc/hostname:master是master,slave是slave。
3) 建立ssh无密码登录
首先进到root目录下
root@master:~# $ssh-keygen -t rsa
进入.ssh目录
root@master:~/.ssh# cp id_rsa.pub authorized_keys
其余的datanode的机器
新建.ssh目录
root@slave-A:~# mkdir .ssh
在name(master)上远程拷贝
root@master:~/.ssh# scp authorized_keys slave-A:/root/.ssh/
测试ssh
*注意:所有datanode之间也需要相互ssh通。不然,reduce任务无法从其它datanode copy数据。
4) 安装hadoop
下载Hadoop 解压到每台服务器的/data/soft
解压
root@master:/data/soft# tar zxvf hadoop-0.21.0.tar.gz
建立软连
root@master:/data/soft# ln -s hadoop-0.21.0 hadoop
然后修改/etc/profile
export HADOOP_HOME=/data/soft/hadoop export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin
5) 配置hadoop
1.修改conf/hadoop-env.sh,添加jdk支持
export JAVA_HOME=/usr/local/jdk
如果ssh端口不是默认的22,在conf/hadoop-env.sh里改下。如:
export HADOOP_SSH_OPTS="-p 1234"
2.修改conf/core-site.xml,增加下面内容
<name>fs.default.name</name>
<value>hdfs://master:54310</value> //这个才是真正决定namenode
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/data/hdfs/tmp</value> //临时文件,有问题的时候,可以删除
<description>A base for other temporary directories.</description>
3.修改conf/hdfs-site.xml,增加下面内容
<property>
<name>dfs.name.dir</name> <value>/data/hdfs/name</value> //namenode持久存储名字空间,事务日志的本地路径
</property>
<property>
<name>dfs.data.dir</name>
<value>/data/hdfs/data</value> //datanode存放数据的路径
</property>
<property>
<name>dfs.datanode.max.xcievers</name>
<value>4096</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value> //数据备份的个数,默认是3
3.修改conf/mapred-site.xml,增加下面内容
<property> <name>mapred.job.tracker</name> //jobTracker的主机 <value>master:54311</value> </property>
4. .修改conf/masters,这个决定那个是secondarynamenode
5 .修改conf/slaves,这个是所有datanode的机器
slaves-Aslaves-B
6) 将配置好的hadoop拷贝到所有的datanode
root@master:/data/soft/hadoop/conf# scp -rp /data/soft/hadoop-0.21.0 10.10.236.191:/data/soft/hadoop-0.21.0
在datanode上建立对应的软连
7) 格式化hdfs文件系统的namenode
root@master:/data/soft/hadoop# bin/hadoop namenode –format
输入Y
8) 启动hadoop集群
root@master:/data/soft/hadoop# bin/start-all.sh
9) Hdfs操作
建立目录
root@master:/data/soft/hadoop # bin/hadoop dfs -mkdir testdir
查看现有文件
root@master:/data/soft/hadoop # bin/hadoop dfs -ls
10) 关闭Hdfs
root@master:/data/soft/hadoop# bin/stop-all.sh