美文网首页
第七十一天 zabbix

第七十一天 zabbix

作者: 杨小倪 | 来源:发表于2019-11-26 10:26 被阅读0次

    zabbix监控

    1.什么是监控?

    监视,控制
    

    2.为什么要做监控?

    教室: 监控学员的学习状态
    超市: 防偷
    马路: 监控事故,时候追溯
    监控: 本质上是一种行为
    
    系统中为什么要做监控:
    监控是整个运维乃至整个产品生命周期中最重要的一环,事前及时预警发生故障,时候提供详实的数据用于追查定位问题。
    
    目前有很多不错的开源产品可供选择,选择一款开源的监控系统,是一个省时省力,效率最高的方案
    

    3.监控怎么做,比如,要监控内存的使用率,低于百分之二十则报警

    1.提取内存指标
    2.判断比对,与管理人员设定的阈值
    3.大于百分之二十,则忽略
    4.反之,则报警
    

    4.监控有哪些工具来辅助实现

    cacti   用于监控网络设备 交换机 路由器 防火墙 流量为主
    Nagios  用于监控系统,比较复杂,模板较少
    zabbix  2.2 2.4 3.0  用于监控系统 web界面   分布式 报警功能    自带模板 zabbix监控容器会误报,切换为新容器,zabbix会认为容器死掉了
    open-falcon 小米公司开发
    普罗米修斯   容器监控
    

    5.去一家公司,如何着手监控?

    1。硬件监控  (交换机    路由器 防火墙  服务器) 可以使用dell  IRDAC 也可以用ipmi
    2.系统监控  ( cpu   io  内存  磁盘 )
    3.服务监控  (   nginx   php     mysql       tmocat)
    4.日志监控  (   ELK 架构  )
    5.web网站监控   (   请求延迟    响应延迟    加载时间……pv    uv  ip  )
    6.业务监控  (   采集交易额   新增用户量  与开发相配合完成 流量)
    7.分布式监控 多机房监控   proxy
    8.自动化监控 自动的添加主机进行监控
    

    6.单机时代如何监控?

    通过命令、脚本监控

    监控:

    cpu top

    内存 free -m 大量消耗内存会占用swap,如果没有swap 则会触发oom

    磁盘 df -h 空间 iostat iotop

    网络 ifconfig iftop nethogs

    glances

    shell脚本+crond定时任务 (监控当前系统用户登录的数量 超过四则报警)

    引入zabbix

    4.安装zabbix4.0

    1.配置yum仓库

    rpm -ivh http://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
    

    2.安装zabbix相关功能组件

    yum install zabbix-server-mysql zabbix-web-mysql httpd mariadb-server -y
    

    3.创建数据库

    systemctl start mariadb
    systemctl enable mariadb
    mysql -uroot -e "create database zabbix character set utf8 collate utf8_bin;"
     mysql -uroot -e "grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';"
    

    4.导入数据到数据库中

    zcat /usr/share/doc/zabbix-server-mysql-4.0.14/create.sql.gz | mysql -uroot zabbix
    
    

    5.配置zabbix-server只想数据库

    [root@zabbix-server ~]# grep '^D' /etc/zabbix/zabbix_server.conf 
    DBHost=localhost
    DBName=zabbix
    DBUser=zabbix
    DBPassword=zabbix
    
    修改的内容
    
    

    6.启动zabbix server进程

    systemctl enable zabbix-server
    systemctl start zabbix-server
    
    

    7.配置zabbix 前端web页面

    vim /etc/httpd/conf.d/zabbix.conf。
        .....
        php_value date.timezone Asia/Shanghai
        ....
        
    systemctl restart httpd
    
    

    8.通过url访问zabbix-server

    1.根据提示填写信息即可
        2.默认的用户名和密码是
            username: Admin
            password: zabbix
        
    
    

    9.登录zabbix后
    1.修改密码
    2.将zabbix修改为中文

    10.如何快速的监控一台主机

    1.需要安装zabb-agent
        2.agent版本有有要求?
            平级
            低于
    
        3.安装zabbix-agent   (没有依赖)
         rpm -Uvh https://mirror.tuna.tsinghua.edu.cn/zabbix/zabbix/4.0/rhel/7/x86_64/zabbix-agent-4.0.14-1.el7.x86_64.rpm
        
        
        4.配置zabbix-agent,允许172.16.1.71 能够采集172.16.1.7本地的数据
        [root@web01 ~]# grep "^[a-Z]" /etc/zabbix/zabbix_agentd.conf
        PidFile=/var/run/zabbix/zabbix_agentd.pid
        LogFile=/var/log/zabbix/zabbix_agentd.log
        LogFileSize=0
        Server=172.16.1.71
        Include=/etc/zabbix/zabbix_agentd.d/*.conf
        
        5.启动zabbix-agent
        # systemctl enable zabbix-agent
        # systemctl start zabbix-agent  
        # systemctl restart  zabbix-agent
    
    
        6.登录zabbix-server web界面
            1.添加主机
    
    

    11.zabbix中文乱码

     rpm -ql zabbix-web | grep fonts
        /usr/share/zabbix/assets/fonts
    
        # cd  /usr/share/fonts/dejavu
        # mv DejaVuSans.ttf DejaVuSans_bak.ttf
        # mv msyh.ttf DejaVuSans.ttf
        
    系统乱码是因为网页不识别文字格式,上传新的文字格式,进行替代。
    
    

    12.zabbixserver如何监控自己本身?

    只要安装zabbix-agent,将地址指向本机ip即可
    
    rpm -Uvh https://mirror.tuna.tsinghua.edu.cn/zabbix/zabbix/4.0/rhel/7/x86_64/zabbix-agent-4.0.14-1.el7.x86_64.rpm
        systemctl start zabbix-agent
        systemctl enable zabbix-agen
    
    

    13.zabbix基础架构
    zabbix-agent
    zabbix-server
    mariadb
    zabbix-web

    [图片上传失败...(image-f8bd34-1574735173062)]

    14.zabbix架构拆分

    LAMP架构
    LAP+MySQL   
        172.16.1.71 zabbix-server  zabbix-web
        172.16.1.51 数据库
    
    1.安装数据库
        yum install mariadb-server -y
        systemctl enable mariadb
        systemctl start mariadb
    
    2.创建zabbix库,配置远程授权用户
        create database zabbix character set utf8 collate utf8_bin;
        grant all privileges on zabbix.* to zabbix@'%' identified by 'zabbix';
    
    
    3.在172.16.1.71上进行如下操作
        [root@zabbix-server ~]# mysqldump -B zabbix >zabbix.sql
        [root@zabbix-server ~]# cat zabbix.sql | mysql -h 172.16.1.51 -uzabbix -pzabbix zabbix
    
    
    4.修改zabbix-server配置的指向
    [root@zabbix-server ~]# cat /etc/zabbix/zabbix_server.conf
    #DBHost=localhost
    DBHost=172.16.1.51
    
    [root@zabbix-server ~]# systemctl restart zabbix-server
    
    5.修改zabbix-web配置的指向
    [root@zabbix-server ~]# vim /etc/zabbix/web/zabbix.conf.php
    $DB['SERVER']   = '172.16.1.51';
    
    [root@zabbix-server ~]# systemctl restart httpd
    
    

    15.如何快速监控一个自定义对象,比如监控当前用户登录数量

    语法Format: UserParameter=<key>,<shell command>
    
    1.使用shell命令提取当前用户登录的数量   who|wc -l
        2.使用zabbix-agent将shell命令提取的结果封装一个监控项    UserParameter
        3.zabbix-agent自己检查该监控项是否能正确提取到对应的值   zabbix_agent -p
        4.zabbix-server通过zabbix-get检查zabbix-agent端自定义的监控项是否正常   zabbix_get -s 172.16.1.7 -k user_login
        5.登录zabbix-web页面, 找到对应的主机, 然后添加对应的监控项.
        6.点击检测中--->最新数据--->选择主机--->选择应用级-->检查监控项指标的变化
    
    
        # cat /etc/zabbix/zabbix_agentd.d/all.conf 
        UserParameter=user_login,who|wc -l
        
        # systemctl restart zabbix-agent
    
    
        rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/4.0/rhel/7/x86_64/zabbix-get-4.0.14-1.el7.x86_64.rpm
    
    
    

    16.如何快速设定一个自定义阈值,比如超过4个人登录则触发报警
    1.基于已创建好的监控项设定阈值
    2.如果达标则触发
    3.如果不达标,继续探测,监视

    17.前端展示报警:
    1.点击右上角小人头-->正在发送消息-->勾选前端信息中

    web配置数据库信息:/etc/zabbix/web/zabbix.conf.php

    相关文章

      网友评论

          本文标题:第七十一天 zabbix

          本文链接:https://www.haomeiwen.com/subject/iacewctx.html