zoukankan      html  css  js  c++  java
  • 1 监控概述

    0、监控概述

    监控
    《架构师必备之运维监控》赵班长
    
    概述:(四海八荒都要会的)
    
    初级(凡人)
        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、硬件监控 

    1.机房巡检
    
    2.通过网络来巡检
    (四种手册) DELL iDRAC HP ILO IBM IMM IPMI 一种标准
    --------------
    SNMP 简单网络管理协议

    1.IPMI

    https://www.ibm.com/developerworks/cn/linux/l-ipmi/

    IPMI是一种标准

    本文选择的是 Linux 下的命令行方式的 ipmi 平台管理工具ipmitool

    [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 功能的系统模块

    2.SNMP

    简单网络管理协议
    https://blog.csdn.net/shanzhizi/article/details/11606767

    Snmp的好处。不用装agent

    数据采集

    (1)安装配置

    // 安装

      [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
    View Code
    // 结果
    [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

    2、系统监控

    1、cpu

    1、进程

    http://www.ruanyifeng.com/blog/2013/04/processes_and_threads.html
    https://www.liaoxuefeng.com/wiki/1016959663602400/1017627212385376

    每一个进程,至少有一个线程。
    每个进程至少有1个线程

    2、用户态与内核态

    上下文切换

    https://blog.csdn.net/simongeek/article/details/78195058

     

    3、负载,任务队列

    负载:单位时间内运行队列中就绪等待的进程数平均值
    https://blog.csdn.net/zwldx/article/details/82812704

     4、监控命令

    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

    2、内存

     虚拟内存,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

    3、io

    [root@linux-node1 ~]# iotop

     

    3、网络监控

    1、流量监控工具

    [root@linux-node1 ~]# yum install iftop -y
    [root@linux-node1 ~]# iftop -i ens33 -F 192.168.194.132
    [root@linux-node1 ~]# iftop -P

    2、每个进程的网络流量

    [root@linux-node1 ~]# nethogs

    3、tcp状况

    [root@linux-node1 ~]# netstat 
    [root@linux-node1 ~]# netstat -nlp

    4、nmon监控 单机版的, 实时报表,压力测试

    http://nmon.sourceforge.net/pmwiki.php

    5、ping测试

    http://ping.chinaz.com/www.unixhot.com

    6、SmokePing网络监控

    https://oss.oetiker.ch/smokeping/doc/index.en.html

     

    4、作业

    作业
    1.理解zabbix默认linux模板所有item的意思
    2.部署smokping

     

     

     

  • 相关阅读:
    第 5 章 Nova
    第 5 章 Nova
    第 5 章 Nova
    第 5 章 Nova
    第 5 章 Nova
    第 5 章 Nova
    第 5 章 Nova
    vba:提取字符串中间字符
    vba:根据给定单元格搜索目标值
    vba:合并当前目录下所有工作簿的全部工作表
  • 原文地址:https://www.cnblogs.com/venicid/p/11329650.html
Copyright © 2011-2022 走看看