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 只需要配置namenode的机器ip和本机ip
10.10.236.190 master
10.10.236.191 slave-A
修改hostname(可选)
vi /proc/sys/kernel/hostname
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
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,增加下面内容
<property> <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> </property>
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 </property>
3.修改conf/mapred-site.xml,增加下面内容
<property> <name>mapred.job.tracker</name> //jobTracker的主机 <value>master:54311</value> </property>
4. .修改conf/masters,这个决定那个是secondarynamenode
master
5 .修改conf/slaves,这个是所有datanode的机器
slaves-A
slaves-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