hadoop启动脚本

[INFO] jps information:
===== centos001 ===== :
16843 DataNode
17385 JobHistoryServer
16688 NameNode
17215 NodeManager
12534 StandaloneSessionClusterEntrypoint
===== centos002 ===== :
16033 DataNode
16392 NodeManager
16246 ResourceManager
12546 TaskManagerRunner
===== centos003 ===== :
15446 DataNode
15657 NodeManager
15565 SecondaryNameNode
12544 TaskManagerRunner

if (($# < 1)); then  # 输入参数个数小于1,提示没有输入参数并退出
  echo no args input, exit.
  exit 1
fi

case $1 in
start)
  echo [INFO] starting dfs ...  # 开始启动分布式文件系统
  start-dfs.sh    # 执行start-dfs.sh脚本
  echo [INFO] done.   # 输出启动完成信息

  echo [INFO] starting yarn on centos002 ...  # 开始启动yarn
  ssh centos002 start-yarn.sh   # 在centos002上执行start-yarn.sh脚本
  echo [INFO] done.  # 输出启动完成信息

  echo [INFO] starting historyserver ...   # 启动历史服务器
  mapred --daemon start historyserver   # 执行mapred的命令,启动历史服务器
  echo [INFO] done.   # 输出启动完成信息

  ;;
stop)
  echo [INFO] stop historyserver ...   # 停止历史服务器
  mapred --daemon stop historyserver   # 执行mapred的命令,停止历史服务器
  echo [INFO] done.  # 输出停止完成信息

  echo [INFO] stop yarn on centos002 ...  # 停止centos002上的yarn
  ssh centos002 stop-yarn.sh   # 在centos002上执行stop-yarn.sh脚本
  echo [INFO] done.  # 输出停止完成信息

  echo [INFO] stop dfs ...   # 停止分布式文件系统
  stop-dfs.sh    # 执行stop-dfs.sh脚本
  echo [INFO] done.   # 输出停止完成信息

  ;;
*)
  echo require \"start\" or \"stop\", but provide "$1"  # 如果参数不是start或stop,输出提示信息
  exit 1   # 退出
  ;;
esac

echo ""   # 输出空行
echo [INFO] jps information:   # 输出提示信息
echo ===== centos001 ===== :   # 输出centos001的信息
jps | sort -k 2 | grep -v Jps   # 执行jps命令,按第二列排序并过滤掉Jps进程
echo ===== centos002 ===== :   # 输出centos002的信息
ssh centos002 jps | sort -k 2 | grep -v Jps   # 在centos002上执行jps命令,按第二列排序并过滤掉Jps进程
echo ===== centos003 ===== :   # 输出centos003的信息
ssh centos003 jps | sort -k 2 | grep -v Jps   # 在centos003上执行jps命令,按第二列排序并过滤掉Jps进程
posted @ 2023-05-09 13:26  aminor  阅读(43)  评论(0)    收藏  举报
/**/ /**/