监控 《架构师必备之运维监控》赵班长 概述:(四海八荒都要会的) 初级(凡人) 1.识别监控对象 (分级) 2.理解监控对象 (理论知识-马步) 3.细分监控对象的指标 4.肯定告警的基准线 预中级(费县)(预生产) 1.工具化和监控分离 2.监控对象的分类 2.1 硬件监控 (方法:机房巡检、IPMI、SNMP) 2.2 系统监控 (对象:CPU、内存、IO【磁盘、网络】) 2.3 服务监控 (对象:各种服务[Nginx|Tomcat|RabbitMQ|OpenStack|MySQL|*]) 2.4 日志监控 (方法:Elastic Stack) 2.5 网络监控 (方法:第三方、Smokeping) 2.6 APM应用性能管理: (工具:PINPoint) 听云 监控宝 PINPoint https://github.com/naver/pinpoint 2.7 流量监控 (工具:Piwik、XX统计、XX分析) 2.8 其余监控 (APP监控、安全监控、业务监控、舆论监控、XX监控等等) 3.掌握一个监控工具。例如zabbix 中级(渡劫)(不要轻易说本身是高级) 0.标准化监控 (标准化的脚本、模板、....) 1.分布式监控 (主动,被动,分布式) 2.自动化监控 (自动发现,主动注册(Agent主动注册,Server主动添加(API))、) 3.性能优化 (数据采集、数据存储、数据查询) 4.二次开发 (定制报表、API调用、XXX) 进阶(上身)(从精通到放弃): (某一领域,已经达到专业) 1.动态告警 (方差,标准差) 2.智能告警:1.告警去重 2.依赖 3.故障自愈 (两种体系:事件驱动、主动控制) 4.大规模
1.机房巡检 2.经过网络来巡检
(四种手册) DELL iDRAC HP ILO IBM IMM IPMI 一种标准
--------------
SNMP 简单网络管理协议
https://www.ibm.com/developerworks/cn/linux/l-ipmi/php
IPMI是一种标准html
本文选择的是 Linux 下的命令行方式的 ipmi 平台管理工具ipmitool。node
[root@linux-node1 ~]# yum install OpenIPMI ipmitool [root@linux-node1 ~]# ipmitool -I open sensor get "Processor 1 Temp" Could not open device at /dev/ipmi0 or /dev/ipmi/0 or /dev/ipmidev/0: No such file or directory //须要载入支持 ipmi 功能的系统模块
简单网络管理协议
https://blog.csdn.net/shanzhizi/article/details/11606767linux
Snmp的好处。不用装agentgit
数据采集github
(1)安装配置vim
// 安装
[root@linux-node1 ~]# yum install net-snmp-utils -y安全
[root@linux-node1 ~]# yum install -y net-snmp net-snmp-libs // 配置文件 [root@linux-node1 ~]# vim /etc/snmp/snmpd.conf
[root@linux-node1 ~]# vim /etc/snmp/snmpd.conf //团体名称 # First, map the community name "public" into a "security name" # sec.name source community # com2sec notConfigUser default public com2sec admin default admin ///Group # Second, map the security name into a group name: # groupName securityModel securityName # group notConfigGroup v1 notConfigUser group admin v2c admin //Admin的权限 # Third, create a view for us to let the group have rights to: # Make at least snmpwalk -v 1 localhost -c public system fast again. # name incl/excl subtree mask(optional) # view systemview included .1.3.6.1.2.1.1 # view systemview included .1.3.6.1.2.1.25.1.1 view admin included .1 80 //权限控制 # Finally, grant the group read-only access to the systemview view. # group context sec.model sec.level prefix read write notif # access notConfigGroup "" any noauth exact systemview none none access admin "" any noauth exact admin admin none [root@linux-node1 ~]# systemctl restart snmpd [root@linux-node1 ~]# netstat -nulp
// 结果 [root@linux-node1 ~]# netstat -nulp Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name udp 0 0 0.0.0.0:68 0.0.0.0:* 11022/dhclient udp 0 0 0.0.0.0:161 0.0.0.0:* 59972/snmpd udp 0 0 127.0.0.1:323 0.0.0.0:* 3297/chronyd udp6 0 0 ::1:323 :::* 3297/chronyd
(2)Snmpget性能优化
https://blog.csdn.net/apple_llb/article/details/50494787网络
1分钟的负载
[root@linux-node1 ~]# snmpget -v2c -c admin 192.168.194.131 .1.3.6.1.4.1.2021.10.1.3.1 UCD-SNMP-MIB::laLoad.1 = STRING: 0.32
cpu
[root@linux-node1 ~]# snmpget -v2c -c admin 192.168.194.131 .1.3.6.1.4.1.2021.11.9.0 UCD-SNMP-MIB::ssCpuUser.0 = INTEGER: 0
内存使用
[root@linux-node1 ~]# snmpget -v2c -c admin 192.168.194.131 .1.3.6.1.4.1.2021.4.3.0 UCD-SNMP-MIB::memTotalSwap.0 = INTEGER: 2097148 kB
一、进程
http://www.ruanyifeng.com/blog/2013/04/processes_and_threads.html
https://www.liaoxuefeng.com/wiki/1016959663602400/1017627212385376
每个进程,至少有一个线程。
每一个进程至少有1个线程
二、用户态与内核态
上下文切换
https://blog.csdn.net/simongeek/article/details/78195058
三、负载,任务队列
负载:单位时间内运行队列中就绪等待的进程数平均值
https://blog.csdn.net/zwldx/article/details/82812704
四、监控命令
https://www.cnblogs.com/zafu/p/7921942.html
[root@linux-node1 ~]# top M 按内存排序 P 按cpu排序 1 显示全部cpu
sysstat 不少监控命令
vmstat—报告虚拟内存统计数据 [root@linux-node1 ~]# vmstat 1 10 mpstat—报告虚拟CPU统计数据 [root@linux-node1 ~]# mpstat 1 10 lscpu-查看cpu信息 [root@linux-node1 ~]# lscpu 查看负载 [root@linux-node1 ~]# uptime 01:43:25 up 1 day, 1:02, 2 users, load average: 0.00, 0.02, 0.05 [root@linux-node1 ~]# cat /proc/loadavg 0.00 0.02 0.05 1/369 106024
虚拟内存,SWAP,物理内存
[root@linux-node1 ~]# cat /proc/meminfo [root@linux-node1 ~]# free -m [root@linux-node1 ~]# cat /proc/sys/vm/swappiness [root@linux-node1 ~]# vmstat 1
[root@linux-node1 ~]# iotop
[root@linux-node1 ~]# yum install iftop -y [root@linux-node1 ~]# iftop -i ens33 -F 192.168.194.132 [root@linux-node1 ~]# iftop -P
[root@linux-node1 ~]# nethogs
[root@linux-node1 ~]# netstat
[root@linux-node1 ~]# netstat -nlp
http://nmon.sourceforge.net/pmwiki.php
http://ping.chinaz.com/www.unixhot.com
https://oss.oetiker.ch/smokeping/doc/index.en.html
做业 1.理解zabbix默认linux模板全部item的意思 2.部署smokping