集群节点批量执行 shell 命令

news2024/12/24 2:13:12

1、SSH 工具本身支持多窗口

比如 MobaXterm:
在这里插入图片描述
在这里插入图片描述

2、编写脚本通过 ssh 在多台机器批量执行shell命令

创建 ssh_hosts 配置文件,定义需要批量执行的节点(必须能够通过 ssh 免密登录,且存在同名用户)

vim ssh_hosts
bigdata0
bigdata1

创建 dosshcmd.sh 脚本:

vim dosshcmd.sh
#! /bin/sh

doSshCmd() {
    hosts=`sed -n '/^[^#]/p' /home/z/scripts/ssh_hosts`
    for host in $hosts
        do 
            echo \[**************** HOST: $host ****************]
            ssh $host "$@"
            echo ""
        done
    return 0
}if [ $# -lt 1 ]
then
    echo "$0 cmd"
    exit
fiecho CMD: "$@"
doSshCmd "$@

赋予执行权限

chmod u+x dosshcmd.sh

3、验证:

1) 验证简单命令:
[root@bigdata0 scripts]# ./dosshcmd.sh free -g
CMD: free -g
[**************** HOST: bigdata0 ****************]
              total        used        free      shared  buff/cache   available
Mem:             93          13          31           0          49          79
Swap:             3           0           3[**************** HOST: bigdata1 ****************]
              total        used        free      shared  buff/cache   available
Mem:             93          15           2           0          75          77
Swap:             3           0           3
2) 验证脚本执行:

编写一个通过 jps 找到 pid,然后通过 ps 查看进程信息的简单脚本:

vim find_java_resources.sh
#! /bin/shpids=`jps|grep -i "$1"| cut -d ' ' -f 1`
echo ----find pids: $pids
for pid in $pids
do
    echo ----PID: $pid----
    if [ $# -eq 1 ];
    then 
        ps -q $pid -aux|awk '{print $1, $2, $3, $4, $5, $6, $7, $8, $9, $10}'|column -t 
    else
        ps -q $pid ${@:2}|awk '{print $1, $2, $3, $4, $5, $6, $7, $8, $9, $10}'|column -t
    fi
    echo " "
done

赋予执行权限

chmod u+x find_java_resources.sh

分发:

[root@bigdata0 scripts]# scp find_java_resources.sh bigdata1:`pwd`
find_java_resources.sh                              100%  265     0.3KB/s   00:00    
[root@bigdata0 scripts]#

查看集群每个节点 yarn 任务资源占用

[root@bigdata0 scripts]# ./dosshcmd.sh /home/z/scripts/find_java_resources.sh yarn
CMD: /home/z/scripts/find_java_resources.sh yarn
[**************** HOST: bigdata0 ****************]
----find pids: 31878 31879
----PID: 31878----
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME
root     31878 24.7  1.2 26774340 1204428 ?    Sl   11:10   2:49 
 
----PID: 31879----
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME
root     31879 25.9  1.2 26743664 1210208 ?    Sl   11:10   2:57
 
​
[**************** HOST: bigdata1 ****************]
----find pids: 30703
----PID: 30703----
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME
root     30703 24.4  2.9 26776844 2854336 ?    Sl   11:14   2:48 

也可以用 watch 监控

watch "./dosshcmd.sh /home/z/scripts/find_java_resources.sh yarn"

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

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

相关文章

synchronized 的锁类型

之前的文章有讲过对同步锁的理解,实现同步锁的方式无非是多个线程抢占一个互斥变量,如果抢占成功则表示获得了锁,而没有获得锁的线程则阻塞等待,直到获得锁的线程释放锁 如图所示,在Mark Word中,我们发现锁…

软考系列(系统架构师)- 2009年系统架构师软考案例分析考点

试题一 软件架构设计 【问题1】(9分) 软件质量属性是影响软件架构设计的重要因素。请用200字以内的文字列举六种不同的软件质量属性名称并解释其含义。 常见的软件质量属性有多种,例如性能(Performance)、可用性(Ava…

037-第三代软件开发-系统音量设置

第三代软件开发-系统音量设置 文章目录 第三代软件开发-系统音量设置项目介绍系统音量设置QML 实现C 实现 总结一下 关键字: Qt、 Qml、 volume、 声音、 GPT 项目介绍 欢迎来到我们的 QML & C 项目!这个项目结合了 QML(Qt Meta-Obj…

【C++】类与对象 第二篇(构造函数,析构函数,拷贝构造,赋值重载)

目录 类的6个默认成员函数 初始化和清理 1.构造函数 2.析构函数 3.共同点 拷贝复制 1.拷贝构造 使用细节 2.赋值重载 运算符重载 < < > > ! 连续赋值 C入门 第一篇(C关键字&#xff0c; 命名空间&#xff0c;C输入&输出)-CSDN博客 C入门 第二篇( 引…

036-第三代软件开发-系统时间设置

第三代软件开发-系统时间设置 文章目录 第三代软件开发-系统时间设置项目介绍系统时间设置演示效果QML 实现小伙伴自创 TumblerQt 家 Tumbler C 端实现 总结一下 关键字&#xff1a; Qt、 Qml、 Time、 时间、 系统 项目介绍 欢迎来到我们的 QML & C 项目&#xff01;…

用Python实现感知机学习算法及其对偶算法实验报告

实验目的 1.理解感知机学习算法的基本思想&#xff1a;感知机是一种简单的线性分类模型&#xff0c;其基本思想是通过不断调整权重&#xff0c;使得分类超平面能够将不同类别的样本正确分开。 2.掌握感知机学习算法的实现方法&#xff1a;感知机学习算法基于随机梯度下降法&am…

【斗罗二】霍雨浩迷惑审查,戴华斌故意挑衅,惨败者屈服下跪

【侵权联系删除】【文/郑尔巴金】 深度爆料&#xff0c;自《绝世唐门》宣布问世以来&#xff0c;其在国漫圈引发的关注和热议便如火如荼。作为《斗罗大陆》的续作&#xff0c;这部作品无疑继承了前作的荣光&#xff0c;甚至被无数粉丝期待着能再创辉煌。在各大社交媒体和国漫论…

前端移动web高级详细解析二

移动 Web 第二天 01-空间转换 空间转换简介 空间&#xff1a;是从坐标轴角度定义的 X 、Y 和 Z 三条坐标轴构成了一个立体空间&#xff0c;Z 轴位置与视线方向相同。 空间转换也叫 3D转换 属性&#xff1a;transform 平移 transform: translate3d(x, y, z); transform…

搞定蓝牙——第五篇(SMP)

搞定蓝牙——第五篇&#xff08;SMP&#xff09; 原理Security Manager(简称SM&#xff0c;不要想歪)秘钥配对秘钥生成特定秘钥分发原理总结 原理 Security Manager(简称SM&#xff0c;不要想歪) 按照前面的试验&#xff0c;两个设备可以通过ble通讯了&#xff0c;但是&#…

(a /b)*c的值

系列文章目录 进阶的卡莎C++_睡觉觉觉得的博客-CSDN博客数1的个数_睡觉觉觉得的博客-CSDN博客双精度浮点数的输入输出_睡觉觉觉得的博客-CSDN博客足球联赛积分_睡觉觉觉得的博客-CSDN博客大减价(一级)_睡觉觉觉得的博客-CSDN博客小写字母的判断_睡觉觉觉得的博客-CSDN博客纸币(…

ETL工具Kettle

1 Kettle的基本概念 一个数据抽取过程&#xff0c;主要包括创建一个作业&#xff08;Job&#xff09;&#xff0c;每个作业由一个或多个作业项&#xff08;Job Entry&#xff09;和连接作业项的作业跳&#xff08;Job Hop&#xff09;组成。每个作业项可以是一个转换&#xff…

Cookie技术

Cookie中文名称为小型文本文件&#xff0c;指某些网站为了辨别用户身份、进行会话跟踪而储存在用户本地终端上的数据。 Cookie是由服务器端生成&#xff0c;发送给User-Agent&#xff08;—般是浏览器&#xff09;&#xff0c;浏览器会将Cookie的key/value保存到某个目录下的文…

wiresharak捕获DNS

DNS解析&#xff1a; 过滤项输入dns&#xff1a; dns查询报文 应答报文&#xff1a; 事务id相同&#xff0c;flag里 QR字段1&#xff0c;表示响应&#xff0c;answers rrs变成了2. 并且响应报文多了Answers 再具体一点&#xff0c;得到解析出的ip地址&#xff08;最底下的add…

【Linux】虚拟机安装Linux、客户端工具,MobaXterm的使用,Linux常用命令

目录 一&#xff0c;安装Linux的centos7版本 具体安装步骤&#xff1a; 二&#xff0c;Linux常见的命令&#xff1a; 三、安装客户端工具 1、介绍 2、安装MobaXterm 3、换源 四、拍照功能 一&#xff0c;安装Linux的centos7版本 介绍&#xff1a; 具体安装步骤&#…

PTA L1-8 静静的推荐

PTA L1-8 静静的推荐 分数 20 全屏浏览题目 切换布局 作者 陈越 单位 浙江大学 天梯赛结束后&#xff0c;某企业的人力资源部希望组委会能推荐一批优秀的学生&#xff0c;这个整理推荐名单的任务就由静静姐负责。企业接受推荐的流程是这样的&#xff1a; 只考虑得分不低于 175 …

软考系列(系统架构师)- 2012年系统架构师软考案例分析考点

试题一 软件架构&#xff08;架构风格对比、架构风格选取、架构设计过程&#xff09; 【问题1】&#xff08;12分&#xff09; 请用200字以内的文字解释什么是软件架构风格&#xff0c;并从集成开发环境与用户的交互方式、集成开发环境的扩展性、集成开发环境的数据管理三个方…

Anaconda下载和安装

1.概述 1&#xff09;包含conda&#xff1a;conda是一个环境管理器&#xff0c;其功能依靠conda包来实现&#xff0c;该环境管理器与pip类似。 2&#xff09;安装大量工具包&#xff1a;Anaconda会自动安装一个基本的python&#xff0c;该python的版本Anaconda的版本有关。该…

进程(详解)

进程 进程PCB进程的定义进程的组成进程模式进程的状态进程的运行进程的创建进程的结束孤儿进程僵尸进程僵尸进程的危害 进程的创建pidforkwait案例 进程 PCB 从操作系统理解进程概念-------先描述&#xff0c;后组织 为了使参与并发执行的程序能独立的运行&#xff0c;必须为之…

经常遇到的问题

一个前端经常会遇到的问题 例如&#xff0c;我想要在一个项目里&#xff0c;监听所有的fetch请求&#xff0c;应该怎么办&#xff1f;又或者说&#xff0c;我想用别人封装好的方法&#xff0c;但是在它之前&#xff0c;需要经过一层处理、判断&#xff0c;然后再看情况是否调用…

如何隐藏woocommerce 后台header,woocommerce-layout__header

如何隐藏woocommerce 后台header&#xff0c;woocommerce-layout__header WooCommerce |Products Store Activity| Inbox| Orders| Stock| Reviews| Notices| breadcrumbs 在 functions.php 里添加如下代码即可&#xff1a; // Disable WooCommerce Header in WordPress Admi…