单机监控命令

单机监控命令

单机监控命令 1

1. 监控知识 2

2. 单机监控 6

监控知识

为什么要使用监控

实时

对系统不间断实时监控

反馈

实时反馈系统当前状态

可靠

保证服务可靠性安全性

稳定

保证业务持续稳定运行

如何进行监控

先举个小例子

磁盘df -h

 

单机监控命令

内存 free -h|m

 

单机监控命令

这四个值相加为内存总大小

磁盘 iostat(下载sysstat.x86_64)

 

单机监控命令

一般情况下各项指标在百分之60-70属于正常状态,超过80%进行报警

监控思想:

发现问题:当系统发生故障报警,我们会收到报警的信息

定位问题:故障邮件一般都会写某某主机故障、具体故障的内容,我们需要对报警聂荣进行分析,比如一台服务器连不上,我么就需要考虑是网络问题,还是负载太高导致长时间无法连接,又或者某开发触发了防火墙禁止的相关策略等等

解决问题:通过解决的优先级去解决该故障

总结问题:当我们解决完重大故障后,需要对故障原因以及防范进行总结归纳

流行的监控工具

cacti:基于网络流量监控,图形界面

nagios:基于主机监控(绿黄橙红)

zabbix:是一个分布式监控系统,支持多种采集方式和采集客户端,有专用的agent代理,也支持SNMP、IPMI、Telnet ssh等多种协议,将采集到的数据存放到数据库,然后对其进行分析整理,达到条件触发告警。其灵活的扩展性和丰富的功能是其他监控系统所不能比的,相对来说,很牛逼

小米监控open-faicon:

lepus天兔:数据库监控

prometheus普罗米修斯:容器监控

监控内容:

系统监控:CPU、内存、磁盘、网络、进程、TCP

硬件监控:路由器、交换机、防火墙

服务监控:nginx php tomcat redis memcache mysql

web监控:请求时间、响应时间、加载时间

日志监控 ELK(手机、存储、分析、展示)日志易

Elasticsearch:基于json将日志整理成统一格式

Logstash:集中转换存储

Kibana:实现数据可视化,运维人员可以通过Kibana分析日志信息

安全监控 firewalld WAF(Nginx+lua)安全宝、牛盾云、安全狗

网络监控 smokeping 多机房

业务监控 活动引入多少流量、产生多少注册量、带来多大价值

监控流程

数据采集:zabbix通过SNMP、Agent、ICMP、SSH、IPMI等对系统进行数据采集

数据存储:zabbix存储在MySQL上,也可以存储在其他数据库服务

数据分析:当我们时候需要复盘分析故障时,zabbix能够给我们提供图形以及时间等相关信息,方便我们确定故障所在

数据展示:web界面展示

监控报警:电话报警、邮件报警、微信报警、短信报警、报警升级机制等(无论什么报警都可以)

报警处理:当收到报警,我们需要根据故障的级别进行处理,比如:重要紧急、重要不紧急,根据故障级别,配合相关的人员进行快速处理

单机监控

监控命令:

cpu监控命令

uptime

vmstat

w

 
单机监控命令

top

 
单机监控命令
检测cpu内存和交换分区进程
us:用户态,跟用户操作有关
sy:系统态,和内核处理有关
id:CPU空闲

htop

 
单机监控命令
检测进程

glances

同时监控cpu内存网络和磁盘读写(最全)
 
单机监控命令
测网速拖个文件进来就好
 
单机监控命令

sar

内存监控命令

free

 
单机监控命令

磁盘监控命令

df

磁盘挂载情况、使用情况
 
单机监控命令

iotop

 
单机监控命令
检测磁盘IO
检测磁盘写

dd if=/dev/zero of=/tmp/test bs=100M count=100

检测磁盘读

cat /tmp/test

磁盘 iostat(下载sysstat.x86_64)

 
单机监控命令

网络监控命令

ifconfig

 
单机监控命令
网卡和本地回环

route

 
单机监控命令

glances

iftop

nethogs

 
单机监控命令

netstat

使用shell脚本实现服务器的监控

要求:每隔1分钟监控一次内存,当你的可用内存低于100m,发邮件报警,要求显示剩余内存

思路:

获取内存可用的值

获取到的内存可用的值如何设定阈值进行比较

比较如果大于100m则不处理,如果小于100m则报警

如何每隔1分钟执行一次

操作:

可用和剩余:

 
单机监控命令
总体减去剩余等于可用的

获取可用内存

 
单机监控命令

vim check_mem.sh

测试:

dd if=/dev/zero of=/tmp/test bs=1500M count=10
bs比available大一些即可
 
单机监控命令
 
单机监控命令

脚本优化

#!/bin/bash
Avai_mem=$(free -m | awk '/^Mem/{print $NF}')
IP=$(hostname -I | awk '{print $1}')
Host=$(hostname)
while :;do
        Avai_mem=$(free -m | awk '/^Mem/{print $NF}')
        Date=$(date +%F-%R)
        if [ $avai_mem -lt 100 ];then
                echo "报警!${Date}_${Host}_${IP}内存不足!可用内存为$avai_mem"
        else
                echo "正常"
        fi  
        sleep 1
done
 
单机监控命令

发布者:LJH,转发请注明出处:https://www.ljh.cool/36137.html

(0)
上一篇 2023年4月20日 上午2:17
下一篇 2023年4月20日 上午2:36

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注