一、环境配置
安装虚拟机vmware,并在该虚拟机机中安装CentOS 6.4;
修改hostname(修改配置文件/etc/sysconfig/network中的HOSTNAME=hadoop),修改IP到主机名的映射(vi /etc/hosts ,添加 127.0.0.1 hadoop);
按照JDK,下载jdk1.7.0_60并解压到/soft目录中,然后在/etc/profile中添加 export JAVA_HOME=/soft/jdk1.7.0_60 和 export PATH = $PATH:$JAVA_HOME/bin 保存退出,source /etc/profile
关闭防火墙 , 查看防护墙状态:service iptables status 看到没有关闭时执行:service iptables stop ,为了防止重启后防火墙再次启动再执行:chkconfig iptables off;
使用ssh免登录设置,在linux终端输入:
ssh-keygen -t rsa 出现提示后一直按回车即可,(本人喜欢root用户登录操作所以生成的公钥文件在 ~/.ssh/ 路径下),cd 到 ~/.ssh/ 目录下并执行 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys 保存退出即可;
www.apache.org网址
下载hadoop2.2.0并解压,如解压到/cloud 目录下 执行:tar -zxvf hadoop-2.2.0.tar.gz –C /cloud ,在/etc/profile中添加环境变量HADOOP_HOME:export HADOOP_HOME=/cloud/hadoop-2.2.0 及修改环境变量PATH:export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin;
二 、修改hadoop配置文件
配置文件为/home/hadoop/etc/hadoop目录下的 core-site.xml、hdfs-site.xml、yarn-site.xml 、mapred-site.xml;
- core-site.xml
<configuration>
<!-- 配置hdfs访问路径,hadoop代表本机IP地址9000为端口-->
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop:9000</value>
</property><!-- 指定hadoop运行时产生文件的存放目录 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/cloud/hadoop-2.2.0/temp</value>
</property></configuration>
- mapred-site.xml
<configuration>
<!-- 指定mr框架为yarn方式 -->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
- hdfs-site.xml
<configuration>
<!-- 指定namenode在本地磁盘存放数据的位置,并注意创建指定的目录 -->
<property>
<name>dfs.namenode.name.dir</name>
<value>/cloud/hadoop-2.2.0/namenode</value>
</property><!-- 指定datanode在本地磁盘存放数据的位置,并注意创建指定的目录 -->
<property>
<name>dfs.datanode.data.dir</name>
<value>/cloud/hadoop-2.2.0/datanode</value>
</property><!-- 使用隔离机制时需要ssh免登陆 -->
<property>
<name>dfs.ha.fencing.ssh.private-key-files</name>
<value>/root/.ssh/id_rsa</value>
</property><property>
<name>dfs.permissions</name>
<value>false</value>
</property>
</configuration>
- yarn-site.xml
<configuration>
<!-- 指定resourcemanager地址 -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop</value>
</property><!-- 指定nodemanager启动时加载server的方式为shuffle server -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
- 在 /cloud/hadoop-2.2.0/etc/hadoop目录下的hadoo-env.sh文件中添加 export JAVA_HOME=/cloud/jdk1.7.0_60
三、格式化HDFS
在HADOOP_HOME目录下执行:hadoop namenode –format ,看到成功的提示即可;
四、启动hadoop
在HADOOP_HOME目录下执行:start-all.sh
五、验证集群是否启动成功
在Linux终端下执行:jps
结果:
还可以通过浏览器的方式验证
http://hadoop:50070 (hdfs管理界面)
http://hadoop:50030 (yarn管理界面)