美文网首页
zabbix 监控服务

zabbix 监控服务

作者: DB哥 | 来源:发表于2019-09-29 08:37 被阅读0次

    Linux System Environment

    [root@nginx01 ~]# cat /etc/redhat-release                   #==》系统版本
    CentOS Linux release 7.5.1804 (Core)
    [root@nginx01 ~]# uname –r                                  #==》内核版本
    3.10.0-862.el7.x86_64
    [root@nginx01 ~]# uname -m                                  #==》系统架构
    x86_64
    [root@nginx01 ~]# echo $LANG                                #==》系统字符集
    en_US.UTF-8
    [root@zabbix ~]# zabbix_server -V                           #==》zabbix版本
    zabbix_server (Zabbix) 4.0.12
    

    Zabbix简介

    Zabbix是一款基于WEB界面的提供分布式系统监视以及网络监视功能的开源监控软件。Zabbix由zabbix server(服务端,默认端口10051)和可选组件zabbix agent(客户端,默认端口10050)2部分组成。Zabbix通过SNMP协议(默认161端口)监控各种网络服务、网络硬件设备的状态。

    Zbbix主要监控类型

    1.硬件监控   路由器、交换机、防火墙等
    2.系统监控   CPU、内存、磁盘、网络、进程、 TCP等
    3.服务监控   nginx、 php、 tomcat、 redis、 memcache、 mysql等
    4.WEB 监控  请求时间、响应时间、加载时间等
    5.日志监控   ELk(收集、存储、分析、展示)
    6.安全监控   Firewalld、 WAF(Nginx+lua)、安全宝、牛盾云、安全狗等
    7.网络监控   smokeping 多机房
    8.流量监控   监控网卡进/出流量
    

    一、zabbix安装
    标注:zabbix官方安装操作说明

    https://www.zabbix.com/documentation/4.0/manual/installation/install_from_packages/rhel_centos
    

    1、配置阿里云yum源

    curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
    curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
    yum makecache
    

    2、安装MySQL数据库

    [root@test yum.repos.d]# rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
    [root@test yum.repos.d]# yum -y install yum-utils
    [root@test yum.repos.d]# yum-config-manager --enable mysql57-community
    [root@test yum.repos.d]# yum-config-manager --disable mysql80-community
    [root@test yum.repos.d]# yum repolist all | grep mysql
    [root@zabbix ~]# yum -y install mysql-community-server
    [root@zabbix ~]# systemctl start mysqld
    [root@zabbix ~]# systemctl enable mysqld
    [root@zabbix ~]# systemctl status mysqld
    [root@zabbix ~]# grep 'temporary password' /var/log/mysqld.log
    2019-09-10T12:21:39.099636Z 1 [Note] A temporary password is generated for root@localhost: li_;Mhw#.3?M
    [root@zabbix ~]# mysql -uroot -p'li_;Mhw#.3?M'
    mysql> set password=password("#AAAaaa111#");
    mysql> flush privileges;
    

    3、配置zabbix官方仓库源

    [root@zabbix ~]# rpm -ivh https://repo.zabbix.com/zabbix/4.2/rhel/7/x86_64/zabbix-release-4.2-2.el7.noarch.rpm
    

    4、安装zabbix软件包

    [root@zabbix ~]# yum -y install zabbix-server-mysql
    [root@zabbix ~]# yum -y install zabbix-proxy-mysql
    [root@zabbix ~]# yum -y install zabbix-web-mysql
    

    5、MySQL创建zabbix数据库用户并授权

    [root@zabbix ~]# mysql -uroot -p'#AAAaaa111#'
    mysql> create database zabbix character set utf8 collate utf8_bin;
    mysql> grant all privileges on zabbix.* to 'zabbix'@'localhost' identified by '#AAAaaa111#';
    mysql> flush privileges;
    

    6、导入zabbix数据库

    [root@zabbix ~]# zcat /usr/share/doc/zabbix-server-mysql-4.2.8/create.sql.gz | mysql -uzabbix -p zabbix
    Enter password:                     #==》输入MySQL数据库zabbix密码
    

    7、编辑zabbix配置文件/etc/zabbix/zabbix_server.conf文件并修改数据库配置

    [root@zabbix ~]# vim /etc/zabbix/zabbix_server.conf
    DBHost=localhost
    DBName=zabbix
    DBUser=zabbix
    DBPassword=#AAAaaa111#
    

    8、启动zabbix并设置开机自启动

    systemctl start zabbix-server.service
    systemctl enable zabbix-server.service
    systemctl status zabbix-server.service
    

    9、配置Apache配置文件/etc/httpd/conf.d/zabbix.conf

    [root@zabbix ~]# vim /etc/httpd/conf.d/zabbix.conf
    php_value date.timezone Asia/Shanghai
    

    10、启动Apache服务并设置开机自启动

    systemctl start httpd
    systemctl enable httpd
    systemctl status httpd
    

    二、web配置zabbix服务

    1、打开浏览器输入zabbix服务器地址 http://10.0.0.33/zabbix/setup.php

    2、检查依赖是否存在异常

    3、配置zabbix连接数据库

    4、配置zabbix Server服务器信息

    5、最终确认检查配置情况

    6、安装成功
    标注:提示已经成功安装了zabbix前端,配置文件/etc/zabbix/web/zabbix.conf.php被创建

    7、登录zabbix
    标注:zabbix默认登录用户Admin 密码zabbix

    8、调整字符集为中文

    9、修复中文乱码
    标注:打开图形之后会发现语言有乱码情况,原因是缺少字体

    下载字体并替换现有的字体

    [root@zabbix ~]#  yum -y install wqy-microhei-fonts
    [root@zabbix ~]# cp /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/zabbix/assets/fonts/graphfont.ttf
    

    刷新zabbix网页就显示正常

    三、zabbix监控基础架构
    标注:zabbix-agent客户端(数据采集)—>zabbix-server(数据分析|报警)—> 数据库(数据存储)<—zabbix web(数据展示)

    四、zabbix快速监控主机

    1、客户端(被监控端)安装zabbix-agent

    [root@web01 ~]#rpm -ivh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
    [root@web01 ~]# yum -y install zabbix-agent
    

    2、配置zabbix-agent

    [root@web01 ~]# vim /etc/zabbix/zabbix_agentd.conf
    PidFile=/var/run/zabbix/zabbix_agentd.pid
    LogFile=/var/log/zabbix/zabbix_agentd.log
    LogFileSize=0
    Server=10.0.0.33                                          #==》zabbix监控服器IP地址
    ServerActive=127.0.0.1
    Hostname=Zabbix server
    Include=/etc/zabbix/zabbix_agentd.d/*.conf
    

    3、启动zabbix-agent并检查

    [root@web01 ~]# systemctl start zabbix-agent.service
    [root@web01 ~]# systemctl enable zabbix-agent.service
    [root@web01 ~]# systemctl status zabbix-agent.service
    [root@web01 ~]# ss -tlunp | grep 10050
    

    *4、zabbix web界面添加主机 *

    五、zabbix自定义监控主机
    标注:监控Nginx服务状态

    1、命令行实现

    [root@web01 ~]# ss -tlunp | grep -c 80
    1
    

    2、编写zabbix监控文件(传参形式)

    #==》创建Nginx监听状态的信息的文件
    [root@web01 ~]# vim /etc/zabbix/zabbix_agentd.d/nginx_status.conf
    UserParameter=nginx_status[*],ss –tlunp | grep -c $1
    #==》重启zabbix-agent服务
    [root@web01 ~]# systemctl restart zabbix-agent.service
    

    3、zabbix服务器测试

    [root@zabbix ~]# yum -y install zabbix-get.x86_64
    [root@zabbix ~]# zabbix_get -s 10.0.0.60 -k nginx_status[80]
    1
    

    4、zabbix web端添加Nginx服务监控项

    image.png

    5、zabbix web端将添加Nginx服务状态监控项创建图形化

    image.png

    6、zabbix-web设置触发器

    六、zabbix web邮件报警设置

    1、定义发件邮件

    2、定义收件邮箱

    七、自定义报警信息
    标注:可参数zabbix官网技术文档说明

    https://www.zabbix.com/documentation/4.0/zh/manual/appendix/macros/supported_by_location
    

    1、发送的警告信息

    报警邮件标题可以使用默认信息,亦可使用如下中文报警内容
    名称:Action-Email
    默认标题:故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障!
    告警主机:{HOSTNAME1}
    告警时间:{EVENT.DATE} {EVENT.TIME}
    告警等级:{TRIGGER.SEVERITY}
    告警信息: {TRIGGER.NAME}
    告警项目:{TRIGGER.KEY1}
    问题详情:{ITEM.NAME}:{ITEM.VALUE}
    当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
    事件ID:{EVENT.ID}
    

    2、恢复警告信息

    恢复标题:恢复{TRIGGER.STATUS}, 服务器:{HOSTNAME1}: {TRIGGER.NAME}已恢复!
    恢复信息:
    告警主机:{HOSTNAME1}
    告警时间:{EVENT.DATE} {EVENT.TIME}
    告警等级:{TRIGGER.SEVERITY}
    告警信息: {TRIGGER.NAME}
    告警项目:{TRIGGER.KEY1}
    问题详情:{ITEM.NAME}:{ITEM.VALUE}
    当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
    事件ID:{EVENT.ID}
    

    相关文章

      网友评论

          本文标题:zabbix 监控服务

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