Hadoop-2.5.1集群安装配置笔记
win7电脑连接到vpn10.10.21.123,下载xshell,用xshell登录到分配好的三个ip。
192.168.2.97 nameNode
192.168.2.93 dataNode1
192.168.2.85 dataNode2
下载xmanager
1.2修改主机的hostname以及hosts域名映射
$vi /etc/sysconfig/network //三台主机都要操作
NETWORKING=yes
HOSTNAME=nameNode //这里的nameNode是主机名称
NTPSERVERARGS=iburst
$vi /etc/hosts
192.168.2.97 nameNode
192.168.2.93 dataNode1
192.168.2.85 dataNode2
配置同步到其他两台机器
scp /etc/hosts root@192.168.2.93:/etc/hosts
scp /etc/hosts root@192.168.2.85:/etc/hosts
2.安装
2.1 安装ssh
yum -y install openssh*
yum -y install wget
2.2安装jdk,配置环境变量
略...
2.3防火墙配置
$serviceiptables status查看防火墙状态
$serviceiptables stop暂停防火墙服务
$serviceiptables start开启防火墙服务
$serviceiptables restart重启防火墙服务
$su root
$serviceiptables status
如果是on则配置iptables的允许端口,如果是off,则打开$serviceiptables start
修改端口号
$vim/etc/sysconfig/iptables
增加允许的端口号,然后:wq退出即可
如图中,ACCEPT有8031,8030,8032三个端口是hadoop平台搭建中服务器防火墙需要允许的。注意Accept的端口号要放在一起,其次再是reject。因为linux读取配置时是一行一行读的。
修改配置之后需要使用命令$serviceiptables restart重启。
2.4配置ssh公钥密钥自动登录
详细过程见http://blog.csdn.net/cfcf0517/article/details/41967225
2.5开始安装
下载最新版本hadoop-2.5.2
<span style="font-size:18px;">wget http://mirrors.hust.edu.cn/apache/hadoop/common/hadoop-2.5.1/hadoop-2.5.1.tar.gz </span>
解压
<span style="font-size:18px;">tar -zxf hadoop-2.5.1.tar.gz</span>
2.5.2配置环境变量
root用户下 vi /etc/profile
追加内容如下:
export HADOOP_HOME=/home/hadoop/hadoop-2.5.2
export PATH=$PATH:$HADOOP_HOME/bin
使配置生效
source /etc/profile
2.5.2配置文件
进入配置文件目录:cd hadoop-2.5.1/etc/hadoop
core-site.xml配置
<p><span style="font-size:18px;"><property></span></p><p><span style="font-size:18px;"><name>hadoop.tmp.dir</name></span></p><p><span style="font-size:18px;"><value>/home/hadoop/cloudData</value></span></p><p><span style="font-size:18px;"></property></span></p><p><span style="font-size:18px;"><property></span></p><p><span style="font-size:18px;"><name>fs.defaultFS</name></span></p><p><span style="font-size:18px;"><value>hdfs://nameNode:8020</value>#里面的内容是hdfs://主机名字:端口号</span></p><p><span style="font-size:18px;"></property></span></p>
mapred-site.xml.template配置,用cp命令复制为mapred-site.xml
<p><property></p><p><name>mapreduce.framework.name</name></p><p><value>yarn</value></p><p><final>true</final></p><p></property></p>
yarn-site.xml配置
<p><property></p><p><name>yarn.nodemanager.aux-services</name></p><p><value>mapreduce_shuffle</value></p><p></property></p><p></p><p><property></p><p><name>yarn.resourcemanager.hostname</name></p><p><value>cMaster</value></p><p></property></p>
2.5.2配置cMaster0中的slaves
dataNode1
dataNode2
2.5.3修改JAVA_HOME
export JAVA_HOME=/usr/java/jdk1.7.0_45
格式化文件系统:
<span style="font-size:18px;">bin/hdfs namenode -format</span>
输出(省略大部分,下面只有开头和结尾):
[hadoop@nameNode bin]# hdfs namenode -format
14/12/16 11:12:45 INFO namenode.NameNode: STARTUP_MSG:
/************************************************************
STARTUP_MSG: Starting NameNode
STARTUP_MSG: host = cMaster0/192.168.2.97
STARTUP_MSG: args = [-format]
STARTUP_MSG: version = 2.5.2
......省略
/************************************************************
SHUTDOWN_MSG: Shutting down NameNode at cMaster0/192.168.2.97
************************************************************/
2.7启动、停止服务
$./sbin/start-dfs.sh
$./sbin/start-yarn.sh
2.8单独验证yarn与hdfs集群
Master和slave主机上都使用命令:
$jps
分别得到如下结果:
2.9WordCount验证
1.dfs上创建input目录
$bin/hadoop fs -mkdir -p input
2.把hadoop目录下的README.txt拷贝到dfs新建的input里
$bin/hadoop fs -copyFromLocal README.txt input
3.运行WordCount
$bin/hadoop jar share/hadoop/mapreduce/sources/hadoop-mapreduce-examples-2.5.2-sources.jar org.apache.hadoop.examples.WordCount input output
4.运行完毕后,查看单词统计结果
$bin/hadoop fs -cat output/*
假如程序的输出路径为output,如果该文件夹已经存在,先删除
$bin/hadoop dfs -rmr output