更换notepad++的格式为Unix
一键启动hdfs,yarn,历史服务
在调用shell脚本时,需要传入一个参数,用于标识执行开启或者关闭hadoop(hdfs,yarn,历史服务)
#!/bin/bash
# 在调用shell脚本时,需要传入一个参数,用于标识执行开启或者关闭hadoop(hdfs,yarn,历史服务)
#判断调用shell脚本时 是否正常的传入参数
#参数小于1
if [ $# -lt 1 ]
then
echo "调用该脚本时需要传入一个参数"
exit ;
fi
#传入的第一个参数 有三种情况
case $1 in
"start")
echo "----------启动hadoop集群----------"
#远程访问bigdata04然后执行start-dfs.sh脚本
ssh bigdata004 "/opt/softs/hadoop3.1.3/sbin/start-dfs.sh"
echo "----------启动hdfs----------"
ssh bigdata006 "/opt/softs/hadoop3.1.3/sbin/start-yarn.sh"
echo "----------启动历史服务----------"
ssh bigdata006 "/opt/softs/hadoop3.1.3/bin/mapred --daemon start historyserver"
;;
"stop")
echo "----------关闭hadoop集群----------"
ssh bigdata004 "/opt/softs/hadoop3.1.3/sbin/stop-dfs.sh"
echo "----------关闭hdfs----------"
ssh bigdata006 "/opt/softs/hadoop3.1.3/sbin/stop-yarn.sh"
echo "----------关闭历史服务----------"
ssh bigdata006 "/opt/softs/hadoop3.1.3/bin/mapred --daemon stop historyserver"
;;
*)
echo "输入的参数不符合脚本运行的规则,请输入start或者stop"
;;
esac
在opt下新建一个shell目录存放脚本,将写的脚本上传
运行会出现以下问题
将以下内容写入start-dfs.sh stop-dfs.sh start-yarn.sh stop-yarn.sh等文件中,并传给其他节点
HDFS_NAMENODE_USER=root
HDFS_DATANODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
YARN_RESOURCEMANAGER_USER=root
YARN_NODEMANAGER_USER=root
scp stop-yarn.sh root@bigdata005:/opt/softs/hadoop3.1.3/sbin/
完成后 运行
sh /opt/shell/my_hadoop.sh start
jps查看
#!/bin/bash
for hostname in bigdata004 bigdata005 bigdata006
do
echo "-------------$hostname------------"
ssh $hostname /opt/softs/jdk1.8.0/bin/jps
done
将写的脚本上传
运行即可
sh /opt/shell/my_jps.sh