Hadoop 十六 操作命令

一些命令

各个模块分开启动/停止(配置SSH是前提)

  1. 整体启动/停止HDFS

start-dfs.sh/stop-dfs.sh

  2.整体启动/停止YARN

start-yarn.sh/stop-yarn.sh

各个服务组件逐一启动/停止

  1. 分别启动/停止HDFS组件

hdfs  --daemon start/stop namenode/datanode/secondarynamenode

    2. 启动停止YARN

  yarn  --daemon start/stop resourcemanager/nodemanager

为了简单,封装一个shell脚本

在bin目录下写myhadoop.sh脚本

#!/bin/bash

if [ $# -lt 1 ]

then

echo "No Args Input..."

exit ;

fi

 

case $1 in

"start")

echo " =================== 启动 hadoop 集群=========="

 

echo " ----启动 hdfs---"

ssh hadoop102 "/opt/module/hadoop-3.3.1/sbin/start-dfs.sh"

echo " ---启动 yarn---"

ssh hadoop103 "/opt/module/hadoop-3.3.1/sbin/start-yarn.sh"

echo " ---启动 historyserver---"

ssh hadoop102 "/opt/module/hadoop-3.3.1/bin/mapred --daemon start historyserver"

;;

"stop")

echo " =================== 关闭 hadoop 集群============="

 

echo " ------关闭 historyserver--------"

ssh hadoop102 "/opt/module/hadoop-3.3.1/bin/mapred --daemon stop historyserver"

echo "----- 关闭 yarn------"

ssh hadoop103 "/opt/module/hadoop-3.3.1/sbin/stop-yarn.sh"

echo " ---------关闭 hdfs--------"

ssh hadoop102 "/opt/module/hadoop-3.3.1/sbin/stop-dfs.sh"

;;

*)

echo "Input Args Error..."

;;

esac

 

更改脚本的权限

chmod 777 myhadoop.sh

 

运行

 

 

 

 

 

 再写一个脚本jpsall用于查看所有服务器的jps

#!/bin/bash

 

for host in hadoop102 hadoop103 hadoop104

do

  echo "有双引号"

  echo   无双引号

  echo  ===============  $host ===============

  ssh $host jps

done

/usr/local/jdk/bin/jps

 

 

 更改权限:

chmod 777 jpsall

运行

 

一直显示未找到命令,在网上找了好久,也没有找到答案,最后自己试验了不到两个小时,成功运行

 

 问题在于,符号不能用等号,正确的代码

#!/bin/bash

for host in hadoop102 hadoop103 hadoop104
do
echo --------------- $host ---------------
ssh $host jps
done

 

正确原因却不得而知,网上也找不到答案。

 

分发到其他服务器上

 

posted @   信2005-2赵磊  阅读(60)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决
· 提示词工程——AI应用必不可少的技术
点击右上角即可分享
微信分享提示