我写了一个脚本,工作效率瞬间提升近1000倍!
大家好,写个效率我是脚本近倍冰河~~
冰河之前维护着上千台服务器组成的服务器集群,如果每次需要在服务器上执行命令的工作时候,都要手动登录每台服务器进行操作的瞬间话,那也太麻烦了 。提升
你想想,写个效率如果在上千台服务器的脚本近倍集群中 ,每台服务器中只需要简单的工作执行一个相同的命令,那别说执行命令了,瞬间就是免费模板提升让你依次手动登录上千台服务器 ,那也够你受的写个效率了。
估计依次登录上千台服务器 ,脚本近倍给你三天时间你可能都登不完,工作那怎么办呢?瞬间有没有什么好的方法来解决这个问题呢?
别急,我们今天就是提升来解决这个问题的。
说实话,我在维护上千台服务器集群的时候 ,并没有去依次手动登录每台服务器 ,为啥?没错,就是源码下载因为我懒啊!我懒的去登录 ,并且依次登录那么多台服务器,整个人都会崩溃的。
于是,我就想办法能不能写个脚本,让这个脚本接收我要执行的命令,然后将命令依次分发到集群上所有的服务器中执行 ,这不就解决问题了吗?说干就干。
不过,这里,高防服务器有个需要注意的地方 :那就是 :需要提前配置好集群中每台服务器的主机名和IP地址的对应关系 ,能够互相使用主机名进行通信 ,并配置了SSH免密码登录。
这一点不用担心,只要让运维在规划和分配服务器的时候 ,规划好就行了,无需后面再依次登录服务器处理 。
为了方便小伙伴们理解 ,这里我们就假设集群中存在1024台服务器,每台服务器的主机名为binghe1~binghe1024。服务器租用
每台服务器可以通过主机名进行通信 ,接下来,我写了一个名称为distribute_command.sh的脚本,内容如下所示。
复制#!/bin/bash pcount=$# if (( pcount<1 )) ; then echo no args; exit; fi #先在本机上执行命令 echo ------------binghe$host----------------- $@ #循环在集群中的远程节点上执行命令 for (( host=1 ; host<=1024; host=host+1)) ; do echo ------------binghe$host----------------- ssh binghe$host $@ done;1.2.3.4.5.6.7.8.9.10.11.12.13.14.这个脚本的含义为 :接收传递进来的命令 ,将命令分发到主机名为binghe1~binghe1024的服务器上执行。
也就是说,使用这个脚本我们能够做到:在集群中“任意”服务器上执行相同的命令。
接下来,亿华云为distribute_command.sh脚本赋予可执行权限,如下所示。
复制chmod a+x ./distribute_command.sh1.使用格式如下 :
复制./distribute_command.sh 在服务器上执行的完整命令1.使用示例
在集群中的每台服务器的/home目录下创建hello.txt文,内容为hello world 复制./distribute_command.sh echo "hello world" >> /home/hello.txt1. 查看集群中每台服务器上hello.txt文件的内容 复制./distribute_command.sh cat /home/hello.txt1. 删除集群中每台服务器上的hello.txt文件 复制./distribute_command.sh rm -rf /home/hello.txt1.是不是很简单啊?所以说,有时候,不要盲目的去执行 。很多时候 ,在做事情之前,源码库要先思考下有没有更好的解决方案,有没有效率更加高效的解决方案。
就比如这篇文章上说的 ,在上千台服务器上执行一条命令,如果依次手动登录每台服务器执行命令,估计花三天时间都搞不定;如果我们写了一个脚本的话 ,估计也就1分钟之内就搞定了。
所以,既有效率,又有质量才是做事情需要追求的目标 。
相关文章

人工智能大模型再次曝出漏洞,Google 邮件 EmailGPT 扩展成为受害者&quo...
Google Chrome 浏览器扩展 EmailGPT 曝出高危零日漏洞。EmailGPT 是 Google Chrome 的流行扩展程序,通过使用 OpenAI 公开提供的人工智能模型,帮助其用户2025-12-07
我们在使用win10操作系统的时候,有的情况下可能就会出现使用的系统显示有水印的情况,对于win10副本和正版有区别吗这个问题还是有很多小伙伴不知道具体情况。那么据小编所知其实win10系统的副本就相2025-12-07
使用过outlook软件的用户都知道,在编辑或管理电子邮件时,用户可以在outlook软件中请求对方的已读回执,如果用户收到了包含请求已读回执的邮件,就可以根据自己的需求来选择发送或是不发送已读回执,2025-12-07
对于市面上大家都在使用的win10操作系统,如果我们电脑上安装的是盗版win10的话,一定会有相关的提示来让我们激活当前的系统,或者就是系统的功能不全面。对于win10盗版如何升级转成正版这个问题,小2025-12-07
俄罗斯流媒体平台“START”start.ru)已经承认,此前有关数据泄露影响数百万用户的传言为真。START平台的管理员称,黑客从公司系统中窃取了2021 年的数据库,目前正在在线分发样本。被盗数据2025-12-07
edge浏览器是一款热门的网页浏览软件,并且是win10系统自带的浏览器,给微软用户带来了更好的功能体验,因此edge浏览器吸引了不少的用户前来下载使用,当用户在使用edge浏览器时,会不注意触发是是2025-12-07

最新评论