Linux下自动化监控内存、存储空间!

简介:

距离上一次更新文章已经过去一段时间了,小编在这段时间因为一些琐事,加上身体生病不能及时更新文章,今天身体逐渐恢复就急忙来更新文章,今天思梦给大家带来的就是如何自动化监控我们的服务器一些基本的配置来保证我们应用能更好的运行以及做好性能瓶颈的预测!

今天主要内容包含,Linux的基础Shell编程的流程控制语句、cut的使用、grep的使用、以及awk的使用就可以实现我们所说的事情了!

以下所讲命令配合不同的参数有不同的用处,思梦给大家讲的都是一些为了实现所说功能的基础使用,小伙伴们如果想更好的使用以下命令可以参考文档去尝试配合不同参数来实验!

1)首先讲一下Shell的流程控制语句if,格式为

if command;then

逻辑处理

else

逻辑处理

fi

以上需要注意的就是if最后的结尾要有一个fi

2)cut的基本使用,它可以用一些规律性的分隔符去获取某一行

for example : a:b 这样一行字符串,我们想获取a,那么我们可以这样写:cut -d ":" -f 1 它的意思为:使用:分割然后获取第一行,-d后面接的就是用什么符号分割,题目上是" ",当然也能是" ;"等等,再后面的-f是我要打印输出的第几列

3)grep这个命令是强大的文本搜索工具,比如我们在一个文本里面想搜

for example:

Linux下自动化监控内存、存储空间!

我们先创建一个simengphp.txt,然后我们想获取一下simengphp这个字符串这行,我们可以这样操作

Linux下自动化监控内存、存储空间!

这样我们就可以获取到了simengphp这行

4)awk这个命令比较复杂,我们直接讲怎么使用,awk '{print $i}' 意思为默认使用空格(不规则的,cut要规则)或者制表符分割,后面配合例子来给大家讲解

好了基本的命令给大家讲完了,我们现在需要做的就是动手去写Shell脚本来去实现我们的功能了

首先第一个我们来写监控内存的脚本,我们还要使用一条命令:free -h

这样我们就看到了第一行内存使用的状况了:那我们想要的是free这列值来进行监控,那么我们就一步一步去获取这行的值

1)先展示出来所有的,然后我们通过管道以此交给下一条命令去处理

Linux下自动化监控内存、存储空间!

2)我们使用grep这个命令获取到我们想要的这样

Linux下自动化监控内存、存储空间!

3)通过awk命令我们获取到第四列然后并打印出来,$后面跟的是我们要打印的那列,print是和awk配合使用的,linux下print是不能单独使用的

Linux下自动化监控内存、存储空间!

4)后面再通过cut这个命令使用M来切分值,就能获取到了我们想要的值了

Linux下自动化监控内存、存储空间!

以上我们只是演示一下怎么获取我们想要的值,后面我们就直接开始写Shell脚本了:

Linux下自动化监控内存、存储空间!

我们运行一下返回的是else里面的值,因为我们刚才看到的是204,正好大于200因此没有报警操作!

Linux下自动化监控内存、存储空间!

那监控内存的功能大家看明白了后面监控硬盘空间的功能也是一样的,我直接给大家上脚本了

Linux下自动化监控内存、存储空间!

以上就是我们通过Shell脚本来实现自动化监控内存和使用硬盘空间的操作,然后我们通过定时任务去执行相应的脚本就可以了

脚本很粗糙,还有一些需要改进的地方,希望小伙伴们研究明白之后可以去优化一下然后去监控你们的服务器吧!

目录
相关文章
|
13天前
|
算法 安全 Linux
探索Linux内核的虚拟内存管理
【5月更文挑战第20天】 在本文中,我们将深入探讨Linux操作系统的核心组成部分之一——虚拟内存管理。通过剖析其关键组件和运作机制,揭示虚拟内存如何提供高效的内存抽象,支持庞大的地址空间,以及实现内存保护和共享。文章将重点讨论分页机制、虚拟内存区域(VMAs)的管理、页面置换算法,并简要分析这些技术是如何支撑起现代操作系统复杂而多变的内存需求的。
|
2天前
|
运维 Prometheus 监控
运维之眼:监控与自动化的融合艺术
【5月更文挑战第31天】随着信息技术的不断演进,运维领域正经历着一场静悄悄的革命。本文将探讨监控与自动化技术如何交织在一起,提升系统的可观测性和智能化水平,从而为现代企业带来更高效、稳定的IT环境。我们将深入分析监控数据的收集、处理和应用流程,以及自动化在故障预防、问题解决和系统优化中的关键作用。通过案例分析和最佳实践分享,本文旨在为运维专业人士提供一套实用的方法论,帮助他们构建更加智能和弹性的运维体系。
|
3天前
|
机器学习/深度学习 人工智能 运维
现代化运维管理系统下的自动化监控与故障排查
传统的运维管理方式已经无法适应日益复杂的信息技术环境,现代化运维管理系统的出现为企业提供了新的解决方案。本文将探讨在现代化运维管理系统下,自动化监控和故障排查的重要性,以及如何利用先进的技术手段提高效率,降低风险。
9 0
|
4天前
|
缓存 算法 安全
探索Linux内核的虚拟内存管理
【5月更文挑战第29天】 在现代操作系统中,虚拟内存是支持多任务处理和内存保护的关键组件。本文深入分析了Linux操作系统中的虚拟内存管理机制,包括其地址空间布局、分页系统以及内存分配策略。我们将探讨虚拟内存如何允许多个进程独立地访问它们自己的地址空间,同时由操作系统管理物理内存资源。此外,文章还将涉及虚拟内存所带来的性能影响及其优化方法。
|
6天前
|
运维 监控 Linux
提升系统稳定性:Linux服务器性能监控与故障排查实践深入理解与实践:持续集成在软件测试中的应用
【5月更文挑战第27天】在互联网服务日益增长的今天,保障Linux服务器的性能和稳定性对于企业运维至关重要。本文将详细探讨Linux服务器性能监控的工具选择、故障排查流程以及优化策略,旨在帮助运维人员快速定位问题并提升系统的整体运行效率。通过实际案例分析,我们将展示如何利用系统资源监控、日志分析和性能调优等手段,有效预防和解决服务器性能瓶颈。
|
11天前
|
消息中间件 存储 安全
【Linux 系统】进程间通信(共享内存、消息队列、信号量)(下)
【Linux 系统】进程间通信(共享内存、消息队列、信号量)(下)
|
11天前
|
消息中间件 算法 Linux
【Linux 系统】进程间通信(共享内存、消息队列、信号量)(上)
【Linux 系统】进程间通信(共享内存、消息队列、信号量)(上)
|
12天前
|
IDE Linux 测试技术
Linux项目自动化构建工具-make/Makefile
Linux项目自动化构建工具-make/Makefile
|
17天前
|
监控 Java 网络性能优化
容器内存可观测性新视角:WorkingSet 与 PageCache 监控
本文介绍了 Kubernetes 中的容器工作内存(WorkingSet)概念,它用于表示容器内存的实时使用量,尤其是活跃内存。
55971 11
容器内存可观测性新视角:WorkingSet 与 PageCache 监控
|
18天前
|
存储 Linux 程序员
【操作系统原理】—— Linux内存管理
【操作系统原理】—— Linux内存管理