二、Hadoop文件夹结构
这里重点介绍几个文件夹bin、conf及lib文件夹。
1、$HADOOP_HOME/bin文件夹
文件名 |
说明 |
hadoop |
用于运行hadoop脚本命令,被hadoop-daemon.sh调用运行,也能够单独运行,一切命令的核心 |
hadoop-config.sh |
Hadoop的配置文件 |
hadoop-daemon.sh |
通过运行hadoop命令来启动/停止一个守护进程(daemon)。 该命令会被bin文件夹以下全部以“start”或“stop”开头的全部命令调用来运行命令。hadoop-daemons.sh也是通过调用hadoop-daemon.sh来运行优命令的,而hadoop-daemon.sh本身由是通过调用hadoop命令来运行任务。 |
hadoop-daemons.sh |
通过运行hadoop命令来启动/停止多个守护进程(daemons),它也是调用hadoop-daemon.sh来完毕的。 |
rcc |
The Hadoop record compiler |
slaves.sh |
该命令用于向全部的slave机器上发送运行命令 |
start-all.sh |
全部启动,它会调用start-dfs.sh及start-mapred.sh |
start-balancer.sh |
启动balancer |
start-dfs.sh |
启动Namenode、Datanode及SecondaryNamenode |
start-jobhistoryserver.sh |
启动Hadoop任务历史守护线程,在须要运行历史服务的机器上运行该命令。 原文: Start hadoop job history daemons. Run this on node where history server need to run |
start-mapred.sh |
启动MapReduce |
stop-all.sh |
全部停止,它会调用stop-dfs.sh及stop-mapred.sh |
stop-balancer.sh |
停止balancer |
stop-dfs.sh |
停止Namenode、Datanode及SecondaryNamenode |
stop-jobhistoryserver.sh |
停止Hadoop任务历史守护线程 |
stop-mapred.sh |
停止MapReduce |
task-controller |
任务控制器,这不是一个文本文件。没有被bin以下的shell调用 |
2、$HADOOP_HOME/conf文件夹
文件名 |
说明 |
capacity-scheduler.xml |
|
configuration.xsl |
|
core-site.xml |
Hadoop核心全局配置文件。能够其他配置文件里引用该文件里定义的属性。如在hdfs-site.xml及mapred-site.xml中会引用该文件的属性。 该文件的模板文件存在于$HADOOP_HOME/src/core/core-default.xml,可将模板文件复制到conf文件夹,再进行改动。 |
fair-scheduler.xml |
|
hadoop-env.sh |
Hadoop环境变量 |
hadoop-metrics2.properties |
|
hadoop-policy.xml |
|
hdfs-site.xml |
HDFS配置文件。该模板的属性继承于core-site.xml。 该文件的模板文件存在于$HADOOP_HOME/src/hdfs/hdfs-default.xml,可将模板文件复制到conf文件夹,再进行改动。 |
log4j.properties |
Log4j的日志属于文件 |
mapred-queue-acls.xml |
MapReduce的队列 |
mapred-site.xml |
MapReduce的配置文件,该模板的属性继承于core-site.xml。 该文件的模板文件存在于$HADOOP_HOME/src/mapred/mapredd-default.xml,可将模板文件复制到conf文件夹。再进行改动。 |
masters |
用于设置全部secondaryNameNode的名称或IP。每一行存放一个。假设是名称。那么设置的secondaryNameNode名称必须在/etc/hosts有ip映射配置。 |
slaves |
用于设置全部slave的名称或IP,每一行存放一个。 假设是名称,那么设置的slave名称必须在/etc/hosts有ip映射配置。 |
ssl-client.xml.example |
|
ssl-server.xml.example |
|
taskcontroller.cfg |
|
task-log4j.properties |
3、$HADOOP_HOME/lib文件夹
存放的是Hadoop运行时依赖的的jar包,Hadoop在运行的时候会把lib文件夹以下的jar全部加到classpath中。
假设不想通过HADOOP_CLASSPATH指定自己的JAR文件所在路径。能够把计算须要用的jar全部都复制到lib文件夹中。