1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > Linux下系统如何监控服务器硬件 操作系统 应用服务和业务

Linux下系统如何监控服务器硬件 操作系统 应用服务和业务

时间:2022-04-18 02:13:08

相关推荐

Linux下系统如何监控服务器硬件 操作系统 应用服务和业务

1.Linux监控概述

Linux服务器要保证系统的高可用性,需要实时了解到服务器的硬件、操作系统、应用服务等的运行状况,各项性能指标是否正常,需要使用各种LINUX命令。做到自动化运维就需要,将上述各项监控指标在同一个软件中展显出来,图形化监控,消息报警机制,日志检看,资产管理等等

2.Linux监控的对象

2.1 硬件监控

(1)服务器:如电源,风扇,磁盘,CPU等,可以使用IPMI监控,在LINUX下安装IPMITOOL

不同的服务器厂商都在服务器上配有远程控制卡BMC: 如DELL(iDRAC) ,IBM (IMM) ,HP(ILO)

LINUX下只需安装:#yum install -y OpenIPMI ipmitool 这二个工具就可以

IPMI命令可以在服务器本地运行,也可以通过网络远程调用,IPMI在服务器上可以配置单独的IP地址和访问密码

(2)网络设备:交换机,防火墙,路由器等,使用SNMP进行监控

在被监控的设备上开启SNMP代理,到时可以通过工具进行获取数据,如ZABBIX

1.LINUX上安装

#yum list |grep snmp

#yum install -y net-snmp net-snmp-utils

安装好后要配置snmpd.conf文件

rocommunity snmptest 172.16.20.89 #172.16.20.89表示仅这IP地址才可以来访问snmp信息

#systemctl start snmpd 启动SNMP ,netstat -nulp ,netstat -ntlp 查看snmp启来的端口udp=161 ,TCP=199

#关于SNMP trap和OID,参见:/openbox/article/details/79958092

通过SNMP命令可以获取监控信息:

#snmpget -v2c -c snmptest 172.16.20.89 1.3.6.1.2.1.1.3.0 #1.3.6.1.2.1.1.3.0为OID

2.交换机上开启

snmp-server community public ro

(3)定期机房巡检,查看设备运行情况

2.2 操作系统监控

安装sysstat工具,包括了iostat、vmstat、sar、mpstat、nfsiostat、pidstat (yum install -y sysstat #rpm -ql sysstat)

(1)CPU (CPU调度上下文切换 ,运行队列 负载,CPU使用率)

确定服务类型:IO密集型(如:数据库),CPU密集型(如:WEB)

1.cpu利用率内核态: 30%和用户态:70%

2.cpu运行队列:1~3线程 1CPU=4核 队列不超过12个

3.上下文切换:尽量少,结合cpu利用率

4.#top命令 (显示CPU和内存信息,M按内存使用率排序,P按CPU使用率排序,Q退出)

CPU百分比各项指标: us:用户态 sy:内核态 ni:进程间优先级更换 id:空闲 wa:IO等待 hi:硬中断 si:软件中 st:虚拟

5.CPU监控的各种命令:top ,vmstat , mpstat,uptime ,ps cpu进程情况,pstree以树形结构显示进程之间的关系

(2)内存

1. free -m :显示内存信息

2.vmstat :来监控虚拟内存 #vmstat 1 10 每隔1秒共10次获取监控信息

(3)磁盘

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

2.iotop:需要yum另外安装,yum install -y iotop

(4)网络

0.ping:测试网络

stat: -ntlp 、-nulp、-na 等显示了网络相关的信息

2.iftop -n:显示网络信息的类似top的程序. #yum install -y iftop

3.tcpdump:网络监控工具,用来做基本的协议分析,看看那些进程在使用网络以及如何使用网络

4.Wireshark:windows网络抓工具

(5)整体性能(CPU和内存、磁盘)

1.top:实时显示CPU和内存、磁盘信息

2.mpstat:实时系统监控工具,多CPUs系统里,其不但能查看所有CPU的平均状况信息

3.vmstat :来监控虚拟内存 #vmstat 1 10 每隔1秒共10次获取监控信息

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

(6)nmon:性能报表,IBM开源工具,二进制直接下载使用,配合EXECL表可以图形分析

1.nmon下载:/pmwiki.php

2.nmon analyser下载:/projects/jnmonanalyser/

3.nmon analyser—生成 AIX 性能报告参见:

/developerworks/cn/aix/library/nmon_analyser/

2.3 应用服务监控

(1)Ngin监控

首先安装nginx编译相关 :#yum install -y gcc glibc gcc-c++ pcre-devel opensshl-level

下载nginx源码安装,编译时加上监控参数:

#./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-http_ssl_module

#make && make install

#测试启动:#/usr/local/nginx/sbin/nginx -t 配置文件没有问题就可以启动了

配置nginx.conf文件,增加在server段内

location /nginx_status {

stub_status on;

access_log off;

allow 192.168.2.0/24;

deny all;

}

打开浏览器访问:192.168.2.1/nginx-status

2.4 生产业务监控

3.使用SHELL脚本监控

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

(1)性能监控脚本 performance.sh

(2) 进程监控脚本 process.sh

#!/bin/bash

(3) 流量监控脚本 network.sh

(4) 流量分析统计脚本 tongji.sh

4.使用Zabbix监控

Zabbix将以上监控都集中在一起,可以实时数据,图形展显,详见Zabbix监控

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。