Hadoop的分布模式安装
1.确定集群的结构
| IP(主机名) | 角色 |
| 192.168.1.220(hadoop0) | NameNode、JobTracker |
| 192.168.1.221(hadoop1) | SecondaryNameNode |
| 192.168.1.222(hadoop2) | DataNode、TaskTracker |
| 192.168.1.223(hadoop3) | DataNode、TaskTracker |
由于SecondaryNameNode是执行合并任务的,内存占用特别大,所以单独一台大内存的节点。
以上4个ip可以是单独的物理机,也可以是虚拟机。生产环境中,一般是物理机。
假设各节点安装的linux版本完全一致。
假设各ip已经设置完成了主机名、防火墙关闭、ssh免密码登录等事项。并且在192.168.1.220上已经成功安装了hadoop的伪分布模式。如果还没有搞定的同学,可以参考前面的文章。
2.绑定各ip与主机名的映射关系
修改hadoop0的/etc/hosts文件,增加以下内容
192.168.1.220 hadoop0
192.168.1.221 hadoop1
192.168.1.222 hadoop2
192.168.1.223 hadoop3
目的是在hadoop0上通过主机名可以找到各个机器。
然后在hadoop0的终端中执行命令
scp /etc/hosts hadoop1:/etc
scp /etc/hosts hadoop2:/etc
scp /etc/hosts hadoop3:/etc
该命令是把hadoop0的hosts文件复制到其他节点的对应文件中
3.确保各个节点之间ssh可以免密码登录
在hadoop0的终端中执行以下命令
ssh-copy-id -i ~/.ssh/id_rsa.pub hadoop1
ssh-copy-id -i ~/.ssh/id_rsa.pub hadoop2
ssh-copy-id -i ~/.ssh/id_rsa.pub hadoop3
这样做是把公钥信息拷贝到其他节点中。同理,其他节点也执行类似操作,如hadoop1中执行以下命令
ssh-copy-id -i ~/.ssh/id_rsa.pub hadoop0
ssh-copy-id -i ~/.ssh/id_rsa.pub hadoop2
ssh-copy-id -i ~/.ssh/id_rsa.pub hadoop3
在hadoop2、hadoop3中也执行类似操作。
4.在其他节点搭建环境
首先把hadoop0中的${HADOOP_HOME}/tmp和${HADOOP_HOME}/logs删掉,命令如下。
rm -rf /usr/local/hadoop/tmp
rm -rf /usr/local/hadoop/logs
然后在hadoop0执行以下命令
scp -r /usr/local/hadoop hadoop1:/usr/local
scp -r /usr/local/jdk hadoop1:/usr/local
scp -r /etc/profile hadoop1:/etc/
执行完毕后,把命令中的hadoop1替换为hadoop2执行,替换为hadoop3执行。
以上操作是把hadoop0中的jdk文件夹和hadoop文件夹及环境变量复制到其他节点,避免安装了。
5.修改集群配置文件
在hadoop0的${HADOOP_HOME}/conf目录中,找到masters文件,删除内容,添加hadoop1;
找到slaves文件,删除内容,添加hadoop2和hadoop3,每个节点一行,不能写在一行中。
注意:只修改hadoop0的配置文件,其他节点的任何hadoop配置文件都不能修改。
6.启动集群环境
在hadoop0节点,执行以下命令
hadoop namenode -format
start-all.sh
第一条命令是格式化文件系统,第二条命令是启动hadoop集群。
7.验证是否成功
在hadoop0执行命令jps,可以看到两个java进程,分别是NameNode、JobTracker;
在hadoop1执行命令jps,可以看到一个java进程,是SecondaryNameNode;
在hadoop2执行命令jps,可以看到两个java进程,分别是DataNode、TaskTracker;
在hadoop3执行命令jps,可以看到两个java进程,分别是DataNode、TaskTracker;
恭喜你,搞定了!!
Hadoop的分布模式安装的更多相关文章
- Hadoop 伪分布模式安装
( 温馨提示:图片中有id有姓名,不要盗用哦,可参考流程,有问题评论区留言哦 ) 一.任务目标 1.了解Hadoop的3种运行模式 2.熟练掌握Hadoop伪分布模式安装流程 3.培养独立完成Hado ...
- Hadoop学习笔记(3)hadoop伪分布模式安装
为了学习这部分的功能,我们这里的linux都是使用root用户登录的.所以每个命令的前面都有一个#符号. 伪分布模式安装步骤: 关闭防火墙 修改ip地址 修改hostname 设置ssh自动登录 安装 ...
- hadoop伪分布模式安装
软件环境 操作系统 : OracleLinux-R6-U6 主机名: hadoop java: jdk1.7.0_75 hadoop: hadoop-2.4.1 环境搭建 1.软件安装 由于所需的软 ...
- hadoop伪分布模式的配置和一些常用命令
大数据的发展历史 3V:volume.velocity.variety(结构化和非结构化数据).value(价值密度低) 大数据带来的技术挑战 存储容量不断增加 获取有价值的信息的难度:搜索.广告.推 ...
- 【原】Hadoop伪分布模式的安装
Hadoop伪分布模式的安装 [环境参数] (1)Host OS:Win7 64bit (2)IDE:Eclipse Version: Luna Service Release 2 (4.4.2) ( ...
- Spark新手入门——2.Hadoop集群(伪分布模式)安装
主要包括以下三部分,本文为第二部分: 一. Scala环境准备 查看 二. Hadoop集群(伪分布模式)安装 三. Spark集群(standalone模式)安装 查看 Hadoop集群(伪分布模式 ...
- Hadoop单点伪分布模式安装
Hadoop单点伪分布模式安装 概述 单点 single-node,单节点,即一台计算机. 伪分布式模式 pseudo-distributed mode 所谓集群,表面上看是多台计算机联合完成任务:但 ...
- 伪分布模式安装hadoop
准备工具: 虚拟机:VMware Linux系统:CentOS hadoop-1.1.2.tar.gz jdk-7u75-linux-x64.gz CentOS的网络配置 1.设置主机中VMware ...
- Hadoop三种安装模式:单机模式,伪分布式,真正分布式
Hadoop三种安装模式:单机模式,伪分布式,真正分布式 一 单机模式standalone单 机模式是Hadoop的默认模式.当首次解压Hadoop的源码包时,Hadoop无法了解硬件安装环境,便保守 ...
随机推荐
- webhdfs追加写HDFS异常
问题 {:timestamp=>"2015-03-04T00:02:47.224000+0800", :message=>"Retrying webhdfs ...
- URAL1355. Bald Spot Revisited
1355 其实就是求质因子的个数 这样肯定是最多的 注意一下 除到最后不是1的情况 #include <iostream> #include<cstdio> #include& ...
- Android中使用ListView实现分页刷新(线程休眠模拟)(滑动加载列表)
当要显示的数据过多时,为了更好的提升用户感知,在很多APP中都会使用分页刷新显示,比如浏览新闻,向下滑动到当前ListView的最后一条信息(item)时,会提示刷新加载,然后加载更新后的内容.此过程 ...
- BZOJ 1911 特别行动队
另一个版本的斜率优化...这个要好理解一些. #include<iostream> #include<cstdio> #include<cstring> #incl ...
- ora-0000 normal跟/etc/hosts有关
当hosts文件配置错误时,用sqlplus登录后startup nomount,就会报错ORA-00000 [oracle11g@testdb2 dbs]$ sqlplus "/ as s ...
- Android Retrofit实现原理分析
retrofit有几个关键的地方. 1.用户自定义的接口和接口方法.(由动态代理创建对象.) 2.converter转换器.(把response转换为一个具体的对象) 3.注解的使用. 让我们跟随Ap ...
- Android堆栈分析
在开发中,与界面跳转联系比较紧密的概念是Task(任务)和Back Stack(回退栈).activity的启动模式会影响Task和Back Stack的状态, 进而影响用户体验.除了启动模式之外,I ...
- Python 获得命令行参数的方法
如果想对python脚本传参数,python中对应的argc, argv(c语言的命令行参数)是什么呢?需要模块:sys参数个数:len(sys.argv)脚本名: sys.argv[0]参数1 ...
- Python定时调度--多任务同一时间开始跑 scheduler.enterabs
Event Priorities If more than one event is scheduled for the same time their priority values are use ...
- Linux 客户端 下乱码的解决方法
最近使用xshell登陆英文版redhat,由于某些文件是中文编码,在xshell下显示乱码.折腾了很久终于找到了解决的方法,希望可以对大家有用.其他语言乱码的话,解决方法和此类似! 首先检查系统的l ...