hadoop-0.20.205.0部署手册
硬件环境为四台安装Red Hat Linux的PC,IP和主机名分别为:
10.21.4.112 namenode112
10.21.14.54 datanode054
10.21.14.62 datanode062
10.21.14.111 datanode111
将以上内容分别放入四台机器的/etc/hosts文件中
在四台机器上分别创建用户hadoop,密码为:hadoop
1、安装JDK
从sun官网下载1.6的jdk安装,本人的安装路径为:/home/hadoop/program/java。配置环境变量,在/home/.bash_profile的末尾加入一下内容:
JAVA_HOME=/home/hadoop/program/java
CLASSPATH=.:$JAVA_HOME/lib/tools.jar
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH
2、配置ssh无密码登录
在namenode112上执行以下命令:
ssh-keygen
然后按照提示输入必要的信息,当要求输入密码的时候留空。
执行cp命令拷贝上一步生成的密钥对中的公钥到/home/hadoop/.ssh目录底下。
cp /home/hadoop/.ssh/id_rsa.pub/home/hadoop/.ssh/authorized_keys
执行scp命令将authorized_keys文件分别拷贝到其他datanode节点
scp /home/hadoop/.ssh/authorized_keys hadoop@datanode111:/home/hadoop/.ssh/authorized_keys
scp /home/hadoop/.ssh/authorized_keys hadoop@datanode062:/home/hadoop/.ssh/authorized_keys
scp /home/hadoop/.ssh/authorized_keys hadoop@datanode054:/home/hadoop/.ssh/authorized_keys
在namenode112机器使用以下命令分别查看是否可以无密码登录其他三台机器
ssh datanode111
ssh datanode054
ssh datanode062
如果不成功,请检查原因
3、安装配置hadoop
从apache网站下载hadoop的压缩包(hadoop-0.20.205.0.tar.gz),执行一下命令解压
tar -zxvf hadoop-0.20.205.0.tar.gz
在四台机器上分别创建数据文件存放文件夹,这里是/home/hadoop/hadoop-data,执行chmod修改该文件夹的权限为755,注意,这里貌似只能是755,权限过大或过小都不能启动datanode节点。
mkdir /home/hadoop/hadoop-data
chmod 755 /home/hadoop/hadoop-data
配置hadoop-env.sh,在其中加入JAVA_HOME环境变量的配置,内容如下:
export JAVA_HOME=/home/hadoop/program/java
配置conf/core-site.xml,内容如下:
<?xml version="1.0"?><?xml-stylesheet type="text/xsl"href="configuration.xsl"?><!-- Put site-specific property overrides in this file. --><configuration> <property> <name>fs.default.name</name> <value>hdfs://namenode112:9000</value> </property></configuration>
<?xml version="1.0"?><?xml-stylesheet type="text/xsl"href="configuration.xsl"?><!-- Put site-specific property overrides in this file. --><configuration> <property> <name>dfs.replication</name> <value>2</value><!--数据备份数量--> </property> <property> <name>dfs.data.dir</name> <value>/home/hadoop/program/hadoop-data</value><!--数据文件存放地址--> </property></configuration>
<?xml version="1.0"?><?xml-stylesheet type="text/xsl"href="configuration.xsl"?><!-- Put site-specific property overrides in this file. --><configuration> <property> <name>mapred.job.tracker</name> <value>namdenode112:9001</value> </property></configuration>