前一段时间一直在玩hadoop,现在抽一点时间来整理一下安装hadoop伪分布式集群。
所需软件 centos6.5+hadoop2.7.7+jdk1.8
第一步,在vmware上安装好centos6.5,我安装的是minimal模式,因为这种模式下系统最纯净。
第二步,安装jdk,配置环境变量
第三步,在usr目录下创建hadoop文件夹,进入hadoop文件夹,上传hadoop压缩包,解压
首先 mkdir /usr/hadoop
cd /usr/hadoop
选择hadoop压缩包上传(最初的minimal模式是没有rz功能的,直接`yum install -y lrzsz`)
解压缩
tar -zxvf hadoop2.7.7
解压好后重命名一下,mv hadoop2.7.7 hadoop2.7
第四步 ,接着修改主机名(主机名不能有下划线"_")
1. vim /etc/sysconfig/network
修改 host=mini01 保存退出
2. vim /etc/hosts
在最后添加 192.168.59.128 mini01
(ip不同,前面ip可变),保存退出,重启虚拟机,再次登录就显示的mini01名称的主机名了
第四步 配置免密登录
如果安装的是minimal模式,不具备ssh功能,需要安装ssh
yum install -y openssh-server
yum install -y openssh-clients
接下来就是配置免密登录了
ssh-keygen 一直enter键
ssh-copy-id mini01
接着按照提示进行最后检查一下是否免密登录设置成功
ssh mini01
一切准备工作就绪,就正式开始hadoop安装
1. cd /usr/hadoop/hadoop2.7/etc/hadoop
vim hadoop-env.sh 在大约25行左右有JAVA_HOME={JAVA_HOME},改为JAVA_HOME=/usr/hadoop/hadoop2.7 保存退出
2. 配置core-site.xml,配置如下
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://mini01:9000</value>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://mini01:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/hadoop/tmp/</value>
</property>
</configuration>
保存退出
3.配置hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/usr/hadoop/hdfsname</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/usr/hadoop/hdfsdata</value>
</property>
</configuration>
4.配置mapred-site.xml
首先将map-site.xml-template copy一份重命名
copy mapred-site.xml-template mapred-site.xml
编辑mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
5.配置yarn-site.xml
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>mini01</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
6.配置环境变量
cd /
vim /etc/profile 在最后添加如下
JAVA_HOME=/usr/java/jdk1.8
HADOOP_HOME=/usr/hadoop/hadoop2.7
PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
CLASSPATH=$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib/tools.jar
export PATH JAVA_HOME CLASSPATH
以上就基本配置完毕,接着进行格式化
hadoop namenode -format
格式化完毕就可以开启服务 start-all.sh
jps一下,查看进程,总共显示六个则表示成功配置
注意,1.如果在配置过程中总是启动不了了namenode,先将tmp目录,hdfsdata目录删除再格式化
2.如果提示你Error: Cannot find configuration directory,只要修改一下配置信息
在hadoop-env.sh 配置一条hadoop配置文件所在目录
export HADOOP_CONF_DIR=/usr/hadoop/hadoop2.7/etc/hadoop
基本上可能会遇到的错误我都说了,按照这个步骤一步一步来,应该不会出错。
如果安装还遇到什么问题,可以问我,一定竭尽所能帮您解决。