在centos7环境部署监控软件-zabbix
监控:
内容:
硬件:
防火墙
交换机:端口流量
服务器:CPU 内存插槽 raid卡 网卡 风扇 温度 …
系统:
centos6
centos7
windows
CPU 内存 硬盘分区 网卡
软件:
各个服务的状态
分类:
netdata实时监控
zabbix有延迟的监控
netdata监控 部署
[root@zserver ~]# yum install -y libuuid-devel zlib-devel gcc make git autoconf automake pkgconfig
[root@zserver ~]# lftp 172.16.0.99
lftp 172.16.0.99:~> cd tar
cd ok, cwd=/tar
lftp 172.16.0.99:/tar> get netdata.tgz
[root@zserver ~]# tar zxf netdata.tgz ---> 小实验的监控软件
[root@zserver ~]# cd netdata
[root@zserver ~/netdata]# ./netdata-installer.sh --install /usr/local/
[root@zserver ~]# netstat -antp | grep 19999
tcp 0 0 0.0.0.0:19999 0.0.0.0:* LISTEN 5069/netdata
tcp6 0 0 :::19999 :::* LISTEN 5069/netdata
浏览器访问:http://172.16.0.71:19999
zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案
SNMP: 简单网络管理协议,zabbix用它监控网络设备,防火墙或交换机
zabbix agent: 监控centos6 centos7 windows 应用软件
fping: 监控节点的存活状态
官网:www.zabbix.com
https://www.zabbix.com/documentation/3.4/zh/manual
3.4版本的中文手册
角色介绍:
zabbix-server:通过各种介质,监控 设备、系统、软件
zabbix-mysql:保存zabbix-server收集过来的被监控端的监控数据
zabbix-proxy:在机房内部,实现分布式监控的
zabbix-agent:被监控端
[root@zmysql ~]# yum install -y mariadb mariadb-server
[root@zmysql ~]# lftp 172.16.0.99
lftp 172.16.0.99:~> cd release/
lftp 172.16.0.99:/release> get zabbix-release-3.4-2.el7.noarch.rpm
这个包是为了生成zabbix的源
[root@zmysql ~]# rpm -ivh zabbix-release-3.4-2.el7.noarch.rpm # 这个包是为了生成zabbix的源
[root@zmysql ~]# yum install -y zabbix-server-mysql # 安装zabbix-mysql
[root@zmysql ~]# cd /usr/share/mysql/
[root@zmysql /usr/share/mysql]# cp my-huge.cnf /etc/my.cnf
cp: overwrite ‘/etc/my.cnf’? y
[root@zmysql ~]# vim /etc/my.cnf
# but will not function as a master if omitted
61 server-id = 72
标识mysql-server,ID号,不能有符号
log_slave_updates
AB复制,级联使用
binlog-ignore-db=mysql
AB复制,忽略mysql库
datadir=/data/mysql # 下边需要创建这个目录
将数据目录分离出来
[root@zmysql ~]# mkdir -p /data/mysql
[root@zmysql ~]# chown -R mysql:mysql /data/mysql/
[root@zmysql ~]# systemctl start mariadb
[root@zmysql ~]# systemctl enable mariadb
进入mysql,指定字符集,建库,授权
[root@zmysql ~]# mysql
建zabbix库,并且给zabbix库指定字符集 <-----重点!!!
MariaDB [(none)]> create database zabbix default character set utf8 collate utf8_general_ci;
MariaDB [(none)]> show create database zabbix;
+----------+-----------------------------------------------------------------+
| Database | Create Database |
+----------+-----------------------------------------------------------------+
| zabbix | CREATE DATABASE `zabbix` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+----------+-----------------------------------------------------------------+
MariaDB [(none)]> create database zabbix;
MariaDB [(none)]> grant all on zabbix.* to zabbix@'172.16.%' identified by '12345';
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> select user,host from mysql.user; # 查看用户是否添加成功
+--------+-----------+
| user | host |
+--------+-----------+
| root | 127.0.0.1 |
| zabbix | 172.16.% |
| root | ::1 |
| | localhost |
| root | localhost |
| | mariadb |
| root | mariadb |
+--------+-----------+
MariaDB [(none)]> quit <---退出
# 查看目录下存在一个数据库备份的压缩文件(.sql备份文件)
[root@zmysql /data/mysql]# cd /usr/share/doc/zabbix-server-mysql-3.4.15/
[root@2 zabbix-server-mysql-3.4.15]# ls
AUTHORS ChangeLog COPYING create.sql.gz NEWS README
[root@zmysql /usr/share/doc/zabbix-server-mysql-3.4.15]# gunzip create.sql.gz
[root@zmysql /usr/share/doc/zabbix-server-mysql-3.4.15]# mysql zabbix < create.sql # 将备份的sql文件导入zabbix库
[root@zmysql ~]# mysql zabbix
MariaDB [zabbix]> show tables;
看到表,OK!
[root@zserver ~]# yum install -y httpd php php-mysql php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-bcmath php-mhash libjpeg*
[root@zserver ~]# vim /etc/httpd/conf/httpd.conf # 进入apache的配置文件,添加index.php选项才可以支持php
164 DirectoryIndex index.php index.html
[root@zserver ~]# vim /etc/php.ini
384 max_execution_time = 300
##应用程序的最大执行时间,秒
394 max_input_time = 300
##接收数据的最大超时时间,秒
672 post_max_size = 16M
##接收数据的最大值
878 date.timezone = Asia/Shanghai
##时区
[root@zserver ~]# systemctl start httpd
[root@zserver ~]# systemctl enable httpd
[root@zserver ~]# lftp 172.16.0.99
lftp 172.16.0.99:~> cd release/
lftp 172.16.0.99:/release> get zabbix-release-3.4-2.el7.noarch.rpm
[root@zserver ~]# rpm -ivh zabbix-release-3.4-2.el7.noarch.rpm
# 这个包给本地建立网络yum源,为了下边安装zabbix各项软件做准备
[root@zserver ~]# yum install -y zabbix-server-mysql zabbix-web-mysql zabbix-java-gateway zabbix-get
# 安装zabbix的监控软件
zabbix-get ---> 监控centos6 centos7 windows 应用软件 执行zabbix 键值命令用到
zabbix-java-gateway ---> Zabbix本身不支持直接监控Java,在zabbix 1.8以前,只能使用Zapcat来做代理监控,而且要修改源代码,非常麻烦。所有后来为了解决这个监控问题,Zabbix和Java双方应运生成了各自的代理监控程序:zabbix 2.0以后添加了服务进程zabbix-java-gateway;Java有了JMX,全称是Java Management Extensions,即Java管理扩展。
zabbix-web-mysql ---> Zabbix的web端会通过这些数据,来展示绘图。
zabbix-server-mysql ---> 数据库是用来存放采集到的数据
部署中文字体:
windows字体路径--C:\Windows\Fonts
楷体常规
[root@zserver ~]# mkdir /usr/share/fonts/simkai
[root@zserver ~]# cd /usr/share/fonts/simkai/
[root@zserver /usr/share/fonts/simkai]# ls
simkai.ttf
编辑字体的配置文件 # cd /usr/share/zabbix/include/
[root@zserver /usr/share/zabbix/include]# vim defines.inc.php
53 define('ZBX_FONTPATH', '/usr/share/fonts/simkai');
54 define('ZBX_GRAPH_FONT_NAME', 'simkai');
编辑zabbix-java的配置文件:
[root@zserver /etc/zabbix]# vim zabbix_java_gateway.conf
9 LISTEN_IP="0.0.0.0"
17 LISTEN_PORT=10052
PID_FILE="/var/run/zabbix/zabbix_java.pid"
START_POLLERS=50 #设置启动多个线程 只有这个需要改,其它注释打开
TIMEOUT=3
这是监控java程序需要的配置文件
设置zabbix-server配置文件
[root@zserver /etc/zabbix]# vim zabbix_server.conf
91 DBHost=172.16.0.72 # 改 对应z-mysql的ip
100 DBName=zabbix
116 DBUser=zabbix
124 DBPassword=12345 # 改
131 DBSocket=/var/lib/mysql/mysql.sock # 改
139 DBPort=3306 # 开注释
连接mysql
261 JavaGateway=localhost # 改
269 JavaGatewayPort=10052 # 去注释
277 StartJavaPollers=50 # 改
连接java-gateway
启动服务:
[root@zserver ~]# systemctl start zabbix-java-gateway
[root@zserver ~]# systemctl enable zabbix-java-gateway
[root@zserver ~]# systemctl start zabbix-server
[root@zserver ~]# systemctl enable zabbix-server
[root@zserver ~]# systemctl restart httpd
[root@zserver ~]# netstat -antp | grep :1005[12] # 查看10051 和 10052 端口的的服务启动状态
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 8467/zabbix_server
tcp6 0 0 :::10051 :::* LISTEN 8467/zabbix_server
tcp6 0 0 :::10052 :::* LISTEN 8428/java
[root@1-server zabbix]# systemctl restart httpd # 再次重启apache服务
浏览器访问:http://172.16.0.71/zabbix/
(添加一台之前部署过mysql的机器)
(安装了mysql的centos7。)
[root@zagent-mysql ~]# lftp 172.16.0.99
lftp 172.16.0.99:~> cd release/
lftp 172.16.0.99:/release> get zabbix-release-3.4-2.el7.noarch.rpm
13572 bytes transferred
lftp 172.16.0.99:/release> bye
[root@zagent-mysql ~]# rpm -ivh zabbix-release-3.4-2.el7.noarch.rpm
[root@zagent-mysql ~]# yum install -y zabbix-sender zabbix-agent
[root@zagent-mysql /etc/zabbix]# vim zabbix_agentd.conf
97 Server=172.16.0.71 --->zabbix-server
138 ServerActive=172.16.0.71:10051 ---> zabbix-server
149 Hostname=172.16.0.101 ---> mysql-zabbix-agent
启动agent服务
[root@zagent-mysql ~]# systemctl start zabbix-agent
[root@zagent-mysql ~]# systemctl enable zabbix-agent
查看是否启动成功
[root@zagent-mysql ~]# netstat -antp | grep 10050
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 1562/zabbix_agentd
tcp6 0 0 :::10050 :::* LISTEN 1562/zabbix_agentd
准备工作:
虚拟机端:关闭防火墙,打开允许远程控制连接
实体机:运行 输入 mstsc.exe (远程桌面连接工具),
将zabbix-agent文件夹拷贝到虚拟机端 C:\Program Files (x86)
配置文件:
使用notepad工具对 C:\Program Files (x86)\zabbix-agentd\conf\zabbix_agentd.conf 配置文件进行设置
server= (zserver的ip)
ServerActive=(zserverip : 10051) ---- > 如果端口号修改过,那这里也要修改
Hostname=(本机的名字,方便区分可以设置本机ip)
启动agent服务:
虚拟机端:运行 CMD 工具,设置如下
打开防火墙,设置防火墙规则
### 设置防火墙规则
端口对应zserver 设置成10051
出站规则名字:设置成zserver即可。
通过使用zabbix_get 可以检测监控键值是否可用,
Zabbix_get 一般在
zabbix-server
上对agent使用
如果配置了zabbix-proxy,那么zabbi_get就要在zabbix-proxy
使用才可以
mysql服务需要的监控内容
vfs.dev.read[,,]
vfs.dev.read[/dev/mapper/centos-root,,] # 根分区的lv在1分钟之内的读硬盘的速度
vfs.dev.write[,,]
vfs.dev.write[/dev/mapper/centos-root,,]
[root@zserver ~]# df -h 查看根分区名字(/dev/mapper/centos-root)
[root@zserver ~]# zabbix_get -s 172.16.0.101 -p 10050 -k vfs.dev.read[/dev/mapper/centos-root,,]
[root@zserver ~]# zabbix_get -s 172.16.0.101 -p 10050 -k vfs.dev.write[/dev/mapper/centos-root,,]
vfs.fs.size[/,pused]
vfs.fs.inode[/,pused]
vfs.fs.inode[/,pfree] # inode 百分比显示剩余空间
vfs.fs.size[/,pfree] # block 百分比显示剩余空间
是不是断开?
icmpping
网卡的 IO
net.if.in[if,] 网卡的IN
net.if.out[if,] 网卡的OUT
[root@zserver ~]# zabbix_get -s 172.16.0.101 -p 10050 -k net.if.in[ens32]
15491364
[root@zserver ~]# zabbix_get -s 172.16.0.101 -p 10050 -k net.if.out[ens32]
2708242
当前值是总量,没用
需要的是单位时间的传输速率
每秒速率
自定义倍数 8
vm.memory.size[pavailable] 剩余率的百分比
[root@zserver ~]# zabbix_get -s 172.16.0.101 -p 10050 -k vm.memory.size[pavailable]
75.282486
剩余率的百分比
vm.memory.size[total] 内存总量
[root@zserver ~]# zabbix_get -s 172.16.0.101 -p 10050 -k vm.memory.size[total]
1023688704
内存大小
system.cpu.util[,idle] CPU的idle
[root@zserver ~]# zabbix_get -s 172.16.0.101 -p 10050 -k system.cpu.util[,idle]
99.666444
system.cpu.load[percpu,avg1]
1分钟之内,负载率 <=1 说明正常;>1 超负荷了
agent和server之间,数据的传递方式:
主动式
agent主动将数据传输给server。
应用场景:
服务器直连公网。
被动式
agent等待server连接,将自己的数据收集到server。
自定义监控项 --> 自定义模板
yum install -y mariadb 5.5
默认没有root@localhost密码
mysql5.7 bin
PATH变量里没有mysql命令的路径
mysql5.7 rpm
都有初始的root@localhost密码
[root@zagent-mysql /etc/zabbix/zabbix_agentd.d]# vim userparameter_mysql.conf
自定义键值
UserParameter=mysql.status[*],echo "show global status where Variable_name='$1';" | HOME=/var/lib/zabbix /usr/local/mysql/bin/mysql -u root -p密码 -N 2> /dev/null | awk '{print $$2}'
UserParameter=mysql.size[*],bash -c 'echo "select sum($(case "$3" in both|"") echo "data_length+index_length";; data|index) echo "$3_length";; free) echo "data_free";; esac)) from information_schema.tables$([[ "$1" = "all" || ! "$1" ]] || echo " where table_schema=\"$1\"")$([[ "$2" = "all" || ! "$2" ]] || echo "and table_name=\"$2\"");" | HOME=/var/lib/zabbix /usr/local/mysql/bin/mysql -u root -p密码 -N 2> /dev/null'
[root@zagent-mysql ~]# systemctl restart zabbix-agent
mysql的端口状态:
net.tcp.listen[port]
net.tcp.port[<ip>,port]
[root@zserver ~]# zabbix_get -s 172.16.0.101 -p 10050 -k net.tcp.listen[3306]
1
[root@zserver ~]# zabbix_get -s 172.16.0.101 -p 10050 -k net.tcp.port[,3306]
1
监控nginx和tomcat的端口状态:
[root@zserver ~]# zabbix_get -s 172.16.0.111 -p 10050 -k net.tcp.port[,80]
1
[root@zserver ~]# zabbix_get -s 172.16.0.111 -p 10050 -k net.tcp.listen[80]
1
[root@zserver ~]# zabbix_get -s 172.16.0.121 -p 10050 -k net.tcp.listen[8080]
1
[root@zserver ~]# zabbix_get -s 172.16.0.121 -p 10050 -k net.tcp.port[,8080]
1
zabbix 非正常关机:
先启动 z mysql
启动完成
再启动 z server
启动完成
最后启动 z agent
监控nginx的status:
[root@zagent-nginx /usr/local/nginx]# vim conf/nginx.conf
写在虚拟主机里面
location /nginx_status {
stub_status on;
access_log off;
allow 127.0.0.1;
deny all;
}
[root@zagent-nginx /usr/local/nginx]# ./sbin/nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@zagent-nginx /usr/local/nginx]# ./sbin/nginx -s reload
[root@zagent-nginx ~]# /usr/bin/curl -s "http://127.0.0.1:80/nginx_status/"
Active connections: 1
server accepts handled requests
35 35 1
Reading: 0 Writing: 1 Waiting: 0
Active connections Nginx正处理的活动链接数个数;重要!!!
server Nginx启动到现在共处理了多少个连接。
accepts Nginx启动到现在共成功创建几次握手。
handled requests Nginx总共处理了几次请求。
Reading Nginx读取到客户端的 Header 信息数。
Writing Nginx返回给客户端的 Header 信息数。
Waiting Nginx已经处理完正在等候下一次请求指令的驻留链接,开启。
Keep-alive的情况下,Waiting这个值等于active-(reading + writing)。
请求丢失数=(握手数-连接数)可以看出,本次状态显示没有丢失请求。
[root@zagent-nginx ~]# /usr/bin/curl -s "http://127.0.0.1:80/nginx_status/" | awk '/^Active/{print $NF}'
1
[root@zagent-nginx /etc/zabbix/zabbix_agentd.d]# vim userparameter_nginx.conf
#UserParameter=nginx_status[*],/bin/bash /etc/zabbix/zabbix_agentd.d/zabbix_nginx.sh "$1"
UserParameter=nginx_active,/usr/bin/curl -s "http://127.0.0.1:80/nginx_status/" | awk '/^Active/{print $NF}'
[root@zagent-nginx ~]# systemctl restart zabbix-agent
zabbix监控tomcat:
端口
状态:堆内存 栈内存 线程信息
所有zabbix监控tomcat的通用配置:
[root@zagent-tomcat /opt/apache-tomcat-8.0.50]# vim bin/catalina.sh
#!/bin/sh
CATALINA_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.rmi.server.hostname=172.16.0.121"
-Dcom.sun.management.jmxremote 启动JMX远程监控
-Dcom.sun.management.jmxremote.port=12345 JMX使用的端口
-Dcom.sun.management.jmxremote.ssl=false 不使用SSL加密
-Dcom.sun.management.jmxremote.authenticate=false 不使用验证
-Djava.rmi.server.hostname=172.16.0.121 tomcat自己的IP
为了能够在有防火墙规则的情况下,查看tomcat的状态:(穿透防火墙)
[root@zagent-tomcat /opt/apache-tomcat-8.0.50]# vim conf/server.xml
33 <Listener className="org.apache.catalina.mbeans.JmxRemoteLifecycleListener" rmiRegistryPortPlatform="10001" rmiServerPortPlatform="10002" />
允许zabbix访问tomcat访问状态
[root@zagent-tomcat /opt/apache-tomcat-8.0.50]# vim conf/jmxremote.access
admin read write
[root@zagent-tomcat /opt/jdk1.8.0_05/jre/lib/management]# cp jmxremote.password.template jmxremote.password
[root@zagent-tomcat /opt/jdk1.8.0_05/jre/lib/management]# vim jmxremote.password
monitorRole QED
controlRole R&D
打开注释
wq!
下载jar包:
[root@zagent-tomcat /opt/apache-tomcat-8.0.50/lib]# lftp 172.16.0.99
lftp 172.16.0.99:~> cd pub
lftp 172.16.0.99:/pub> get catalina-jmx-remote.jar
[root@zagent-tomcat /opt/apache-tomcat-8.0.50/lib]# ls catalina-jmx-remote.jar
catalina-jmx-remote.jar
# shutdown.sh
# startup.sh
[root@zagent-tomcat ~]# netstat -antp | grep java
tcp6 0 0 :::8080 :::* LISTEN 1424/java
tcp6 0 0 :::10001 :::* LISTEN 1424/java
tcp6 0 0 :::10002 :::* LISTEN 1424/java
tcp6 0 0 :::12345 :::* LISTEN 1424/java
tcp6 0 0 :::8009 :::* LISTEN 1424/java
z server 采集数据
数据存储 z mysql
在z GUI 呈现
设定触发器的阈值(报警的临界值)
CPU
system.cpu.util[,idle]
警告 <=15
严重 <=10
错误 <=5
可以自定义
system.cpu.load[percpu,avg1]
>1 报警
内存
vm.memory.size[pavailable]
警告 <=15
严重 <=10
错误 <=5
可以自定义
分区使用率
vfs.fs.size[/,pused]
警告 >=85
严重 >=90
错误 >=95
可以自定义
vfs.fs.size[/,pfree]
警告 <=15
严重 <=10
错误 <=5
可以自定义
端口的状态
=0
zabbix-proxy 将采集到的数据 主动模式发送给 zserver端
z-server的ip设置zabbix-proxy的ip应该是映射到防火墙的ip
功能:z-proxy为了减轻zserver压力,所以zproxy采用主动模式
lftp 172.16.0.99:/release> get zabbix-release-3.4-2.el7.noarch.rpm
[root@zproxy ~]# rpm -ivh zabbix-release-3.4-2.el7.noarch.rpm
[root@zproxy ~]# yum install -y zabbix-proxy-mysql zabbix-get zabbix-java-gateway mariadb-server mariadb
[root@zproxy ~]# systemctl start mariadb
[root@zproxy ~]# systemctl enable mariadb
[root@zproxy ~]# mysql
MariaDB [(none)]> create database zabbix_proxy character set utf8 collate utf8_bin; # 建库并制定字符集
MariaDB [(none)]> grant all on zabbix_proxy.* to zabbix@'localhost' identified by '12345';
MariaDB [(none)]> flush privileges;
导入数据库:
[root@zproxy ~]# cd /usr/share/doc/zabbix-proxy-mysql-3.4.15/
[root@zproxy /usr/share/doc/zabbix-proxy-mysql-3.4.15]# ls
AUTHORS ChangeLog COPYING NEWS README schema.sql.gz
[root@zproxy /usr/share/doc/zabbix-proxy-mysql-3.4.15]# gunzip schema.sql.gz
[root@zproxy /usr/share/doc/zabbix-proxy-mysql-3.4.15]# mysql zabbix_proxy < schema.sql # 导入数据库
[root@zproxy ~]# mysql zabbix_proxy
MariaDB [zabbix_proxy]> show tables;
看到表,OK!
[root@zproxy /etc/zabbix]# vim zabbix_java_gateway.conf
LISTEN_IP="0.0.0.0"
LISTEN_PORT=10052
START_POLLERS=50
[root@zproxy /etc/zabbix]# vim zabbix_proxy.conf
13 ProxyMode=0
##主动式,zproxy主动将监控数据传给zserver
24 Server=172.16.0.71
##指定zserver的IP,生产环境,防火墙的公网地址
33 ServerPort=10051
##指定zserver的端口,生产环境,公网地址的某个端口 xxxxx
43 Hostname=SYzproxy
##zproxy的名字,唯一的 地区+名字
156 DBHost=localhost
167 DBName=zabbix_proxy
182 DBUser=zabbix
190 DBPassword=12345
197 DBSocket=/var/lib/mysql/mysql.sock
204 DBPort=3306
244 ConfigFrequency=3
253 DataSenderFrequency=1
##zproxy向zserver发送数据的时间间隔,秒。
323 JavaGateway=localhost
331 JavaGatewayPort=10052
339 StartJavaPollers=50
##zserver与java之间,创建多少个线程用于数据传输
##START_POLLERS >= StartJavaPollers
[root@zproxy ~]# systemctl start zabbix-java-gateway
[root@zproxy ~]# systemctl enable zabbix-java-gateway
[root@zproxy ~]# systemctl start zabbix-proxy
[root@zproxy ~]# systemctl enable zabbix-proxy
[root@zproxy ~]# netstat -antp | grep 1005[12]
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 1545/zabbix_proxy
tcp6 0 0 :::10051 :::* LISTEN 1545/zabbix_proxy
tcp6 0 0 :::10052 :::* LISTEN 1501/java
拓扑图:
{HOST.NAME} 主机名称
cpu-idle:{ {HOST.HOST}:system.cpu.util[,idle].last(0)}%
memory-free:{ {HOST.HOST}:vm.memory.size[pavailable].last(0)}%
root-free:{ {HOST.HOST}:vfs.fs.size[/,pfree].last(0)}%
打印的监控键值
网卡流量:
OUT:{172.16.0.121:net.if.out[ens32].last(0)}
IN:{172.16.0.121:net.if.in[ens32].last(0)}
主机名称
钉钉报警:
[root@zserver /etc/zabbix]# cd /usr/lib/zabbix/alertscripts/
[root@zserver /usr/lib/zabbix/alertscripts]# ls
[root@zserver /usr/lib/zabbix/alertscripts]# lftp 172.16.0.99
lftp 172.16.0.99:~> cd scripts/
lftp 172.16.0.99:/scripts> get token.sh
[root@zserver /usr/lib/zabbix/alertscripts]# chmod +x token.sh
[root@zserver /usr/lib/zabbix/alertscripts]# vim token.sh
钉钉配置完成后,测试脚本。
[root@zserver /usr/lib/zabbix/alertscripts]# ./token.sh zabbix test warning
{“errcode”:0,“errmsg”:“ok”}
[root@zserver /etc/zabbix]# cd /usr/lib/zabbix/alertscripts/
[root@zserver /usr/lib/zabbix/alertscripts]# ls
[root@zserver /usr/lib/zabbix/alertscripts]# lftp 172.16.0.99
lftp 172.16.0.99:~> cd scripts/
lftp 172.16.0.99:/scripts> get token.sh
[root@zserver /usr/lib/zabbix/alertscripts]# chmod +x token.sh
[root@zserver /usr/lib/zabbix/alertscripts]# vim token.sh # 设置成自己的token(webhook值,整段包括http),在钉钉建立群聊,添加自定义机器人,添加关键词(如warning,等预警词)
钉钉配置完成后,测试脚本。
[root@zserver /usr/lib/zabbix/alertscripts]# ./token.sh zabbix test warning
{
"errcode":0,"errmsg":"ok"}
1.管理—报警媒介类型— >> 设置报警的媒介(微信,钉钉,e-mail)
2.管理----用户----报警媒介 ---- 添加 ---- >> 添加类型
zabbix-server服务可以启动,10051端口号查询不到(配置文件无误)
解决:查看firewalld,selinux是否关闭
监控tomcat,12345 端口 不显示
查看catalina.sh配置文件是否有错误
触发器规则无法添加,提示"错误的触发器表达式"
触发器多条规则用and分割,and前后有空格
系统屏幕打印出报警状态,没有显示动作
检查邮箱信息是否配置正确,
警告级别是否对应,
参数是否书写存在问题
配置文件无问题,proxy能连接zserver和agent,不出图
tail -0f zabbix_proxy.log
查看日志状态,重启proxy服务
配置好zabbix-server,访问页面时空白页
检查 less /var/log/httpd/error_log
因为是页面问题,一般从apache的错误日志会看到问题
安装zabbix-server-mysql时提示 Requires: libiksemel.so.3()(64bit)
需要yum安装 iksemel-1.4-6.sdl7.x86_64.rpm ,然后安装zabbix-server-mysql
https://blog.csdn.net/zhaoxixc/article/details/82866377
升级前
[root@syzproxy ~]# zabbix_get -s 172.16.1.31 -p 10050 -k vm.memory.size[pavailable]
zabbix_get [2178]: Check access restrictions in Zabbix agent configuration
检查agent端的zabbix版本
[root@ansible ~]# rpm -qa zabbix-agent
zabbix-agent-3.4.15-1.el7.x86_64
版本没有升级
更新agent
[root@ansible ~]# yum upgrade -y zabbix-agent
再次检查
[root@syzproxy ~]# zabbix_get -s 172.16.1.31 -p 10050 -k vm.memory.size[pavailable]
80.288952
可以了。
登录设置向导,访问被拒绝,提示连接数据库的密码错误。
Error connecting to database: Access denied for user ‘zabbix’@‘zabbix-server’ (using password: YES)
检查zabbix-server。conf配置没问题,检查,账号,密码,访问地址都是正确的。
解决方法:
数据库中授权时,将“172.16.%” ,设置为“localhost”即可
MariaDB [(none)]> drop user zabbix@'172.16.%';
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> grant all on zabbix.* to zabbix@'localhost' identified by '12345';
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> select user,host from mysql.user;
+--------+---------------+
| user | host |
+--------+---------------+
| root | 127.0.0.1 |
| root | ::1 |
| | localhost |
| root | localhost |
| zabbix | localhost |
| | zabbix-server |
| root | zabbix-server |
+--------+---------------+
7 rows in set (0.00 sec)