搜索
首页运维linux运维Linux服务器监控的实例详解

1. 监控概要

      Linux服务器要保证高可用性,就要对其进行有效的监控,实时了解到服务器的运行状况,各项性能指标是否正常,以防患以未然,进行运维日志的记录,图形化的监控,出现问题的消息报警机制,都是保证Linux服务器能正常对外提供服务的先决条件。

2. 监控的内容

        监控,是预防的其中的一项重要工作。这里先说说我需要监控的内容。系统负载、cpu使用率、内存占用、磁盘空间、网络流量、端口、进程、apache或tomcat的连接数、mysql的运行状态这些都是需要监控的东西。要了解服务器每时每刻的整体运行状态,单靠几个Linux自带的性能监测命令是很难实现的。所以,利用shell脚本和开源监控工具进行服务器监控成为两个主要的选择。

3.监控的方法

  首先是要明白Linux服务器监控的一些常见命令,以及这些命令编写的监控脚本,最后,一些成熟的开源监控工具也是必要的。

  3.1 常见监控命令


      1) 【iostat】:iostat命令用来显示存储子系统的详细信息,通常用它来监控磁盘 I/O 的情况。

      2)【meminfo 和 free】: cat /proc/meminfo  free

      3)【mpstat】:实时系统监控工具,多CPUs系统里,其不但能查看所有CPU的平均状况信息,而且能够查看特定CPU的信息

      4)【netstat】:显示了大量跟网络相关的信息

      5)【nmon】:开源工具,用以监控 Linux 系统的性能,下载及安装

      6)【pmap】:pmap 命令用来报告每个进程占用内存的详细情况,可用来看是否有进程超支了,该命令需要进程 id 作为参数。

      7)【ps pstree】:ps 告诉你每个进程占用的内存和 CPU 处理时间,而 pstree以树形结构显示进程之间的依赖关系,包括子进程信息

      8)【sar】:sar 可用来显示 CPU 使用率、内存页数据、网络 I/O 和传输统计、进程创建活动和磁盘设备的活动详情。

      9)【strace】:诊断进程工具,如 strace ls ,但是被诊断进程会变慢

     10)【tcpdump】网络监控工具,用来做基本的协议分析,看看那些进程在使用网络以及如何使用网络。

     11)【uptime】:该命令告诉你这台服务器从开机启动到现在已经运行了多长时间了

     12)【 vmstat 】来监控虚拟内存

     13)【Wireshark】:是一个网络协议检测程序,让您经由程序抓取运行的网站的相关资讯

     14)【dstat】 多类型资源统计工具:该命令整合了vmstat,iostat和ifstat三种命令

     15)【htop】: 更加友好的top,两者区别见:“关于htop和top的比较”

     16)【ss】: 用来记录套接字统计信息,它可以显示类似netstat一样的信息,同时也能显示更多TCP和状态信息

     17)【lsof】 : 列表显示打开的文件

     18)【iftop】是另一个基于网络信息的类似top的程序。它能够显示当前时刻按照带宽使用量或者上传或者下载量排序的网络连接状况

3.2 shell监控脚本


      这里提供 四个脚本(performance.sh 性能监控,process.sh 进程监控,network.sh 流量监控,tongji.sh流量分析统计),并使用crontab定时执行脚本进行监控数据的记录,形成每天的监控日志放在如下相应的文件夹,并且超过自己设定的告警值后发邮件通知,那些有免费短信通知功能的邮箱如腾讯企业邮箱,163邮箱可以尝试一下,收到邮件告警后很快就能收到短信了,很方便。

  3.2.1 性能监控脚本 performance.sh

     代码GitHub地址:

     代码截图如下,有四个

 


性能监控脚本01-监控cpu负载
 
 

性能监控脚本02-监控cpu使用率
 
 

性能监控脚本03-监控交换分区
 
 

性能监控脚本04-监控磁盘空间

 

3.2.2 进程监控脚本 process.sh

代码GitHub地址:

代码截图如下


进程监控脚本process.sh

 

3.2.3 流量监控脚本 network.sh

代码GitHub地址:

代码截图如下:

 


流量监控脚本 network.sh

3.2.4 流量分析统计脚本 tongji.sh

代码GitHub地址:

代码截图如下:

 


流量分析统计脚本 tongji.sh

3.3 监控工具


3.3.1) Cacti+Nagios

     【Cacti】:Cacti是一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具。

     【Nagios】: Nagios是一个监视系统运行状态和网络信息的监视系统。能监视所指定的本地或远程主机以及服务,同时提供异常通知功能等

3.3.2)Zabbix

    【Zabbix】: Zabbix除了能监视各种网络参数,保证服务器系统的安全运营之外,还能提供如短信、邮件、jabber等通知机制以让系统管理员快速定位/解决存在的各种问题。基本上能实现cacti+nagios的功能

以上是Linux服务器监控的实例详解的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
Debian回收旧版本的方法Debian回收旧版本的方法Apr 13, 2025 am 09:12 AM

本文介绍如何有效清理Debian系统中的旧版本软件和内核,释放磁盘空间并提高系统性能。操作前请务必备份重要数据。一、清除无用软件包使用apt命令行工具可以轻松删除不再需要的软件包及其依赖项:打开终端。执行sudoapt-getautoremove命令自动删除已安装软件包的冗余依赖项。使用sudoapt-getpurge命令删除指定软件包及其配置文件。例如,删除firefox及其配置文件,执行sudoapt-getpurgefirefox。

如何利用Nginx日志提升网站速度如何利用Nginx日志提升网站速度Apr 13, 2025 am 09:09 AM

网站性能优化离不开对访问日志的深入分析。Nginx日志记录了用户访问网站的详细信息,巧妙利用这些数据,可以有效提升网站速度。本文将介绍几种基于Nginx日志的网站性能优化方法。一、用户行为分析与优化通过分析Nginx日志,我们可以深入了解用户行为,并据此进行针对性优化:高频访问IP识别:找出访问频率最高的IP地址,针对这些IP地址优化服务器资源配置,例如增加带宽或提升特定内容的响应速度。状态码分析:分析不同HTTP状态码(例如404错误)出现的频率,找出网站导航或内容管理中的问题,并进

debian readdir如何实现文件排序debian readdir如何实现文件排序Apr 13, 2025 am 09:06 AM

在Debian系统中,readdir函数用于读取目录内容,但其返回的顺序并非预先定义的。要对目录中的文件进行排序,需要先读取所有文件,再利用qsort函数进行排序。以下代码演示了如何在Debian系统中使用readdir和qsort对目录文件进行排序:#include#include#include#include//自定义比较函数,用于qsortintcompare(constvoid*a,constvoid*b){returnstrcmp(*(

debian readdir如何支持远程文件系统debian readdir如何支持远程文件系统Apr 13, 2025 am 09:03 AM

在Debian系统中,readdir函数用于读取目录内容。要使其支持远程文件系统,需确保远程文件系统已正确挂载到本地。以下步骤详细说明如何实现:一、选择合适的协议:选择合适的远程文件系统协议至关重要,例如NFS、Samba、FTP、SSHFS等。不同协议的配置方法差异较大。二、安装必要软件包:根据所选协议,安装相应的软件包。例如,NFS需要nfs-common或nfs-kernel-server;Samba需要samba;SSHFS需要fuse和sshfs。使用apt-getinst

debian readdir的兼容性如何debian readdir的兼容性如何Apr 13, 2025 am 09:00 AM

readdir函数是Linux系统中用于读取目录内容的标准工具,在Debian及大多数Linux发行版中均可用。作为稳定且广泛使用的发行版,Debian的readdir函数通常具有良好的兼容性,能与标准C库(例如glibc)及其他Linux工具无缝集成。Debian的更新日志和安全公告中鲜有提及readdir函数的兼容性问题。例如,Debian12.10的更新主要集中在安全性和稳定性改进,这些更新一般不会影响readdir等核心系统工具的兼容性。如果您在

Debian下Tomcat日志配置在哪Debian下Tomcat日志配置在哪Apr 13, 2025 am 08:57 AM

本文介绍如何在Debian系统中配置Tomcat日志。Tomcat日志配置文件通常位于/path/to/tomcat/conf/logging.properties。通过修改此文件,您可以自定义日志级别、格式和输出位置。日志文件存放位置Tomcat日志文件默认存储在$CATALINA_BASE/logs目录下。$CATALINA_BASE指的是Tomcat的安装根目录,如果未指定,则与$CATALINA_HOME(Tomcat安装目录)相同。常用Linux命令查看Tomcat日志以下是一些常

Debian如何清理回收站文件Debian如何清理回收站文件Apr 13, 2025 am 08:54 AM

本文介绍三种在Debian系统中清空回收站的方法,选择最适合您的方式即可。方法一:图形界面(GUI)对于使用图形界面的Debian用户(例如GNOME或KDE),清理回收站非常简单:打开文件管理器:点击桌面上的文件管理器图标(通常是一个文件夹),或使用快捷键Ctrl E。找到回收站:在文件管理器中找到并点击“回收站”或“垃圾桶”图标。清空回收站:在回收站窗口中,点击“清空回收站”或类似的按钮,确认操作即可。方法二:命令行界面(CLI)如果您更熟悉命令行,可以使用终端进行

Debian如何回收不再使用的包Debian如何回收不再使用的包Apr 13, 2025 am 08:51 AM

本文介绍如何在Debian系统中清理无用软件包,释放磁盘空间。第一步:更新软件包列表确保你的软件包列表是最新的:sudoaptupdate第二步:查看已安装的软件包使用以下命令查看所有已安装的软件包:dpkg--get-selections|grep-vdeinstall第三步:识别冗余软件包利用aptitude工具查找不再需要的软件包。aptitude会提供建议,帮助你安全地删除软件包:sudoaptitudesearch'~pimportant'此命令列出标记

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
4 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

mPDF

mPDF

mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

SecLists

SecLists

SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

EditPlus 中文破解版

EditPlus 中文破解版

体积小,语法高亮,不支持代码提示功能

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

Dreamweaver Mac版

Dreamweaver Mac版

视觉化网页开发工具