hadoop3.3.0启动脚本分析


1 启动start-all.sh

  在子工程hadoop-common-project下的模块hadoop-common中的bin目录里,使用start-all.sh启动工程.
  启动流程:
  1.1 获取libexec的绝对路径
  1.2 启动hadoop-config.sh
  1.3 启动hadoop-functions.sh
  1.4 启动start-dfs.sh
  1.5 启动start-yarn.sh

2 启动hadoop-config.sh

  这是第二个启动的脚本.
  流程:
  2.1 首先检查bash的版本,要求高于3.2
  2.2 执行hadoop-functions.sh,此脚本定义了很多方法
  2.3 使用hadoop_deprecate_envvar方法把老的过时变量替换掉
  2.4 可选是否使用hadoop-layout.sh脚本,建议此脚本是非常熟悉hadoop的人使用
  2.5 启动hadoop shell的运行环境
  2.6 一次设置hadoop的配置目录,执行hadoop-env.sh脚本,加载shellprofile.d的内容,执行hadoop_exec_userfuncs.sh脚本,执行.hadoop-env,检查log4j.properties文件是否存在,把HADOOP_SLAVE的名称全部换为HADOOP_WORKER,根据操作系统设置一些变量,设置JAVA_HOME,初始化hadoop shell环境,此时用户自定义的也加入生效了,加载子工程任何复写的变量,初始化shellprofiles,添加java 本地lib路径,把HADOOP_COMMON下的lib路径添加进去,把shellprofiles
的路径添加进去,执行用户的定义行为.hadooprc,最后执行结束设置方法,结束各种设置
  2.7 至此脚本执行完毕

3 启动hadoop-functions.sh

  提供其它脚本要调用的方法.

4 启动start-dfs.sh

  在子工程hadoop-hdfs-project的模块hadoop-hdfs中,进入该脚本,首先执行hdfs-config.sh脚本,判断hdfs-env.sh是否存在,若存在则执行,这里不分析,因为工程中默认是不存在该脚本的,然后替换了一些旧变量的定义,然后获取一些namenode的启动参数.

4.1 使用hdfs脚本启动namenode

  首先执行hdfs getconf -namenodes,对应启动的类为org.apache.hadoop.hdfs.tools.,再执行hdfs namenode ,参数为-workers,-config,-hostnames,-daemon start

4.2 使用hdfs脚本启动datanode

  同启动namenode,没有参数-hostnames.

4.3 使用hdfs脚本启动secondarynamenode

  同namenode,getconf参数变为-secondarynamenodes,其余不变.

4.4 使用hdfs脚本启动journalnode

  同namenode,getconf参数为-journalNodes,其余不变.

4.5 使用hdfs脚本启动zkfc

  同namenode,getconf参数变为-confKey,其余不变.

5 启动start-yarn.sh

  同启动dfs一样,这里分别启动使用yarn脚本resourceManager和nodemanager,最后使用hdfs脚本启动proxyserver,yarn脚本和hdfs脚本基本相同.

6 总结启动顺序和内容

  start-all.sh顺序启动hadoop-config.sh,hadoop-functions.sh,start-dfs.sh
和start-yarn.sh.
  start-dfs.sh顺序启动namenode,datanode,secondarynamenode,journalnode和zkfc.
  start-yarn.sh顺序启动resourceManager和nodemanager,再利用hdfs启动proxyserver
hdfs脚本启动zkfc.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值