运维企业实战Shell脚本合集+万能工具箱

这篇博客汇集了企业实战中的各种Linux运维Shell脚本,包括系统维护的服务器巡检、用户管理、日志监控,线上业务的版本回退、日志分析,数据库的MySQL和MongoDB备份恢复,以及DevOps相关的工具箱,提供了丰富的自动化解决方案。
摘要由CSDN通过智能技术生成

系统维护篇

引:企业实战中必备的Shell脚本合集,针对:系统维护、线上业务、数据库、DevOps等多个场景的整理汇总。

服务器日常巡检脚本

使用场景:针对Linux服务器每日巡检收集监控数据,如:CPU、内存、硬盘、网络、登录、软件等一系列信息

企业级Linux日常自动巡检脚本:戳我~

下线登录用户

使用场景:针对Linux服务器多用户的管理维护,让运维管理员更加方便地一键强制下线其他在线用户

一键强制下线用户脚本:戳我~

企业级Linux日常自动抓取服务器巡检、登录、执行命令记录+备份脚本

使用场景:针对Linux服务器上系统的巡检日志、用户登录成功/失败记录、执行命令记录记录到日志文件
自动抓取脚本: 戳我~

终端对话&广播消息

场景:针对多个用户登录服务器时,管理员广播消息或用户之间对话时的场景
教程:终端对话&广播消息教程

批量查询IP归属地+手机号归属地信息

场景:业务中需要排查某些IP、手机号归属地信息,甚至有些场景是批量的,浏览器直接批量copy查询的话某些网站还收费,所以写了个脚本,无需进入Windows系统打开浏览器查询,直接再Linux系统内执行脚本批量输入查询即可~
批量自动查询脚本:戳我~

Linux开机后自动执行命令或脚本

场景:针对开机后自动执行命令或脚本
Linux开机后自动执行命令或脚本:戳我~
脚本自动化编辑工具:戳我~

一键自动格式化输出SQL+Json语句脚本工具

场景:在Linux系统内通过一些命令工具对未格式化输出的数据进行格式化处理:SQL、Json
一键自动格式化输出SQL+Json语句脚本工具:戳我~

线上业务篇

运维自动抓包

使用场景:基于tcpdump命令写的抓包脚本工具,一键抓取自定义协议、端口、进、出的数据包

运维自动抓包脚本:戳我~

运维线上业务版本自动回退

针对线上业务出现问题或Bug,导致业务不稳定等情况,需要紧急回退上个或上上个版本,业务环境为:Docker

运维线上业务版本自动回退脚本:戳我~

自动导出Java堆栈错误日志

使用场景:针对于线上Docker业务容器启动失败,快速导出业务容器的Java堆栈日志,帮助开发快速定位、解决问题。

运维自动导出业务容器Java堆栈错误日志脚本:戳我~

Docker指定时间段一键过滤容器运行时日志

使用场景:针对容器日志过多时,过滤某个时间、时间段的日志

Docker指定时间段一键过滤容器运行时日志脚本:戳我~

CPU/内存达到阈值重启服务

使用场景:当某个服务经常性占用资源越来越高或偶尔飙高,判断cpu或内存有一项达到90时重启服务并发送钉钉告警,两次判断间隔:10s、20s

监控脚本:戳我~

定时检查服务运行状态并自动恢复宕机服务

使用场景1:服务宕机触发钉钉告警:不自动恢复,针对线上业务(排错)
使用场景2:服务宕机触发钉钉告警:自动恢复,针对测试业务(快速恢复)

监控脚本:戳我~

一键列出所有容器IP地址脚本

使用场景:在服务器带宽被占用,但不好定位是哪个容器时,通过用此脚本来快速过滤容器名,以便解决问题
一键列出所有容器IP地址脚本:戳我~

统计Nginx请求成功率等信息脚本

使用场景:统计Nginx的访问信息,如请求成功/失败率、当日PV、请求频繁URL/IP/客户端IP的TOP10
统计脚本:戳我~

数据库篇

MySQL

备份库

全备与增备

使用场景:针对数据库的全量和增量备份(mysqldump

全备+增备脚本:戳我~

忽略表备份

使用场景:针对某个数据库的全备,把一些不想备份的表给忽略掉,同步数据时被忽略的表数据则不会更新

忽略表备份脚本:戳我~

备份表

一键自动备份表数据

使用场景:针对数据库的单个表备份,一键快速备份表(mysqldump

一键自动备份表数据脚本:戳我

一键自动恢复表数据

使用场景:针对数据库的单个表恢复,一键快速恢复表(mysql

一键自动恢复表数据脚本:戳我

运维定时刷入SQL

使用场景:有些时候,运维需要单独执行某些SQL语句,还得是低峰期,为了不半夜爬起来工作,所以就写了个定时自动执行的脚本

定时刷入SQL脚本:戳我~

生产数据自动化同步到预生产

使用场景:基于昨晚的全备,在预生产服务器添加定时执行此脚本,重置数据库、刷入昨晚的全备

生产数据自动化同步到预生产脚本:戳我~

Binlog2sql

实现非主从关系实现数据的【实时同步+恢复误删+数据追踪】

数据同步

使用场景:拉取binlog,实时同步到其它数据库实例,达到非主从关系同步的效果
案例参见:数据同步

数据恢复

使用场景:误删数据,主要做紧急恢复
案例参见:数据恢复

数据追踪

使用场景:数据追踪,用来追踪执行详情,如时间/等其他记录
案例参见:数据追踪

MongoDB

数据备份&恢复

部署参考:Docker搭建Mongdb Replica Set高可用集群+自动备份与恢复脚本

自动备份

自动备份脚本:戳我~

自动恢复

自动恢复脚本:戳我~

慢日志开启&备份

开启慢查询日志:戳我~
自动恢复脚本:戳我~

Redis

Redis自动保存执行记录脚本

使用场景:将Redis的操作记录实时写入到日志文件并保存(日志按天创建),包含命令行、第三方工具执行的增删改查操作都会记录。
自动保存执行记录脚本:戳我~

Redis一键备份与恢复脚本

使用场景:自动备份Redis数据,并在业务中一键快速恢复Redis数据,提高工作效率!
Redis一键备份与恢复脚本:戳我~

DevOps篇

Harbor

使用场景:Harbor私有仓库运行一段时间后,仓库中存有大量镜像,会占用太多的存储空间;直接通过Harbor界面删除相关镜像,并不会自动删除存储中的文件和镜像,需要停止Harbor服务,执行垃圾回收命令,进行存储空间清理和回收
清理步骤:
1、web控制台删除无用的镜像构建记录或存储库;
2、执行自动清理脚本即可;
自动清理Harbor无用镜像脚本:戳我~

万能工具箱

脚本获取地址参见Shell万能工具箱脚本

说明

持续更新~
整合业务中常用的脚本并分类触发,所有功能均基于此文档内的外链脚本

使用步骤

1.shell_tools.sh存放到/root/scripts/
2.将所需功能的脚本逐个新建到/root/scripts/shell_tools/
3.通过运行/root/scripts/shell_tools.sh来调用/root/scripts/shell_tools/不同脚本,以实现不同功能
PS:部分功能报错说明:部分不可直接使用的功能需要对应配置环境,参考对应功能的文档配置即可

执行效果

230418 163856

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

秋风お亦冷

感觉不错,您可以博主进行打赏噢

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值