- 作者简介:我是团团儿,是一名专注于云计算领域的专业创作者,感谢大家的关注
- 座右铭:云端筑梦,数据为翼,探索无限可能,引领云计算新纪元
- 个人主页:团儿.-CSDN博客
目录
前言:
zabbix介绍:
实验目标:
zabbix的配置
1.安装zabbix-server
2.启动数据库进入数据库创建账号
3.导入zabbix初始化数据
4.修改zabbix配置文件
5.修改httpd的时区
nginx的配置
1.修改agent配置文件,指向zabbix-server的ip地址
2.启动
3.配置--主机--创建主机--选择模板
4.重启服务:systemctl restart nginx
5.准备nginx监控状态脚本
mysql的配置
1.同8.6到2的配置
2.安装php环境
3.下载软件
4.查看目录
期待你的点赞收藏与关注
前言:
在信息技术飞速发展的今天,企业数据安全和运营效率成为了大家关注的焦点。 为了应对这一挑战,系统监控软件应运而生,而Zabbix作为一款开源的监控工具,凭借其强大的功能和高度的可定制性受到了广泛关注。
那么,Zabbix到底有哪些神奇的功能呢?它的优势又在哪里呢?接下来,让我们一起来探讨一下。
zabbix介绍:
Zabbix支持多种监控对象,包括但不限于数据库(如MySQL, MariaDB, Oracle, SQLServer)、应用软件(如Nginx, Apache, PHP, Tomcat)、虚拟化平台(如VMware, KVM, XEN, Docker, K8s)以及硬件设备(服务器,存储,网络设备IPMI)。
这种广泛的支持确保了无论企业规模如何,Zabbix都能提供相应的监控需求。
进一步地,Zabbix的优点在于其强大的分布式监控能力和自动发现功能,可以有效降低手动配置的复杂性和出错率。
它对设备性能的要求较低,即使是配置较低的服务器也能承载监控任务,这对于资源有限的中小企业来说尤其重要。
Zabbix的另一个亮点是支持主被动监控模式,这意味着即使在高负载情况下,系统也能够稳定运行,通过被动模式减轻服务器压力。
实验目标:
三台分布式安装,实现Zabbix模板监控mysql
实验拓扑:
192.168.8.5安装zabbix
192.168.8.6安装nginx
192.168.8.7安装mysql
zabbix的配置
1.安装zabbix-server
rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-agent mariadb-server
2.启动数据库进入数据库创建账号
3.导入zabbix初始化数据
4.修改zabbix配置文件
vim /etc/zabbix/zabbix_server.conf
添加:
DBPassword=zabbix
保存退出
5.修改httpd的时区
vim /etc/httpd/conf.d/zabbix.conf
定位20行:
php_value date.timezone Asia/Shanghai
保存退出
重启服务
systemctl restart httpd zabbix-server zabbix-agent
systemctl enable httpd zabbix-server
6.添加8.6,8.7主机
7.修改图形中文乱码情况
cp /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/zabbix/assets/fonts/graphfont.ttf
8.测试key(IP是被监控端)
zabbix_get -s 192.168.8.7 -k MySQL.table-cache
9.用zabbix_get取值
zabbix_get -s 192.168.8.6 -k nginx_status[accepts]
Nginx与mysql均安装zabbix-agent
nginx的配置
1.修改agent配置文件,指向zabbix-server的ip地址
vim /etc/zabbix/zabbix_agentd.conf
修改:
Server=192.168.8.5
保存退出
2.启动
systemctl start zabbix-agent
systemctl enable zabbix-agent
3.配置--主机--创建主机--选择模板
自定义模版监控nginx状态
4.重启服务:systemctl restart nginx
并测试
5.准备nginx监控状态脚本
cd /etc/zabbix/zabbix_agentd.d
vim nginx_monitor.sh
#!/bin/bash
NGINX_COMMAND=$1
CACHEFILE="/tmp/nginx_status.txt"
CMD="/usr/bin/curl http://127.0.0.1/nginx_status/"
if [ ! -f $CACHEFILE ];then
$CMD >$CACHEFILE 2>/dev/null
fi
# Check and run the script
TIMEFLM=`stat -c %Y $CACHEFILE`
TIMENOW=`date +%s`
if [ `expr $TIMENOW - $TIMEFLM` -gt 60 ]; then
rm -f $CACHEFILE
fi
if [ ! -f $CACHEFILE ];then
$CMD >$CACHEFILE 2>/dev/null
fi
nginx_active(){
grep 'Active' $CACHEFILE| awk '{print $NF}'
exit 0;
}
nginx_reading(){
grep 'Reading' $CACHEFILE| awk '{print $2}'
exit 0;
}
nginx_writing(){
grep 'Writing' $CACHEFILE | awk '{print $4}'
exit 0;
}
nginx_waiting(){
grep 'Waiting' $CACHEFILE| awk '{print $6}'
exit 0;
}
nginx_accepts(){
awk NR==3 $CACHEFILE| awk '{print $1}'
exit 0;
}
nginx_handled(){
awk NR==3 $CACHEFILE| awk '{print $2}'
exit 0;
}
nginx_requests(){
awk NR==3 $CACHEFILE| awk '{print $3}'
exit 0;
}
case $NGINX_COMMAND in
active)
nginx_active;
;;
reading)
nginx_reading;
;;
writing)
nginx_writing;
;;
waiting)
nginx_waiting;
;;
accepts)
nginx_accepts;
;;
handled)
nginx_handled;
;;
requests)
nginx_requests;
;;7.
*)
echo 'Invalid credentials';
exit 2;
esac
6.赋予执行权:chmod +x nginx_monitor.sh
7.编写zabbix监控配置文件
vim /etc/zabbix/zabbix_agentd.d/nginx_status.conf
UserParameter=nginx_status[*],/bin/bash /etc/zabbix/zabbix_agentd.d/nginx_monitor.sh $1
8.重启配置文件
9.访问
10.第二台服务器网络发现
zabbix-server web管理界面--配置--自动发现--修改Local Network--添加主机网段--修改间隔--启用
zabbix-server web管理界面--动作--事件源(自动发现)--修改现有自动发现--修改触发条件--在线不在线60秒
zabbix-server web管理界面--动作--事件源(自动发现)--修改现有自动发现操作--添加标题--添加主机、群组、模板
mysql的配置
1.同8.6到2的配置
2.安装php环境
yum install php php-mysql -y
3.下载软件
注意,安装完成后会有提示模版的路径位置
wget https://www.percona.com/downloads/percona-monitoring-plugins/percona-monitoring-plugins-1.1.8/binary/redhat/7/x86_64/percona-zabbix-templates-1.1.8-1.noarch.rpm
rpm -ivh percona-zabbix-templates-1.1.8-1.noarch.rpm
4.查看目录
进入安装目录会发现有2个目录,一个是脚本目录,一个是模版目录
cd /var/lib/zabbix/percona/
scripts
get_mysql_stats_wrapper.sh
ss_get_mysql_stats.php
templates
userparameter_percona_mysql.conf
zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.8.xml
5.为数据库设置密码
6.进入get_mysql_stats_wrapper.sh中修改密码
7.进入 ss_get_mysql_stats.php中修改
8.进入templates,复制自定义监控项配置文件到zabbix目录
cp userparameter_percona_mysql.conf /etc/zabbix/zabbix_agentd.d/
9.重启agent
systemctl restart zabbix-agent
zabbix-agentd -p
10.自动注册:
Zabbix Active agent可以实现自动注册,进而服务器对其进行监控。通过这种方式,无需在服务器上进行手动配置便可直接启动对新host的监控。
步骤:
客户端安装zabbix-agent,配置文件Server,ServerActive指向zabbix-server,Hostname修改本机主机名
zabbix-server web管理界面--动作--事件源(自动注册)--填写名称--触发条件主机名--操作(主机、群组、模板)
期待你的点赞收藏与关注