zoukankan      html  css  js  c++  java
  • 自动化---zabbbix监控

    《架构师之运维监控》

    PS:监控是什么,运维喝茶之道。

    (凡人)

    1.识别监控对象(分级)

    2.理解监控对象(理论知识)

    3.细分监控对象的指标

    4.确定告警的基准线

    预中级(筑基)

    1.工具化和监控分离

    2.监控对象的分类:

    2.1硬件监控(方法:机房巡检,IPMI,SNMP)   https://www.ibm.com/developerworks/cn/linux/l-ipmi/index.html      # yum install OpenIPMI ipmitool  -y    systemctl start ipmi

    2.2系统监控(对象:CPU,内存,IO(磁盘,网络)

    2.3服务监控(对象:各类服务(nginx|tomcat|RabbitMQ|mysql..)

    2.4日志监控(方法:Elastic Stack)

    2.5网络监控(方法:第三方,smokeping)

    2.6APM应用性能管理(工具:PINpoint)

    2.7流量监控(工具:piwik,XX统计,XX分析)

    2.8其他监控(APP监控,安全监控,业务监控,舆论监控,等等)

    3.掌握一个监控工具,例如zabbix

    中级(元婴)

    1.标准化监控(标准化的脚本,模板)

    2.分布式监控(主动,被动,分布式)

    3.性能优化(数据采集,数据存储,数据查询)

    4.二次开发(定制报表,API调用,XXX)

    进阶(渡劫  从精通到放弃)

    1.告警阈值动态化

    2.智能告警:1告警去重 2.依赖

    3.故障自愈(事件驱动,主动控住)

    4.大规模

    #####################通过硬件来监控

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

    # yum install OpenIPMI ipmitool  -y   

    #systemctl start ipmi

    ###############通过snmp监控

    root@cobbler ~]# yum install -y net-snmp net-snmp-libs -y

    [root@cobbler ~]# vim /etc/snmp/snmpd.conf

     41 com2sec admin  default       admin                             #####                   配置的用户      团体名称

     48 group   admin v2c           admin                                   #####     定义组 把用户放入组里   第一个admin是用户   v2c是协议    第二个admin是组

     57 view    admin    included   .1 80                          ####    赋予权限因为是树结构 .1是所有权限

     64 access  admin ""      any       noauth    exact  admin admin none        ####用户组admin       ##不需要验证    ####admin用户

    [root@cobbler ~]# systemctl start snmpd                                                 ######开启服务 [root@cobbler ~]# ss -ln |grep 161 udp    UNCONN     0      0         *:161                   *:*                              #####snmp 默认是UDP协议,161端口

    [root@cobbler ~]# snmpget -v2c -c admin 192.168.1.102 .1.3.6.1.4.1.2021.10.1.3.1     ###检测CPU

     https://blog.csdn.net/apple_llb/article/details/50494787     #####具体一些监控项看这个网页内容

       

    ########系统监控

    CPU :

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

                 每个进程可以有多个线程

       负载:单位时间内运行队列中就绪等待的进程

    内存:

        虚拟内存,swap,物理内存

         内存页

    IO     需要yum安装

       iotop

       iftop

       nethogs

    zabbix部署

    1.时间同步

    [root@cobbler ~]# yum install -y ntpdate

    [root@cobbler ~]# echo '* * * * * /usr/sbin/ntpdate ntp1.aliyun.com &>/dev/null' >> /var/spool/cron/root

    [root@cobbler ~]# rpm -ivh http://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm   ###下载安装包

     [root@cobbler yum.repos.d]# yum install -y http://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm             ####将zabbix加入yum源

    [root@cobbler yum.repos.d]# yum install -y zabbix-server-mysql zabbix-web-mysql    zabbix-agent#########zabbixweb前端程序   zabbix服务端程序

    [root@cobbler yum.repos.d]# yum install -y mariadb-server                                    ###########安装数据库

    [root@cobbler yum.repos.d]# systemctl  enable mariadb.service              ##########开机自启
    [root@cobbler yum.repos.d]# systemctl start mariadb.service                      ##########启动数据库

    [root@cobbler yum.repos.d]# ss -ln|grep 3306                                   #####查看端口

    [root@cobbler yum.repos.d]# mysql_secure_installation     ########初始化设置密码

    [root@cobbler yum.repos.d]#mysql -u root -p   密码 进数据库

    MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;  ### 创建数据库zabbix设置字符集编码utf-8

    MariaDB [(none)]> grant all on zabbix.* to zabbix@'localhost'identified by '123.com'; Query OK, 0 rows affected (0.00 sec)  ############设置用户  以及密码

    MariaDB [(none)]> flush privileges; Query OK, 0 rows affected (0.00 sec)       #####跟新权限

    [root@cobbler yum.repos.d]# zcat /usr/share/doc/zabbix-server-mysql-3.4.8/create.sql.gz|mysql -uzabbix -p123.com zabbix        ########导入数据库 以及zabbix登录

    [root@cobbler yum.repos.d]# vim /etc/httpd/conf/httpd.conf    ####

    ServerName 127.0.0.1:80                     更改95行

    [root@cobbler yum.repos.d]# systemctl enable httpd
    [root@cobbler yum.repos.d]# systemctl start httpd
    [root@cobbler yum.repos.d]# vim /etc/httpd/conf.d/zabbix.conf   ###################更改时区

     19         php_value date.timezone Asia/Shanghai

    [root@node1 ~]# systemctl restart httpd

     浏览器打开  http://192.168.1.102/zabbix/setup.php

     

    因为倒入数据库    zabbix登录的初始密码是Admin  zabbix

    [root@cobbler yum.repos.d]# vim /etc/zabbix/zabbix_server.conf    #########配置zabbixserver密码

    126 DBPassword=123.com

    [root@cobbler yum.repos.d]# systemctl enable zabbix-server.service    #######  开机自启
    [root@cobbler yum.repos.d]# systemctl start zabbix-server.service        #####启动

    ##############如果页面一直zabbix-server报错没启动的话 就得重启服务了,这个鬼无解 看日志还是

     [root@cobbler yum.repos.d]# vim /etc/zabbix/zabbix_agentd.conf    ###### 编辑文件

     97 Server=127.0.0.1                                   ##########指的是谁可以拿到数据 写server主机IP

    138 ServerActive=127.0.0.1                          #################   主动模式下  写的也是服务器主机IP

     [root@cobbler yum.repos.d]# systemctl enable zabbix-agent.service
    [root@cobbler yum.repos.d]# systemctl start zabbix-agent.service

    ##########在配置界面选择configuration-----hosts----create-----添加主机------templates选择模板----创建

    [root@node1 ~]# zabbix_get -s node2 -k agent.ping    #############如果不通可以手动检测

    ############添加自定义的items

    cd  /etc/zabbix/zabbix_agentd.d

     [root@node2 zabbix_agentd.d]# vim monitor_file.conf     自定义模板文件

     UserParameter=monitor_file,stat -c %s /etc/services   ####监控文件大小

    [root@node2 zabbix_agentd.d]# systemctl restart zabbix-agent.service

    开始创建itmes------------configuration-----hosts---itmes---create-itmes

     

    ##########想查看自己添加的是否成功可以---monitoring---latestdata

     ###创建triggers ----configuration---host---triggers--create-

    ###########定义监控级别


    ##############定义监控用什么发

     

     ####定义邮箱地址

     

     #################用什么账号发

     

    3.监控web,mysql三部曲

     


    监控mysql

    [root@node2 ~]# yum install -y mariadb-server

    带密码的监控

     root@node2 ~]# vim /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf

    mysql

    MariaDB [(none)]> grant all on *.* to zabbix@'localhost' identified by '123.com';

    MariaDB [(none)]> flush privileges;

    [root@node2 ~]# systemctl  restart zabbix-agent.service

     


    多个数据监控修改配置文件使用¥化

    [root@node2 ~]# vim /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf

    UserParameter=mysql.status[*],echo "show global status where Variable_name='$3';" | HOME=/var/lib/zabbix mysql -u$1 -p$2 -N | awk '{print $$2}'

    UserParameter=mysql.ping[*],HOME=/var/lib/zabbix mysqladmin -u$1 -p$2 ping | grep -c alive

    [root@node2 ~]# systemctl  restart zabbix-agent.service

    [root@node1 ~]# zabbix_get -s 192.168.1.104 -k mysql.status[zabbix,123.com,Uptime]

     

     

    TCP监控

    root@node2 zabbix_agentd.d]# vim TCP_status.conf

    UserParameter=TCP_status[*],netstat -ant|grep -c $1

    [root@node1 ~]# zabbix_get -s 192.168.1.104 -k TCP_status[TIME_WAIT]


    克隆来依次创建tcp的状态 ##ESTABLISHED
    SYN_SENT
    SYN_RECV
    FIN_WAIT1
    FIN_WAIT2
    TIME_WAIT
    CLOSE
    CLOSE_WAIT
    LAST_ACK
    LISTEN
    CLOSING
    UNKNOWN


    ####监控nginx

  • 相关阅读:
    Codeforces 405E DFS
    Codeforces 433C #248_div1_A 中位数的应用
    UVALive 4487 Exclusive-OR 加权并查集神题
    Codeforces 442A Borya and Hanabi
    人工智能:实现人工智能是是不可能的吗?
    关于kinect开发的网址
    jsp笔记(1)
    关于Kinect音频开发的探究
    windows10添加电源计划修改的快捷方案
    关于 kinect 的开发
  • 原文地址:https://www.cnblogs.com/zhaobin-diray/p/8994333.html
Copyright © 2011-2022 走看看