捣鼓了小半天。假设起来了这个系统。下面是本人的一点经验和总结。大神勿喷orz
首先VM安装2个centOS系统
1、网上下载JAVA
上传新的jdk-7-linux-x64.rpm软件到/usr/local/执行以下操作:
[root@zck local]# rpm -ivh jdk-7-linux-x64.rpm
JDK默认安装在/usr/java中。
配置环境变量
我的机器安装完jdk-7-linux-x64.rpm后不用配置环境变量也可以正常执行javac、java –version操作,因此我没有进行JDK环境变量的配置。但是为了以后的不适之需,这里还是记录一下怎么进行配置,操作如下:
修改系统环境变量文件
vi + /etc/profile
向文件里面追加以下内容:
JAVA_HOME=/usr/java/jdk1.7.0
JRE_HOME=/usr/java/jdk1.7.0/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH
使修改生效
[root@zck local]# source /etc/profile //使修改立即生效
[root@zck local]# echo $PATH //查看PATH值
最好把环境变量配置好。将来要用的。还有。不能从虚拟机拉到windows上面来修改配置。。会报错。会报错。会报错!(重要的事情说三遍)(应该是和centos和windows回车不兼容的原因)
2、安装hadoop 1.2.1
没啥好说的。按照教程一步步安装就好了
3、配置hadoop
这点比较重要
我先说一下我的两个虚拟机的ip和计划的配置项
centOS1 ->namenode datanode1 ip:192.168.121.128
centOS2 ->seconderynamenode datenode2 ip:192.168.121.129
进入hadoop/conf目录下 修改以下文件
hdfs-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>dfs.replication</name>
<value>2</value>
</property>
</configuration>
这是关于有几个备份块的问题 我是两个datanode 就设置为2 默认为3
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://192.168.121.128:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/hadoop-1.2</value>
</property>
</configuration>
第一个是让你设置namenode的ip地址
第二个是让你设置默认的hadoop的namenode里面的配置文件需要的存放的地址 (默认地址是在tmp目录下。系统重启会被清空)
masters
这是指的seconderynamenode的地址。不是namenode的地址 (本来想说三遍。。太长了。懒得复制了)
192.168.121.129
这是指的datanode的地址。
192.168.121.128
192.168.121.129
再将JAVA的地址指向你centos装JAVA的地址
修改hadoop-env.sh
# export JAVA_HOME=/cygdrive/c/java/jdk1.7.0_40 //这行去掉改为下面那行。注意路径
export JAVA_HOME=/usr/java/jdk1.7.0_79
4、启动hdfs
需要把你的namenode的防火墙关掉。。
service iptables stop
然后先初始化hadoop hdfs
./hadoop namenode -format
最后运行 bin下的 start-dfs
5、得到成果
在两台机器上输入jps(如果not found 请到第一步看环境变量配置)
第一个虚拟机系统了datanode 和 namenode
第二个虚拟机启动了datanode 和secondarynamenode
访问http://192.168.121.128:50070/
成功运行。。
好了。就到这里。高手勿喷