hadoop-集群管理(1)——配置文件
1. 配置文件列表如下:
[tianyc@Route conf]$ pwd
/home/tianyc/hadoop-1.0.4/conf
[tianyc@Route conf]$ ll
总用量 76
-rw-rw-r--. 1 tianyc NEU 7457 3月 6 10:38 capacity-scheduler.xml
-rw-rw-r--. 1 tianyc NEU 535 3月 6 10:38 configuration.xsl
-rw-rw-r--. 1 tianyc NEU 371 3月 6 14:26 core-site.xml
-rw-rw-r--. 1 tianyc NEU 327 3月 6 10:38 fair-scheduler.xml
-rw-rw-r--. 1 tianyc NEU 2233 3月 6 10:38 hadoop-env.sh
-rw-rw-r--. 1 tianyc NEU 1488 3月 6 10:38 hadoop-metrics2.properties
-rw-rw-r--. 1 tianyc NEU 4644 3月 6 10:38 hadoop-policy.xml
-rw-rw-r--. 1 tianyc NEU 258 3月 6 10:38 hdfs-site.xml
-rw-rw-r--. 1 tianyc NEU 4441 3月 6 10:38 log4j.properties
-rw-rw-r--. 1 tianyc NEU 2033 3月 6 10:38 mapred-queue-acls.xml
-rw-rw-r--. 1 tianyc NEU 270 3月 7 14:45 mapred-site.xml
-rw-rw-r--. 1 tianyc NEU 19 3月 7 11:52 masters
-rw-rw-r--. 1 tianyc NEU 19 3月 6 10:38 slaves
-rw-rw-r--. 1 tianyc NEU 1243 3月 6 10:38 ssl-client.xml.example
-rw-rw-r--. 1 tianyc NEU 1195 3月 6 10:38 ssl-server.xml.example
-rw-rw-r--. 1 tianyc NEU 382 3月 6 10:38 taskcontroller.cfg
2. 常用配置文件:
- hadoop-env.sh:记录脚本要用的环境变量。
- core-site.xml:Hadoop核心配置项
- hdfs-site.xml:Hadoop守护进程配置项,例如namenode,secondarynamenode和datanode等。
- mapred-site.xml:MapReduce守护进程配置项,包括jobtracker和tasktracker。
- master:运行secondarynamenode(而不是namenode)的机器列表(每行一个)。只在namenode或jobtracker节点上使用,无需同步到各节点。
- slave:运行datanode和tasktracker的机器列表(每行一个)。只在namenode或jobtracker节点上使用,无需同步到各节点。
3. 配置管理
hadoop支持为所有的节点采用同一套配置文件,这样管理会变得非常简单,不过这对于某些集群来说并不适合。例如在扩展集群时,如果新机器的硬件和现有机器不同,则需要为新机器创建一套新的配置文件,以充分利用新硬件资源。所以,非常推荐在每个节点保存一套配置文件,并由管理员完成这些配置文件的同步工作。hadoop提供了一个基本工具来进行同步配置,即rsync。
这种情况下,需要引入“机器类”的概念,为不同的机器类分别维护一套配置文件。不过hadoop并没有提供执行这个操作的工具,需要借助外部工具,例如Chef,Puppet,cfengine和bcfg2等。
4. 控制脚本
- start-dfs.sh:在本地节点启动namenode,在slave文件指定的每个节点启动datanode,在master文件指定的每个节点启动secondarynamenode
- start-mapred.sh:在本地节点启动jobtracker,在slave文件指定的每个节点启动tasktracker。
- start-all.sh:依次调用start-dfs.sh和start-mapred.sh
- stop-dfs.sh/stop-mapred.sh/stop-all.sh:前面的start脚本对应的关闭脚本。
- hadoop-daemon.sh:上述脚本调用它来执行启动和终止hadoop守护进程。如果用户需要从其他系统或自己编写脚本控制hadoop守护进程,可以调用它。
- hadoop-daemons.sh:用于在多个主机上启动同一hadoop守护进程。
5. 守护进程管理
对于小型集群(几十个节点),可以将namenode、secondarynamenode、jobtracker放到单独一台机器上,但对于大型集群,最好分别放到不同的机器上。
- namenode:在内存中保存整个命名空间的所有文件和块元数据,它的内存需求很大。
- secondnamenode:保存一份最新的检查点,记录文件系统的元数据,有助于在数据丢失或系统崩溃时恢复namenode的元数据;它在大多时候空闲,但它创建检查时的内存需求和namenode差不多。一旦文件系统包含大量文件,单台主机可能无法同时运行namenode和secondarynamenode。
- jobtracker:在一个运行大量mapreduce作业的高负载集群上,jobtracker会使用大量内存和CPU资源,因此它最好运行在一个专用节点上。
HDFS控制脚本需要在namenode机器上运行;mapreduce控制脚本需要在jobtracker机器上运行。
hadoop-集群管理(1)——配置文件的更多相关文章
- Hadoop集群管理之配置文件
一.配置文件列表如下: [hadoop@node1 conf]$ pwd /app/hadoop/conf [hadoop@node1 conf]$ echo $HADOOP_HOME /app/ha ...
- Hadoop集群管理
1.简介 Hadoop是大数据通用处理平台,提供了分布式文件存储以及分布式离线并行计算,由于Hadoop的高拓展性,在使用Hadoop时通常以集群的方式运行,集群中的节点可达上千个,能够处理PB级的数 ...
- Hadoop集群管理--保证集群平稳地执行
本篇介绍为了保证Hadoop集群平稳地执行.须要深入掌握的知识.以及一些管理监控的手段,日常维护的工作. HDFS 永久性数据结构 对于管理员来说.深入了解namenode,辅助namecode和da ...
- Hadoop集群管理之内存管理
1.内存 Hadoop为各个守护进程(namenode,secondarynamenode,jobtracker,datanode,tasktracker)统一分配的内存在hadoop-env.sh中 ...
- zookeeper安装和应用场合(名字,配置,锁,队列,集群管理)
安装和配置详解 本文介绍的 Zookeeper 是以 3.2.2 这个稳定版本为基础,最新的版本可以通过官网http://hadoop.apache.org/zookeeper/ 来获取,Zookee ...
- 大数据开发学习之构建Hadoop集群-(0)
有多种方式来获取hadoop集群,包括从其他人获取或是自行搭建专属集群,抑或是从Cloudera Manager 或apach ambari等管理工具来构建hadoop集群等,但是由自己搭建则可以了解 ...
- Eclipse提交任务至Hadoop集群遇到的问题
环境:Windows8.1,Eclipse 用Hadoop自带的wordcount示例 hadoop2.7.0 hadoop-eclipse-plugin-2.7.0.jar //Eclipse的插件 ...
- 容器、容器集群管理平台与 Kubernetes 技术漫谈
原文:https://www.kubernetes.org.cn/4786.html 我们为什么使用容器? 我们为什么使用虚拟机(云主机)? 为什么使用物理机? 这一系列的问题并没有一个统一的标准答案 ...
- 大数据-HDFS 集群搭建的配置文件
1.HDFS简单版集群搭建相关配置文件 1.core-site.xml文件 <property> <name>fs.defaultFS</name> <val ...
- Apache Hadoop 2.9.2 的集群管理之服役和退役
Apache Hadoop 2.9.2 的集群管理之服役和退役 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 随着公司业务的发展,客户量越来越多,产生的日志自然也就越来越大来,可能 ...
随机推荐
- 0808HTML
打开DREAMWEAVER,新建HTML,页面上有几句代码 <html>开始标签 <head>网页上的控制信息 <title>页面标题</title> ...
- Tornado (and Twisted) in the age of asyncio》
Tornado (and Twisted) in the age of asyncio>
- Carath\'eodory 不等式
(Carath\'eodory 不等式) 利用 Scharwz 引理及线性变换, 证明: 若函数 $f(z)$ 在圆 $|z|<R$ 内全纯, 在 $|z|\leq R$ 上连续, $M(r)$ ...
- 7.4 gcd
# include<stdio.h>int main(){ int gcd(int a,int b); int n,i,x,y,c; scanf("%d",&n ...
- iOS使用AVFoundation实现二维码扫描
原文:http://strivingboy.github.io/blog/2014/11/08/scan-qrcode/ 关于二维码扫描有不少优秀第三方库如: ZBar SDK 里面有详细的文档,相应 ...
- Rspec中describe和context不同
转自 http://lmws.net/describe-vs-context-in-rspec 学习rspec,不太理解describe和context.google了一下,找到这篇文章,感觉说的有 ...
- 什么是bower
Bower是一个客户端技术的软件包管理器,它可用于搜索.安装和卸载如JavaScript.HTML.CSS之类的网络资源.其他一些建立在Bower基础之上的开发工具,如YeoMan和Grunt,这个会 ...
- dual
1. dual 确实是一张表.是一张只有一个字段,一行记录的表. 2.习惯上,我们称之为'伪表'.因为他不存储主题数据.3. 他的存在,是为了操作上的方便.因为select 都是要有特定对象的.如:s ...
- Java中的JDBC基础
简介 JAVA程序想要对数据库进行访问,需要有JDBC驱动程序的支持.JDBC驱动程序提供了对各种主流数据库的接口,程序员只需要学习掌握这一套接口,就可以实现对所有数据库的访问代码编写. 一般步骤 J ...
- Mongdb操作嵌套文档
1.一个文档如下 db.posts.find() { "_id" : ObjectId("5388162dfc164ee1f39be37f"), "t ...