Hadoop自学笔记(五)配置分布式Hadoop环境
上一课讲了怎样在一台机器上建立Hadoop环境。我们仅仅配置了一个NHName Node, 这个Name Node里面包括了我们全部Hadoop的东西。包括Name Node, Secondary Name Node, Job Tracker, Task Tracker,这一课解说怎样把上述配置放到不同机器上。从而构建一个分布式的hadoop配置。
1. hadoop分布式安装概览
a) 2-10个nodes:Name Node, Job Tracker, Secondary Name Node都能够放在一台机器上,全部的Data Node和Task Tracker放在其它机器上
b) 10-40个nodes: 能够把Secondary Name Node分开来
c) 100+ nodes: 全部的Node和Trackers都分开放。而且加入rack awareness支持,同一时候须要各类优化设置。
本课的流程:
配置好ssh到全部的机器上。使其能够免输入password连接(如同上一课所述)
配置好masters和slaves
配置好全部的*-site文件
学习使用命令来启动。控制和关闭Hadoop(经常使用脚本说明例如以下图)。
2. 配置Hadoop到2-10个节点上
这个图非常帅。我们在HN Client机器上来控制全部的Hadoop机器。每一个机器给一个窗体(下图已经通过ssh链接到每台机器了,链接方式见上一课)。
第一步:取消全部机器上面的sshpassword訪问
ssh-copy-id -i $HOME/.ssh/id-rsa.pub nuggetuser@HNData1
把这个文件复制到全部的HNData和Secondary Name Node上面。这样就能够无password登陆了。
第二步:配置Master和Slaves
全部的配置文件都在/usr/local/hadoop/conf目录以下
配置好masters来指向Secondary Name Node, 然后配置slaves文件指向全部的HNData Node
Master文件默认的是localhost
用不论什么编辑器打开masters文件。删除localhost, 输入HN2ndName (就是你Secondary Name Node 的名称)
相同。编辑slaves文件,把全部的HNData Node名称输入
第三步:配置全部的Data Node,让它们指向Name Node。全部的Task Tracker指向Job Tracker
通过core-site.xml配置前者,通过mapred-site.xml配置后者
在HNData Node配置core-site.xml例如以下(由于我们是直接把上次的机器配置拷贝进来的。所以能够发现这个文件已经配置过了,例如以下:)
配置mapred-site.xml例如以下:
上面的配置应该已经是这样了,只是不妨检查好每个Data Node中的配置是不是这样
第四步:又一次格式化Name Node
hadoop namenode -format
第五步:配置完毕了,能够试着看看是否能启动
start-dfs.sh 这个命令启动全部的Name Nodes和Data Nodes,能够使用jps命令来查看是否成功启动了。
start-mapred.sh 这个命令启动全部的Job Trackers和Task Trackers。 相同使用jps来检測是否启动了,假设没有成功,能够去看看logs文件
3. 启动和关闭Hadoop各部分的命令
假设要删除一个node。能够建立一个excludes文件,在里面输入你不想要的node名称,比方HNData3.
然后配置HN Name Node中core-site.xml例如以下(在最后加入一个property)
相同能够建立一个includes文件来指定包括哪些节点
配置完毕后,启用配置:
hadoop dfsadmin -refreshNodes
我们能够在hnname:50070上面看到被排除的Node
执行rebalancer命令
start-balancer.sh
关闭Job Tracker。 Task Tracker:
stop-mapred.sh
关闭Name Node, Data Nodes:
stop-dfs.sh
假设要同一时候启动HNName Node, Data Node, Job Tracker, Task Tracker,则直接输入:
start-all.sh
Hadoop自学笔记(五)配置分布式Hadoop环境的更多相关文章
- Hadoop学习笔记(6) ——重新认识Hadoop
Hadoop学习笔记(6) ——重新认识Hadoop 之前,我们把hadoop从下载包部署到编写了helloworld,看到了结果.现是得开始稍微更深入地了解hadoop了. Hadoop包含了两大功 ...
- Hadoop 2.7.0模拟分布式实验环境搭建[亲测]
实验目的: 本实验通过在PC电脑上同时运行3个虚拟机,一个为master节点,两个slave节点. 搭建环境: 主机:mac os 10.10 OS:CenOS 6.5 虚拟机:VMware ...
- Hadoop自学笔记(一)常见Hadoop相关项目一览
本自学笔记来自于Yutube上的视频Hadoop系列.网址: https://www.youtube.com/watch?v=-TaAVaAwZTs(当中一个) 以后不再赘述 自学笔记,难免有各类错误 ...
- [hadoop读书笔记] 第九章 构建Hadoop集群
P322 运行datanode和tasktracker的典型机器配置(2010年) 处理器:两个四核2-2.5GHz CPU 内存:16-46GN ECC RAM 磁盘存储器:4*1TB SATA 磁 ...
- Hadoop学习笔记(2)hadoop框架解析
Hadoop是适合大数据的分布式存储与计算平台 HDFS的架构:主从式结构 主节点只有一个NameNode,从节点可以有很多个DataNode. NameNode负责: (1)接收用户操作请求 (2) ...
- [hadoop读书笔记] 第四章 Hadoop I/O操作
P92 压缩 P102 序列化 序列化:将结构化对象转为字节流便于在网上传输或写到磁盘进行永久性存储的过程 用于进程之间的通信或者数据的永久存储 反序列化:将字节流转为结构化对象的逆过程 Hadoop ...
- Hadoop学习笔记—1.基本介绍与环境配置
一.Hadoop的发展历史 说到Hadoop的起源,不得不说到一个传奇的IT公司—全球IT技术的引领者Google.Google(自称)为云计算概念的提出者,在自身多年的搜索引擎业务中构建了突破性的G ...
- Hadoop学习笔记五
一.uber(u:ber)模式 MapReduce以Uber模式运行时,所有的map,reduce任务都在一个jvm中运行,对于小的mapreduce任务,uber模式的运行将更为高效. uber模式 ...
- 软件架构自学笔记----分享“去哪儿 Hadoop 集群 Federation 数据拷贝优化”
去哪儿 Hadoop 集群 Federation 数据拷贝优化 背景 去哪儿 Hadoop 集群随着去哪儿网的发展一直在优化改进,基本保证了业务数据存储量和计算量爆发式增长下的存储服务质量.然而,随着 ...
随机推荐
- (LeetCode 203)Remove Linked List Elements
Remove all elements from a linked list of integers that have value val. ExampleGiven: 1 --> 2 --& ...
- hadoop2.2.0_hbase0.96_zookeeper3.4.5全分布式安装文档下载
本文档主要内容有: 1.hadoop 2.2.0 集群安装与部署 2.HBase 0.96 集群安装与部署 3.Zookeeper 3.4.5集群安装部署 备注:安装文档可能有所遗漏,后续将持续更新. ...
- linux的子进程调用exec( )系列函数
exec( )函数族 : 以下我们来看看一个进程怎样来启动还有一个程序的运行.在Linux中要使用exec函数族.系统调用execve()对当前进程进行替换,替换者为一个指定的程序,其參数包含文件名称 ...
- secureCRT简单设置(学习笔记二)
菜鸟记录. 一.更改终端类型 选项-全局选项-默认会话-编辑默认设置-终端-仿真-右侧选择类型,下方设置缓冲区大小 二.设置字体和外观 上方窗口外观-右侧设置-字体设置字体类型大小,下面光标可以设置光 ...
- 解决-bash: fork: retry: Resource temporarily unavailable (修改最大线程数)
错误提示的本质是Linux操作系统无法创建更多进程,导致出错.因此要解决这个问题需要修改Linux允许创建更多的进程. 方案一: cat /etc/security/limits.conf echo ...
- 发现linux shell中$0,$?,$!等的特殊用法
记录下linux shell下的特殊用法及参数的说明 变量说明: $$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $? 最后运行的命令的结束代 ...
- js-form表单元素的自定义属性
form表单元素的自定义属性 CreateTime--2016年9月22日09:03:40 Author:Marydon 场景: <script type="text/javasc ...
- 〖Linux〗Qt5.2.0+gsoap开发Android的NDK程序遇到错误的解决
1. error: cannot convert ‘int*’ to ‘hostent**’ for argument ‘5’ to.. 原因分析: 缺少的宏定义,导致使用了错误的函数原型. 被调用 ...
- Python之L.reverse()和L.sort()
# -*- coding: utf-8 -*- #python 27 #xiaodeng #Python之L.reverse()和L.sort() #http://python.jobbole.com ...
- HTTP协议详解之基本认证篇
•什么是HTTP基本认证: 桌面应用程序也通过HTTP协议跟web服务器交互,桌面应用程序一般不会使用cookie,而是把‘用户名+:+密码’用base64编码之后的string放在request中的 ...