【大数据系列】hadoop脚本分析

时间:2023-03-09 09:12:04
【大数据系列】hadoop脚本分析

一、start-all.sh

hadoop安装目录/home/hadoop/hadoop-2.8.0/

libexec/hadoop-config.sh     ---设置变量

sbin/start-dfs.sh        ---启动hdfs

sbin/start-yarn.sh       ---启动yarn

二、sbin/start-dfs.sh   --config $HADOOP_CONF_DIR  -启动hdfs

libexec/hdfs-config.sh    --等价于libexec/hadoop-config.sh

获得节点名称和主机名

NameNodes=$($HADOOP_PREFIX/bin/hdfs getconf-namenodes)

启动节点名称

"$HADOOP_PREFIX/sbin/hadoop-daemons.sh"  --config "$HADOOP_CONF_DIR"  --script "$bin/hdfs" start namenode $nameStartOpt

启动DataNode

"$HADOOP_PREFIX/sbin/hadoop-daemons.sh"  --config "$HADOOP_CONF_DIR"  --script "$bin/hdfs" start datanode $dataStartOpt

启动2NN

"$HADOOP_PREFIX/sbin/hadoop-daemons.sh"  --config "$HADOOP_CONF_DIR"  --hostname "$SECONDARY_NAMENODES" --script "$bin/hdfs" start secondarynamenode

三、libexec/hdfs-config.sh

基本上都是调用libexec/hadoop-config.sh这个命令

四、sbin/hadoop-daemons.sh               --启动守护进程脚本

1、libexec/hdfs-config.sh    执行配置脚本

2、exec "$bin/slaves.sh"  --config $HADOOP_CONF_DIR cd "$HADOOP_PREFIX"  "$bin/hadoop-daemon.sh" --config $HADOOP_CONF_DIR "$@"

//exec调用  循环slaves文件。通过ssh方式登录远程主机,执行相应命令

3、hadoop-daemon.sh

hadoop-config.sh

五、bin/hadoop

hadoop-config.sh

java 最终调用的是java命令

六、bin/hdfs

hadoop-config.sh

java   最终调用的是Java命令

七、hadoop单启和多启进程

hadoop-daemon.sh  start namenode //启动任何脚本都可这个形式

hadoop-daemon.sh  start secondarynamenode

hadoop-daemon.sh stop namenode //关闭

//hadoop-daemon.sh  只在本地  只启动(关闭)一个  要在相应的机器上操作

//hadoop-daemons.sh 同时启动多个(集群上的任何机器上都可以操作)

eg:hadoop-daemons.sh start datanode

a:atomic   原子性

c:conssitent   一致性

i:isolation   隔离性

d:durable  永久性