hadoop 3.x大数据集群搭建系列8- 一些辅助的shell脚本

news2024/10/2 20:32:10

文章目录

  • 一. jps查看各个节点后台进程
  • 二. 启停hadoop集群
  • 三. 群起zookeeper集群脚本zk.sh
  • 四. 同步文件
  • 五. 启动停止整个集群

一. jps查看各个节点后台进程

我们经常需要查看各个节点的进程情况

vi jps.sh
#!/bin/bash
for i in hp5 hp6 hp7
do 
        echo -------------------------------- $i 节点进程情况 ---------------------------
        ssh $i "Jps | grep -v Jps"
done

image.png

二. 启停hadoop集群

hadoop 3.3版本后启动集群其实也方便,在主节点有启动和停止所有节点的命令,但是historyserver最好在每个节点都启动,所以还是可以写一个脚本。

原来操作的方法:

cd /home/hadoop-3.3.2/sbin
./start-all.sh #启动集群
./stop-all.sh #停止集群

cd /home/hadoop-3.3.2/bin/
./mapred --daemon start historyserver#每个节点启动

脚本的方法:

#!/bin/bash
HADOOP_HOME=/home/hadoop-3.3.2
export HADOOP_HOME

case $1 in
"start"){
    echo ---------- 开始启动集群 ------------  
    $HADOOP_HOME/sbin/start-all.sh
    for i in hp5 hp6 hp7
    do
        echo ---------- 启动 $i historyserver ------------    
        ssh $i "$HADOOP_HOME/bin/mapred --daemon start historyserver"
    done
    echo ---------- 结束启动集群 ------------  
};;
"stop"){
    echo ---------- 开始关闭集群 ------------  
    $HADOOP_HOME/sbin/stop-all.sh
    for i in hp5 hp6 hp7
    do
        echo ---------- 关闭 $i historyserver ------------    
        ssh $i "$HADOOP_HOME/bin/mapred --daemon stop historyserver"
    done
    echo ---------- 结束关闭集群 ------------  
};;
"status"){
    for i in hp5 hp6 hp7
    do
        echo -------------------------------- $i 节点进程情况 ---------------------------
        ssh $i "jps | grep -v Jps"
    done
};;
esac

image.png

三. 群起zookeeper集群脚本zk.sh

#!/bin/bash

case $1 in
"start"){
	for i in hp5 hp6 hp7
	do
        echo ---------- zookeeper $i 启动 ------------
		ssh $i "/home/software/zookeeper-3.4.6/bin/zkServer.sh start"
	done
};;
"stop"){
	for i in hp5 hp6 hp7
	do
        echo ---------- zookeeper $i 停止 ------------    
		ssh $i "/home/software/zookeeper-3.4.6/bin/zkServer.sh stop"
	done
};;
"status"){
	for i in hp5 hp6 hp7
	do
        echo ---------- zookeeper $i 状态 ------------    
		ssh $i "/home/software/zookeeper-3.4.6/bin/zkServer.sh status"
	done
};;
esac

四. 同步文件

我们经常会遇到修改配置文件,需要分发到其它节点

#!/bin/bash
# 把当前目录下修改的文件同步到其它节点的相同目录下(需要首先进入到文件所在的目录)
cur_dir=$(pwd)
filename=$1

for i in hp6 hp7
do
    echo ---------- 同步文件到 $i  ------------
    scp $cur_dir/$filename root@$i:$cur_dir/
done

echo ---------- 同步文件结束  ------------

脚本我都放在/home/shell目录了,为了让脚本可以在任意目录使用,需要配置环境变量,在PATH: 后增加

vi /etc/profile
:/home/shell

测试:
image.png

五. 启动停止整个集群

代码:

#!/bin/bash


function start_cluster()
{
        echo "######开始启动Hadoop集群############"
        sh cluster.sh start
        echo "######结束启动Hadoop集群############"
        echo "  "

        echo "######开始启动zookeeper集群############"
        sh zk.sh start
        echo "######结束启动zookeeper集群############"
        echo "  "

        echo "######开始启动hive metastore############"
        nohup hive --service metastore &
        echo "######结束启动hive metastore集群############"
        echo "  "

        echo "######开始启动Spark集群############"
        start-all.sh
        echo "######结束启动Spark集群############"
        echo "  "

        echo "######开始启动Flink集群############"
        start-cluster.sh
        echo "######结束启动Flink集群############"
        echo "  "
        

        echo "  "
        echo "  "
        echo "  "
        echo "  "
        echo "  "
        echo "#################整个集群启动完成#####################"
}


function stop_cluster()
{
        echo "######开始关闭Hadoop集群############"
        sh cluster.sh stop
        echo "######结束关闭Hadoop集群############"
        echo "  "

        echo "######开始关闭zookeeper集群############"
        sh zk.sh stop
        echo "######结束关闭zookeeper集群############"
        echo "  "

        echo "######开始关闭hive metastore############"
        ps -ef | grep HiveMetaStore | grep -v grep | awk '{print $2}'|xargs kill -9
        echo "######结束关闭hive metastore集群############"
        echo "  "

        echo "######开始关闭Spark集群############"
        stop-all.sh
        echo "######结束关闭Spark集群############"
        echo "  "

        echo "######开始关闭Flink集群############"
        stop-cluster.sh
        echo "######结束关闭Flink集群############"
        echo "  "
        

        echo "  "
        echo "  "
        echo "  "
        echo "  "
        echo "  "
        echo "#################整个集群关闭完成#####################"
}

case $1 in
"start"){
        start_cluster
}
;;
"stop"){
        stop_cluster        
}
;;
"restart"){
        stop_cluster
        start_cluster
}
;;
esac

测试记录:
image.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/54280.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MATLAB绘图合集:fcontour绘制隐函数等高线图

本文主要介绍隐函数等高线图的绘制。 说明 fcontour(f) 根据 x 和 y 的默认区间 [-5 5] 和 z 的固定级别值绘制 z f(x,y) 函数的等高线。 fcontour(f,xyinterval) 将在指定区间绘图。要对 x 和 y 使用相同的区间,请将 xyinterval 指定为 [min max] 形式的二元素向量…

单视频播放量超20万的公开课配套教材,猫书来了~

吹爆、强推、比刷剧还爽、一生推、传疯了! 很难想象,网友们会用这些词来形容一个纯分享深度强化学习基础知识的视频课。 在 B 站上搜索 “深度强化学习”,在排名 TOP 10 的相关课程中,有 4 个是王树森老师的 Reinforcement Learni…

基于CFD的车辆进气系统流场仿真与分析

目 录 摘 要 I ABSTRACT II 第1章 绪论 1 1.1研究背景 1 1.2研究现状 2 1.2.1国外的研究概况 2 1.2.2国内的研究概况 3 1.3研究思路及方法 4 第2章 车辆进气系统流场消声元件设计 6 2.1进气系统概述 6 2.1.1进气系统结构及工作原理 6 2.1.2进气噪声的产生机理 7 2.2进气消声元件…

编译原理期末总结

思维导图: 引论 编译程序的过程: 词法分析——>语法分析——>语义分析——>中间代码生成——>代码优化——>目标代码生成 其中中间代码生成和代码优化不是必要的。 文法和语言 1.巨型和句子的区别 句型>句子,句子是终结符串&am…

两周内创作纪念日——stay hungry stay foolish

📫作者简介:咸鱼爱搞机 📫 热衷分享,喜欢原创~ 关注我会给你带来一些不一样的认知和成长 🔥如果觉得此文还不错的话,还请👍关注、点赞、收藏三连支持👍一下博主 机缘 说来也巧&…

LeetCode 1769. 移动所有球到每个盒子所需的最小操作数

【LetMeFly】1769.移动所有球到每个盒子所需的最小操作数 力扣题目链接:https://leetcode.cn/problems/minimum-number-of-operations-to-move-all-balls-to-each-box/ 有 n 个盒子。给你一个长度为 n 的二进制字符串 boxes ,其中 boxes[i] 的值为 0 表…

D. Vupsen, Pupsen and 0(思维 + 从小部分入手(由小推大))

Problem - 1582D - Codeforces Vupsen和Pupsen被赠予一个整数数组。由于Vupsen不喜欢数字0,他把数组中所有等于0的数字都扔掉了。结果,他得到一个长度为n的数组a。 相反,Pupsen喜欢数字0,当他看到没有0的数组时,他很…

【Linux系统】第三篇:Linux中软件包管理器yum的使用

文章目录一、yum1、 什么是软件包和软件包管理器2、 什么是yum3、 Linux下软件安装的几种方式4、 使用yum的注意事项5、 yum的使用二、Linux / Windows下的数据互传1、 lrzsz的安装2、rzsz工具3、将Windows的数据传到Linux中4、将Linux的数据传到Windows中三、yum源配置文件1、…

linux下命令操作

grep:文本内容搜索;find:文件或者目录名以及权限属主等匹配搜索 eg: grep success * /*查找当前目录下面所有文件里面含有success字符的文件 14. kill 可以杀死某个正在进行或者已经是dest状态的进程 eg; ps ax 15. passwd 可以设置口令 16. history 用户用过的命令 eg: …

光源基础(1)——常见光源性能比对和好图像评价指标

机器视觉系统的核心部分是:(1)图像的采集 (如何得到一幅好的图片)和(2)图像的处理(如何找到最有效率、最准确的算法) 所有的信息均来源于图像,图像质量对整个视觉系统极为关键。 目前视觉行业中用于图像处理…

nltk报错punkt 缺失 Error Loading Error11004

问题描述 在运行NLTK的时候报错了,找不到punkt 文件,运行代码nltk.dowload(punkt也是没有用。 后面手动安装好了punkt后又缺了averaged_percentage_tragger _ 最后还是手动下载最可行 ,报错截图如下, punkt Error 报错截图 averaged_percen…

小米8 SE刷机安卓13

警告:这些说明仅在您精确遵循每个部分和步骤时才有效。 失败后不要继续!基本要求 在实际遵循说明之前,请至少通读一次说明,以避免因错过任何步骤而导致的任何问题!确保您的计算机具有 adb 和fastboot。可以找到设置说明…

SpringSecurity(二十一)--OAuth2:实现资源服务器(中)实现带有JdbcTokenStore的黑板模式

一、前言 本章将实现授权服务器和资源服务器使用共享数据库的应用程序。这一架构方式被称为黑板模式。这一架构方式被称为黑板模式。为什么叫黑板模式呢?因为可以将其视为使用黑板管理令牌的授权服务器和资源服务器。这种颁发和验证令牌的方法的优点是消除了资源服…

_Linux (ipc命令)

ipcs 查看进程间通信资源/ipcrm 删除进程间通信资源 -m 针对共享内存的操作 ipcs -mipcrm -m shmid(例如下图的5) -q 针对消息队列的操作 -s 针对信号量的操作 -a 针对所有资源的操作 key 唯一值(共享内存名字)shmid 共享内存标识owner 共享内存拥有者名字perms 拥有者对共…

ISP-ASF

1. 概述 1.1 高频与低频区分: 如何区分图像的高频信息和低频信息,所谓高频就是该像素点与周围像素差异较大,常见于一副图像的边缘细节和噪声等;而低频就是该像素点与周围像素差异变化不大,一般体现为图像的平坦区&am…

关于使用pytorch-lightning版本过低的一些问题

今天run了一下这篇Aspect Sentiment Quad Prediction as Paraphrase Generation论文的代码,遇到的都是pytorch-lightning版本问题。 首先是安装pytorch-lightning pip3 install pytorch-lightning -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.…

HTML简单的个人博客网站 DIV学生网页设计作品 dreamweaver作业静态HTML网页设计模板 个人网页作业制作

🎉精彩专栏推荐👇🏻👇🏻👇🏻 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业…

卷起来了!熬夜学习阿里P8全彩版并发编程图册,涨薪就在眼前

并发编程可以总结为三个核心问题:分工、同步、互斥。 并发编程可以总结为三个核心问题:分工、同步、互斥。所谓分工指的是如何高效地拆解任务并分配给线程,而同步指的是线程之间如何协作,互斥则是保证同一时刻只允许一个线程访问共…

一种基于物理信息极限学习机的PDE求解方法

**作者|**PINN山里娃,作者主页 **研究方向|**物理信息驱动深度学习 不确定性 人工智能 偏微分方程 极限学习机 该作者聚焦深度学习模型与物理信息结合前沿研究,提供了一系列AI for science研究进展报告及代码实现,旨在实现物理信息驱动深度学…

动态规划PTA总结

0动态规划 最优子结构&&最值问题&&重叠子问题 ---> 动态规划 引用别人的文章 1数字三角形 1.1题目 给定一个由 n行数字组成的数字三角形如下图所示。试设计一个算法,计算出从三角形 的顶至底的一条路径(每一步可沿左斜线向下或右斜线向下)&am…