Zabbix笔记(zabbix安装、监控项、触发器、邮件&vx报警、二次开发、监控网络流量磁盘CPU)

本文详细介绍了在CentOS7上安装Zabbix、MySQL的过程,包括解决网络问题、配置MySQL、安装Zabbix、设置监控项、自定义触发器、邮件报警、Vx报警以及二次开发等。还提供了常用监控命令,如内存、硬盘监控,并展示了如何监控网络流量、磁盘和CPU温度。此外,文章还涉及了自定义菜单、修改页脚和更换logo等个性化设置。
摘要由CSDN通过智能技术生成

官方中文文档
Zabbix 用户手册

目录

  • 解决centos7安装后没网络
  • 安装MySQL
  • 安装zabbix
  • p3 常用的监控命令
  • 自定义监控项
  • 自定义触发器
  • 邮件报警
  • 修改邮件内容
  • Vx报警
  • 二次开发
    自定义菜单
    修改页脚
    更换logo
  • 监控网络流量
  • 监控磁盘
  • 监控CPU温度

解决centos7安装后没网络

cd /etc/sysconfig/network-scripts

vi ifcfg-ens33(不一定是33)
把ONBOOT=no,改成yes

systemctl restart network

安装MySQL

wget https://mirror.tuna.tsinghua.edu.cn/mysql/downloads/MySQL-5.7/mysql-5.7.35-1.el7.x86_64.rpm-bundle.tar --no-check-certificate
rpm -qa | grep mysql

删除mariadb

rpm -qa | grep mariadb
rpm -e --nodeps mariadb

创建解压目录并解压

mkdir mysql
tar xvf mysql-5.7.35-1.el7.x86_64.rpm-bundle.tar -C ./mysql

依次解压

rpm -ivh   community-common
rpm -ivh   community-libs
rpm -ivh   community-client
rpm -ivh   communityrp-server

(另安装解压mysql-community-libs-compat-5.7.37-1.el7.x86_64,防止bug)

wget https://mirror.tuna.tsinghua.edu.cn/mysql/downloads/MySQL-5.7/mysql-community-libs-compat-5.7.37-1.el7.x86_64.rpm --no-check-certificate
rpm -ivh mysql-community-libs-compat-5.7.37-1.el7.x86_64.rpm

启动MySQL

systemctl start mysqld

查看自动生成的密码

cat /var/log/mysqld.log | grep password

修改配置以修改密码

vim /etc/my.cnf 在[mysql]下添加validate_password=off

重启MySQL

systemctl restart mysqld

登录

mysql -uroot -p 
xxx
exit

修改密码
登陆mysql后

alter user ‘root’@’localhost’ identified by ‘root’;

安装zabbix

1、 系统环境准备
a.关闭防火墙:

systemctl stop firewalld && systemctl disable firewalld

b.关闭selinux

setenforce 0
vim /etc/selinux/config 将enforcing改为disabled

c.重启

reboot

2、 安装并配置zabbix
a.安装zabbix rpm源

rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-2.el7.noarch.rpm 
yum clean all && yum makecache fast

b.安装zabbix服务器端组件和zabbix server 和agent

yum install zabbix-server-mysql zabbix-agent -y

c.安装zabbix前端组件

yum install centos-release-scl -y

d.编辑配置文件 vi /etc/yum.repos.d/zabbix.repo
{zabbix-fronted}下的enable改为1(启用)
e.安装zabbix前端页面、初始数据库、php及httpd组件

yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent

3、 安装并配置MySQL

mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> create user zabbix@localhost identified by 'root';
mysql> grant all privileges on zabbix.* to zabbix@localhost;
mysql> quit;

导入zabbix数据库,zabbix数据库用户为zabbix,密码为password

zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix

4、 zabbix配置初始化
a. 修改zabbix server配置文件 vi /etc/zabbix/zabbix_server.conf 里的数据库密码

DBPassword=root

b. 配置时区信息

vi  /etc/httpd/conf.d/zabbix.conf
php_value date.timezone Asia/Shanghai

c. 配置字体,避免前台监控图形中文乱码

yum -y install wqy-microhei-fonts
cp /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/fonts/dejavu/DejaVuSans.ttf

d. 启动zabbix服务并设置开机自启

systemctl restart zabbix-server zabbix-agent httpd 
systemctl enable zabbix-server zabbix-agent httpd 

访问localhost/zabbix

5、优化配置
//TODO


p3 常用的监控命令

free -m 监控内存使用情况
df -h 监控硬盘
top
htop
uptime
iftop
iostat、
iotop
vmstat
netstat -antp|grep 80
nethogs
pkill -kill -t pts/2 退出用户

自定义监控项

1、 命令行,手动取值
在这里插入图片描述

iostat|awk '/sda/{print $2}'

2、 修改zabbix-agent配置文件
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

 
Vim /etc/zabbix/zabbix_agentd.conf
Systemctl restart zabbix-agent.service

3、 Zabbix-server测试监控项取值
在这里插入图片描述

4、 在web界面添加自定义监控项
在这里插入图片描述
在这里插入图片描述


自定义触发器

{Zabbix server:system.users.num.last()}>3

{主机名:key的名字.函数名(参数)} 比较。。
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述


邮件报警

1、 定义发件人
在这里插入图片描述

2、 收件人
在这里插入图片描述
在这里插入图片描述

3、 启动动作
在这里插入图片描述


修改邮件内容

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


Vx报警

0、 企业微信端设置

1、实现命令行发送微信信息
a.进入目录:cd /usr/lib/zabbix/alertscripts
b.创建weixin.pyzabbix_alter.sh两个脚本:
weixin.py:

#!usr/bin/env python2
#-*- coding: utf-8 -*-
import requests
import sys
import os
import json
import logging
logging.basicConfig(level = logging.DEBUG, format = '%(asctime)s, %(filename)s, %(levelname)s, %(message)s',
datefmt = '%a, %d %b %Y %H:%M:%S',
filename = os.path.join('/tmp','weixin.log'),
filemode = 'a')
corpid='ww71b86ecf6a371a1a' ####需要修改
appsecret='JXliNS88GZtJyMC-NobFvKAYmEDuW6tgC4t1zX7mdu4' ####需要修改
agentid=1000002 ####需要修改
#获取accesstoken
token_url='https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=' + corpid + '&corpsecret=' + appsecret
req=requests.get(token_url)
accesstoken=req.json()['access_token']
#发送消息
msgsend_url='https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=' + accesstoken
touser=sys.argv[1]
subject=sys.argv[2]
#toparty='3|4|5|6'
message=sys.argv[2] + "\n\n" +sys.argv[3]
params={
"touser": touser,
# "toparty": toparty,
"msgtype": "text",
"agentid": agentid,
"text": {
"content": message
},
"safe":0
}
req=requests.post(msgsend_url, data=json.dumps(params))
logging.info('sendto:' + touser + ';;subject:' + subject + ';;message:' + message)

zabbix_alter.sh:

#!/bin/bash
python /usr/lib/zabbix/alertscripts/send_message.py "$1" "$2" "$3"

c.增加执行权限

chmod +x zabbix_alter.sh
chmod +x weixin.py

d.测试运行

./zabbix_alter.sh 'XiaoYi' 'xx' 'yy'

2、zabbix报警设置
a.设置报警媒介,设置发件人
在这里插入图片描述

脚本参数:

{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}

测试时出现pemision deny时:
在这里插入图片描述

原因分析:zabbix用户无法操作root用户的文件,因此说权限不够
解决办法:通过命令 rm -fr /tmp/weixin.log 删除weixin.log后重新运行,或者改变属组
在这里插入图片描述

b.设置收件人
在这里插入图片描述

c.设置动作
。。。

二次开发

个性化设置参考

https://blog.51cto.com/u_11555417/2327073
https://blog.csdn.net/baidu_29679655/article/details/117413442

自定义菜单

vim /usr/share/zabbix/include/menu.inc.php

在这里插入图片描述

],
                /**
                *自定义菜单
                */
                'xiao'=>[
                        'label' => _('xiao'),
                        'user_type' => USER_TYPE_SUPER_ADMIN,
                        'default_page_id' => 0,
                        'pages' => [
                                [
                                        'url' => 'xiao/overview.html',
                                        'label' => _('xiao overview')
                                ]
                        ]
                ]

在这里插入图片描述

(xiao均改为小写)
在这里插入图片描述

cd /usr/share/zabbix
mkdir xiao
cd xiao
vim overview.html
vim /usr/share/zabbix/js/main.js

在这里插入图片描述
在这里插入图片描述


修改页脚

修改文件

cd /usr/share/zabbix/include/classes/helpers/
vim CBrandHelper.php

在这里插入图片描述

(new CLink('LetusGoToBaidu---->','https://www.baidu.com'))
                                        ->addClass(ZBX_STYLE_GREY)
                                        ->addClass(ZBX_STYLE_LINK_ALT)
                                        ->setAttribute('target','_blank')
                                        ->setAttribute('style','text-decoration:none;')

在这里插入图片描述


更换logo

在线编辑svg网站:

http://www.zuohaotu.com/svg/

cd /usr/share/zabbix/assets/img

替换logo文件:icon-sprite.svg
首先备份

cp icon-sprite.svg icon-sprite.svg.bak

接着在网站在线修改icon-sprite.svg,注意修改的logo大小位置要与原来的一致
在这里插入图片描述

上面的为登陆界面logo
下面的是登陆后的logo
上面的图片的位置x:0,y:864
上面的图片的大小:width:114,height:30
下面的图片的位置x:0,y:903
下面的图片的大小:width:95,height:25
最后保存并替换原文件即可
在这里插入图片描述

最后效果如下:

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述


监控网络流量

CPU平均1分钟、5分钟、15分钟负载值不大于CPU个数

创建模板
在这里插入图片描述

创建流量流入监控项 :Network incoming

在这里插入图片描述

创建流量流出监控项 :Network outcoming
在这里插入图片描述

创建graph(图形)
在这里插入图片描述

应用模板: 配置之前创建的空模板,把刚才创建的图形赋予给之前创建的空模板
在这里插入图片描述

压力测试:

wget http://mirrors.aliyun.com/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-2009.iso

添加触发器network incoming > 50k network outcoming > 50k
在这里插入图片描述


监控磁盘

新建模板
在这里插入图片描述

创建自定义磁盘监控项(Item)

在这里插入图片描述
在这里插入图片描述

配置触发器

在这里插入图片描述

在这里插入图片描述

监控CPU温度

https://blog.51cto.com/jonathan/2068915

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值