|NO.Z.00044|——————————|^^ 构建 ^^|——|Zabbix3.2构建.V5|——|2台server|
附录一:构建zabbix监控服务器
一、初始化系统设置
### --- 初始化系统设置
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
二、安装LAMP环境
### --- 安装LAMP环境
wget http://mirros.163.com/./help/CentOS7-Base-163.repo
yum clean all
yum makecache
yum install -y mariadb mariadb-server httpd php php-mysql
systemctl enable httpd
systemctl restart httpd
systemctl enable mariadb
systemctl restart mariadb
mysql_secure_installation
三、安装zabbix程序
### --- 安装zabbix程序
rpm -ivh http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.3l7.noarch.rpm
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
yum install -y zabbix-server-mysql zabbix-web-mysql zabbix-agent
### --- 初始化数据库:
mysql -u root -p
CREATE DATABASE zabbix DEFAULT CHARACTET SET utf8 COLLATE utf8_bin;
grant all privileges on zabbix.* to zabbix@localhost identified by'zabbix';
### --- 读入数据库
cd /usr/share/doc/zabbix-server-mysql-3.2.1
zcat creat.sql.gz |mysql -uroot -p zabbix
### --- 启动zabbix服务
vim /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
systemctl start zabbix-server
systemctl enable zabbix-server
### --- 编辑zabbix前端PHP配置
vim /etc/httpd/conf.d/zabbix.conf
php_value max_execution_time 300
php_value memory_limit 128M
php_value upload_max_filesize 2M
php_value max_input_time 300
php_value always_populate_raw_post_data -l
php_value date.timezone Asia/Shanghai
### --- 调整时间同步
yum install -y ntpdate
ntpdate cn.pool.ntp.org
### --- 重启Apache服务生效
systemctl restart httpd
四、修改中文乱码问题
### --- wind+R > fonts > 拷贝微软雅黑字体改名为msyh.ttf > /usr/share/zabbix/fonts
vim /usr/share/zabbix/include/defines.inc.php
### --- 修改zabbix php 页面配置,将'graohfont'修改为msyh
dnfine('ZBX_GRAPH_FONT_NAME','msyh');
五、添加客户端
### --- 添加客户端
vim /usr/local/zabbix/etc/zabbix_agentd.configure
LogFile=/tmp/zabbix_agentd.log
Server= 192.168.1.195
ServerActive = 192.168.1.195
Hostname = 192.168.1.195
rpm -ivh http://repo.zabbix.com/zabbix/3.2/rhel/6/x86_64/zabbix-release-3.2-1.el6.noarch.rpm
六、添加监控主机/自动发现,nginx并发监控
### --- 添加监控主机
### --- 源码编译安装Nginx服务器并开启状态统计模块
### --- zabbix客户端配置
### --- 编写nginx监控脚本,在被监控端
#!/bin/bash
HOST="127.0.0.1"
PORT="80"
#检测nginx进程是否存在
function ping {
/sbin/pidof nginx | wc -l
}
#检测nginx性能
function active {
/usr/bin/curl "http://$HOST:$PORT/nginx-status/" 2>/dev/null| grep 'Active' | awk '{print $NF}'
}
function reading {
/usr/bin/curl "http://$HOST:$PORT/nginx-status/" 2>/dev/null| grep 'Reading' | awk '{print $2}'
}
function writing {
/usr/bin/curl "http://$HOST:$PORT/nginx-status/" 2>/dev/null| grep 'Writing' | awk '{print $4}'
}
function waiting {
/usr/bin/curl "http://$HOST:#PORT/nginx-status/" 2>/dev/null| grep 'Waiting' | awk' {print $6}'
}
function accepts {
/usr/bin/curl "http://$HOST:$PORT/nginx-status/" 2>/dev/null| awk NR==3 | awk '{print$1}'
}
function handled {
/usr/bin/curl "http://$HOST:$PORT/nginx-status/" 2>/dev/null| awk NR==3 | awk '{print $2}'
}
function requests {
/usr/bin/curl "http://$HOST:$PORT/nginx-status/" 2>/dev/null| awk NR==3 | awk '{print $3}'
}
#执行function
$1
### --- 将自定义的UserParameter加入配置文件,然后重启agentd
cat /usr/local/zabbi-3.0.0/etc/zabbix_agentd.conf|grep nginx
UserParameter=naginx.status[*],/usr/local/zabbix-3.0.0/scropts/ngx-status.sh $1
~~~ killall zabbix_agentd
~~~ usr/local/zabbix-3.0.0/sbin/zabbix_agentd
### --- zabbix_get获取数据
/usr/local/zabbix-3.0.0/bin/zabbix_get -s 10.10.1.121 -k 'nginx.status[accepts]'
9570756
/usr/local/zabbix-3.0.0/bin/zabbix_get -s 10.10.1.121 -k 'nginx.status[ping]'
七、报警设置:zabbix 联合钉钉实现终端报警
1、监控方式添加参数
{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}
2、错误报警信息参数
### --- 标题改为
故障{ERIGGER.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}
3、错误恢复报警信息设置
### --- 标题改为
恢复{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}
Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
——W.S.Landor
分类:
cdv001-lbchac
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」