centoos 安装hadoop集群
环境准备
两台centoos系统服务器
H30(192.168.3.238)
H31(192.168.3.237)
H30为master,H31为slave,slave后续还可以再加机器;
先通过xshell 登录到H30进行配置
1、添加主机名解析
将如下记录添加到/etc/hosts 中
192.168.3.238 H30
192.168.3.237 H31
H31那台机器上也要执行同样的操作,注意要保证两台机器要内互通,并且主机名要为H30和H31
如果主机名不一样可在/etc/sysconfig/network中进行修改,修改完记得重启机器生效;
2、安装java环境
yum remove java* -- 卸载之前安装的版本
yum install java-1.7.0-openjdk java-1.7.0-openjdk-devel --通过yum安装jdk1.7
执行rpm -ql java-1.7.0-openjdk-devel | grep '/bin/javac'可查看安装路径

将/bin/javac前面的那一段作为JAVA_HOME的值,在~/.bashrc.sh文件底部添加
export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.141.x86_64/
然后执行source ~/.bashrc.sh 让配置生效;
3、配置ssh免密码登录
先查看是否安装ssh
rpm -qa | grep ssh
没有安装则执行如下命令进行安装
yum install openssh-clients
yum install openssh-server
安装完成后切换的~/.ssh
ssh-keygen -t rsa --执行三次回车
cat id_rsa.pub >> authorized_keys -- 加入授权
chmod 600 ./authorized_keys -- 修改文件权限
将生成的authorized_keys 拷贝到H31上
scp ./authorized_keys root@H31:~/.ssh/ -- 需要输入那台机器的密码
拷贝完成执行shh H31 无需输入密码就可登录则表示安装成功
4、安装hadoop
4.1,下载
Hadoop 2 可以通过 http://mirror.bit.edu.cn/apache/hadoop/common/ 或者 http://mirrors.cnnic.cn/apache/hadoop/common/ 下载;
下载时请下载 hadoop-2.x.y.tar.gz这个格式的文件,这是编译好的,另一个包含 src 的则是 Hadoop 源代码,需要进行编译才可使用
4.2,解压
下载完成后执行如下命令
tar -xzvf hadoop-2.6.1.tar.gz -C /usr/local -- 将包解压到/usr/local 中
mv hadoop-2.6.1 hadoop --重命名
chown -R root:root hadoop -- 修改文件属主和属组
4.3,配置hadoop环境变量
配置hadoop环境变量,将如下内容拷贝到~/.bashrc文件底部
export HADOOP_HOME=/usr/local/hadoop #此处为刚刚解压出来重命名的hadoop路径
export HADOOP_HOME=/usr/local/hadoop
export HADOOP_INSTALL=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
4.4,修改hadoop配置
hadoop/etc/hadoop下有slaves、core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml 五个文件需要修改
slaves( 如需新增slave,则要将主机名填入到此文件中)
H31
core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://H30:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/usr/local/hadoop/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
</configuration>
hdfs-site.xml
<configuration>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>H30:50090</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/data</value>
</property>
</configuration>
mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>H30:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>H30:19888</value>
</property>
</configuration>
yarn-site.xml:
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>H30</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
4.5,配置slave
tar -zcf hadoop.tar.gz ./hadoop -- 对配置好的master hadoop目录打包,如果hadoop中已经生成了tmp要进行删除
scp ./hadoop.tar.gz H31:/usr/local --通过scp命令将打包好的hadoop发送到H31的/usrlocal中
传送完成后通过xshell 登录到H31上,按照步骤 2 的操作安装好jdk,再按照步骤 4.3 将hadoop环境变量添加好后切入到/usr/local目录
tar -zxf hadoop.tar.gz -C /usr/local -- 将H31拷贝过来的包进行解压到/usr/local中
5、格式化master节点
重新回到H30机器,执行
hdfs namenode -format -- 注意只有在首次运行需要格式化,之后不需要了
6、启动hadoop
在启动前先对防火墙进行关闭,如果H31也开启了防火墙同样要进行关闭
service iptables stop
接着可以启动 hadoop 了
start-dfs.sh -- 关闭为 stop-dfs.sh
start-yarn.sh -- 关闭为 stop-yarn.sh
mr-jobhistory-daemon.sh start historyserver -- 关闭为 mr-jobhistory-daemon.sh stop historyserver
通过命令 jps 可以查看各个节点所启动的进程。正确的话,在 Master 节点上可以看到 NameNode、ResourceManager、SecondrryNameNode、JobHistoryServer 进程,如下图所示:

在H31中通过jps则如下图所示:

也可以通过 Web 页面看到查看 DataNode 和 NameNode 的状态:http://H30:50070/。如果不成功,可以通过启动日志排查原因。
7、测试分布式实例
hdfs dfs -mkdir -p /user/ --在fdfs中创建/user目录
hdfs dfs -mkdir -p /user/root --在user目录中创建root目录
hdfs dfs -mkdir -p input --在root目录中创建input,不加 / 则会取/user+当前用户名作为路径
hdfs dfs -put /usr/local/hadoop/etc/hadoop/*.xml input -- 往input目录中拷入测试文件
hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar grep input output 'dfs[a-z.]+' -- 执行测试
执行完成后可通过hdfs dfs -ls output 看到有结果文件输出
centoos 安装hadoop集群的更多相关文章
- 安装Hadoop集群的最快的软件
Quick Hadoop是一款安装Hadoop集群的桌面软件,只需要点两下鼠标,一分钟之内安装Hadoop到集群上,超快! 还在每台主机的Shell里一行一行地敲安装Hadoop的命令?别苦逼了! 用 ...
- docker安装hadoop集群
docker安装hadoop集群?图啥呢?不图啥,就是图好玩.本篇博客主要是来教大家如何搭建一个docker的hadoop集群.不要问 为什么我要做这么无聊的事情,答案你也许知道,因为没有女票.... ...
- CentOS7 搭建Ambari-Server,安装Hadoop集群(一)
2017-07-05:修正几处拼写错误,之前没发现,抱歉! 第一次在cnblogs上发表文章,效果肯定不会好,希望各位多包涵. 编写这个文档的背景是月中的时候,部门老大希望我们能够抽时间学习一下Had ...
- 通过ambari安装hadoop集群,ZT
通过ambari安装hadoop集群,ZT http://www.cnblogs.com/cenyuhai/p/3295635.html http://www.cnblogs.com/cenyuhai ...
- Linux上安装Hadoop集群(CentOS7+hadoop-2.8.0)--------hadoop环境的搭建
Linux上安装Hadoop集群(CentOS7+hadoop-2.8.0)------https://blog.csdn.net/pucao_cug/article/details/71698903 ...
- 安装hadoop集群--hdfs
安装hadoop集群--hdfs 大数据软件 链接:https://pan.baidu.com/s/1-3PYLHMgvvONawJq55hstQ 提取码:izqf 准备一台干净的虚拟机-centos ...
- 安装hadoop集群服务器(hadoop1.2.1)
摘要:hadoop,一个分布式系统基础架构,可以充分利用集群的威力进行高速运算和存储.本文主要介绍hadoop的安装与集群服务器的配置. 准备文件: ▪ VMware11.0.0 ▪ Cen ...
- CentOS7 安装Hadoop集群环境
先按照上一篇安装与配置好CentOS以及zookeeper http://www.cnblogs.com/dopeter/p/4609276.html 本章介绍在CentOS搭建Hadoop集群环境 ...
- 在虚拟机上配置安装hadoop集群
原本以为有大神已经总结的很清楚了,就不自己在写了, 但是在自己安装的过程中还是出现了一些问题, 所以打算以自己的方式重新总结一下. 参考https://blog.csdn.net/hliq539 ...
随机推荐
- C语言基础第五次作业
题目7-2 统计一行文本的单词个数 1.实验代码 #include <stdio.h> int main() { char a; ,countword=; ){ scanf("% ...
- 清幽傲竹实现的kbmMWServer数据库联接失败重联(转载红鱼儿)
1.修改kbmMWUnidac单元的TkbmMWUNIDACConnection.InternalOpenConnection方法,加上: //支持unidac重联 ...
- 2019.01.10 bzoj1095: [ZJOI2007]Hide 捉迷藏(动态点分治)
传送门 蒟蒻真正意义上做的第一道动态点分治! 题意:给一棵最开始所有点都是黑点的树,支持把点的颜色变成从黑/白色变成白/黑色,问当前状态树上两个最远黑点的距离. 思路: 首先考虑不带修改一次点分治怎么 ...
- 2019.01.02 poj1322 Chocolate(生成函数+二项式定理)
传送门 生成函数好题. 题意简述:一个袋子里有ccc种不同颜色的球,现要操作nnn次,每次等概率地从袋中拿出一个球放在桌上,如果桌上有两个相同的球就立刻消去,问最后桌上剩下mmm个球的概率. 第一眼反 ...
- Codeforces Round #538 (Div. 2) F 欧拉函数 + 区间修改线段树
https://codeforces.com/contest/1114/problem/F 欧拉函数 + 区间更新线段树 题意 对一个序列(n<=4e5,a[i]<=300)两种操作: 1 ...
- s11.1 lsof:查看进程打开的文件
功能说明 lsof 全名为list open files,也就是列举系统中已经被打开的文件,通过lsof命令,就可以根据文件找到对应的进程信息,也可以根据进程信息找到进程打开的文件. [语法格式] l ...
- BZOJ 1059 [ZJOI2007]矩阵游戏 (二分图最大匹配)
1059: [ZJOI2007]矩阵游戏 Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 5281 Solved: 2530[Submit][Stat ...
- Cron连接正常工作5次后异常原因分析
目录 目录 1 问题描述 1 分析定位 1 解决方法 2 附1:Cron工作流 3 附2:SIGPIPE发生的位置 3 如果一个shell命令的"$?"值为141,则它是收到了SI ...
- java基础-day10
第10天 IO 今日内容介绍 u IO流概述及FileWriter类使用 u FileReader类使用 u 缓冲流介绍和使用 u IO流相关案例 第1章 IO流概述及FileWriter类使用 ...
- 关于cmp函数参数中的&符号
关于cmp函数参数中的&符号 关于sort函数中的cmp函数有着不同的写法,以刚刚的整形元素比较为例 还有人是这么写的: bool cmp(const int &a, const in ...