大数据开发学习之构建Hadoop集群-(0)
有多种方式来获取hadoop集群,包括从其他人获取或是自行搭建专属集群,抑或是从Cloudera Manager 或apach ambari等管理工具来构建hadoop集群等,但是由自己搭建则可以了解大量的常规构建和维护过程,可以从操作的角度来理解hadoop的工作机制,当然对于大部分用户和操作者应考虑使用hadoop集群管理工具。
集群规模:
根据场景和数据量不同而不同,一般在初期可以搭建合适的集群,后期再逐步持续扩充。另外集群规模不同,运行master守护进程的配置也不同,包括namenode、second namenode(辅助namenode),资源管理器以及历史服务器。对于小集群,master所在机器也可以同时运行namenode和资源管理器,不过规模的增大时应分离出去,避免运行master进程的集群毁坏时无法持续或恢复执行工作。分开的机器上,当master异常故障时,辅助namenode还可以接替,不会对服务造成太大的干扰。此外namenode和辅助namenode在内存中保存几乎所有的元数据和块数据等,规模增大时一台机器几乎无法同时运行它们。所以配置高可用的hadoop也是很重要的。
网络拓扑:
一般典型的采取二级网络架构,由多个服务器构建组成一个网络群(或称为机架)(由一个交换机或路由器相互通信),形成多个网络群,并将所有构建的网络群共享同一个更高级别的核心交换机或路由器来实现通信,从而实现二级网络架构。此外网络架构也会对hadoop性能产生影响,所以一般根据网络架构来配置hadoop以使得获取性能和弹性的合理平衡。也即是尽量倾向于在机架内进行数据传输而不是跨机架。
集群构建和安装:
1. 安装java,查看hadoop的wiki上的hadoopjavaversions(https://wiki.apache.org/hadoop/HadoopJavaVersions),根据自身需要安装指定可运行的组合(操作系统+java+hadoop),并配置JAVA_HOME和PATH路径即可,如:
export JAVA_HOME=/opt/jdk1.7.0_67
export PATH=$PATH:$JAVA_HOME/bin。
2. 创建用户账号,一般在unix/linux上安装,且最好以账号区分不同的hadoop进程和服务,如HDFS、MapReduce、YARN作为独立用户运行,且同属于一个hadoop组
3. 安装hadoop,可从apache hadoop官网获取发布包,一般tar.gz包解压到你想指定的目录并配置hadoop 的HADOOP_HOME和PATH环境变量即可。
如:
export HADOOP_HOME=/opt/hadoop-2.7.6
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
4. SSH配置,ssh-keygen -t rsa 以及 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
5. 配置hadoop的系列配置文件,主要是一些hadoop-env.sh,mapred-env.sh,yarn-env.sh环境变量配置,core-site.xml,hdfs-site.xml,mapred-site.xml,yarn-site.xml文件的守护进程等配置及slaves文件以运行datanode和节点管理器的配置
6. 格式化HDFS文件系统,hdfs namenode -format
7. 启动和停止守护进程。start-dfs.sh、start-yarn.sh分别启动HDFS守护进程和YARN守护进程。此外stop-yarn.sh和stop-dfs.sh停止相应的守护进程
8. 创建用户目录,hadoop fs -mkdir /usr/username,hadoop fs -chown username:username /user/username
大数据开发学习之构建Hadoop集群-(0)的更多相关文章
- 大数据系列(5)——Hadoop集群MYSQL的安装
前言 有一段时间没写文章了,最近事情挺多的,现在咱们回归正题,经过前面四篇文章的介绍,已经通过VMware安装了Hadoop的集群环境,相关的两款软件VSFTP和SecureCRT也已经正常安装了. ...
- 大数据系列(4)——Hadoop集群VSFTP和SecureCRT安装配置
前言 经过前三篇文章的介绍,已经通过VMware安装了Hadoop的集群环境,当然,我相信安装的过程肯定遇到或多或少的问题,这些都需要自己解决,解决的过程就是学习的过程,本篇的来介绍几个Hadoop环 ...
- 大数据系列(3)——Hadoop集群完全分布式坏境搭建
前言 上一篇我们讲解了Hadoop单节点的安装,并且已经通过VMware安装了一台CentOS 6.8的Linux系统,咱们本篇的目标就是要配置一个真正的完全分布式的Hadoop集群,闲言少叙,进入本 ...
- 大数据系列(2)——Hadoop集群坏境CentOS安装
前言 前面我们主要分析了搭建Hadoop集群所需要准备的内容和一些提前规划好的项,本篇我们主要来分析如何安装CentOS操作系统,以及一些基础的设置,闲言少叙,我们进入本篇的正题. 技术准备 VMwa ...
- 大数据系列(1)——Hadoop集群坏境搭建配置
前言 关于时下最热的技术潮流,无疑大数据是首当其中最热的一个技术点,关于大数据的概念和方法论铺天盖地的到处宣扬,但其实很多公司或者技术人员也不能详细的讲解其真正的含义或者就没找到能被落地实施的可行性方 ...
- CentOS6安装各种大数据软件 第十章:Spark集群安装和部署
相关文章链接 CentOS6安装各种大数据软件 第一章:各个软件版本介绍 CentOS6安装各种大数据软件 第二章:Linux各个软件启动命令 CentOS6安装各种大数据软件 第三章:Linux基础 ...
- 构建hadoop集群时遇到的问题
在构建hadoop集群时,出现过主节点中的namenode或datanode启动不成功的问题.在日志文件中往往会显示namenode和datanode中clusterID不相同的问题,这个问题往往都是 ...
- FusionInsight大数据开发学习总结(1)
FusionInsight大数据开发 FusionInsight HD是一个大数据全栈商用平台,支持各种通用大数据应用场景. 技能需求 扎实的编程基础 Java/Scala/python/SQL/sh ...
- 吴裕雄--天生自然HADOOP学习笔记:hadoop集群实现PageRank算法实验报告
实验课程名称:大数据处理技术 实验项目名称:hadoop集群实现PageRank算法 实验类型:综合性 实验日期:2018年 6 月4日-6月14日 学生姓名 吴裕雄 学号 15210120331 班 ...
随机推荐
- Identifier expected after this token
Cursor cursor = db.query(true, "user", new String[]{"id","mode"}, &quo ...
- [Selenium] 操作 警告框、提示框、确认框
以如下页面为例: http://sislands.com/coin70/week1/dialogbox.htm 示例代码: pachage com.learningselenium.normalweb ...
- BZOJ_1264_[AHOI2006]基因匹配Match_树状数组
BZOJ_1264_[AHOI2006]基因匹配Match_树状数组 Description 基因匹配(match) 卡卡昨天晚上做梦梦见他和可可来到了另外一个星球,这个星球上生物的DNA序列由无数种 ...
- html&css题
1.对WEB标准以及W3C的理解与认识?(1)web标准规范要求,书写标签必须闭合.标签小写.不乱嵌套,可提高搜索机器人对网页内容的搜索几率:(2)建议使用外链css和js脚本,从而达到结构与行为.结 ...
- .NETFramework:Encoding
ylbtech-.NETFramework:Encoding 1.返回顶部 1. #region 程序集 mscorlib, Version=4.0.0.0, Culture=neutral, Pub ...
- UI:地图和定位
参考学习链接 各种IOS设备可以使用 Core Location 框架确定它的物理位置.core location 主要使用三种技术来实现功能.GPS.蜂窝基站三角网络定位. wifi 定位服务.这三 ...
- Integrate Your Code with the Frameworks---整合你的代码和框架
Back to Frameworks Integrate Your Code with the Frameworks When you develop an app for OS X or iOS, ...
- C#(KeyChar和KeyCord值,KeyDown/KeyPress事件区别)
1. 首先将窗口属性KeyPreview设为true,如果属性对话框中找不到,就直接在代码里添加:2. 添加KeyPress / KeyDown事件: KeyPress 和KeyDown .KeyPr ...
- js 将json字符串转换为json对象的方法解析-转
例如: JSON字符串:var str1 = '{ "name": "cxh", "sex": "man" }'; JS ...
- Cg(C for Graphic)语言语义绑定方法(转)
摘抄“GPU Programming And Cg Language Primer 1rd Edition” 中文名“GPU编程与CG语言之阳春白雪下里巴人” 语义绑定方法 入口函数输入\ 输出数据的 ...