京东6.18大促主会场领京享红包更优惠

 找回密码
 立即注册

QQ登录

只需一步,快速开始

监控zabbix的安装与使用教程

2024-11-3 13:59| 发布者: db4d5a85| 查看: 125| 评论: 0

摘要: 目录1.zabbix的安装步骤2.zabbix的自动模式和被动模式简介及实现3.zabbix proxy自动及被动4.自定义监控,监控linux和毗连状态,创建email进行根本报警5.摆设zabbix agent脚本,适配rocky和ubuntu系统6.使用脚本,基
目录

1.zabbix的安装步骤

使用centos8安装zabbix6.0过程

安装epel源

[code][root@zabbix ~]# yum install -y https://mirrors.aliyun.com/epel/epel-release-latest-8.noarch.rpm[/code]

安装zabbix的repo源

[code][root@zabbix ~]# rpm -Uvh https://repo.zabbix.com/zabbix/6.0/rhel/8/x86_64/zabbix-release-6.0-5.el8.noarch.rpm [root@zabbix ~]# yum clean all [root@zabbix ~]# yum install zabbix-server-mysql zabbix-web-mysql zabbix-nginx-conf zabbix-sql-scripts zabbix-selinux-policy zabbix-agent[/code]

安装数据库并启动

[code][root@zabbix ~]# yum install mysql-server.x86_64 -y [root@zabbix ~]# systemctl enable --now mysqld[/code]

创建用户

[code][root@zabbix ~]# mysql mysql> create database zabbix character set utf8mb4 collate utf8mb4_bin; mysql> create user zabbix@localhost identified by '123456'; mysql> grant all privileges on zabbix.* to zabbix@localhost; mysql> set global log_bin_trust_function_creators = 1; mysql> quit;[/code]

导入数据

[code][root@zabbix ~]# zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql --default-character-set=utf8mb4 -uzabbix -p123456 zabbix [root@zabbix ~]# mysql mysql> set global log_bin_trust_function_creators = 0; mysql> quit;[/code]

修改配置文件

[code][root@zabbix ~]# sed -i "s/# DBPassword=/DBPassword=123456/" /etc/zabbix/zabbix_server.conf[/code]

安装中文语言包

[code][root@zabbix ~]# yum install langpacks-zh_CN.noarch -y [/code]

在配置文件中将该两行取消解释

[code][root@zabbix ~]# vim /etc/nginx/conf.d/zabbix.conf # listen 8080; # server_name example.com;[/code]

设为开机自启

[code][root@zabbix ~]# systemctl restart zabbix-server zabbix-agent nginx php-fpm[/code]

访问ip:8080

系统名称ip
centos8zabbix-server10.76.0.246
centos8zabbix-proxy10.76.0.182
centos8zabbix-client110.76.0.184
centos8zabbix-client210.76.0.180

2.zabbix的自动模式和被动模式简介及实现

 Zabbix默认是被动模式,被动模式必要 Zabbix Server找 Zabbix Agent要数据。
 自动模式是Zabbix Server给 Zabbix Agent发送一个监控项的使命清单,Zabbix Agent根据使命清单,采集好监控项的值,自动报告给 Zabbix Server这100个监控项,Zabbix Agent自动模式只必要发送一次数据,大大提高了传输效率。

自动模式步骤:Server打开一个TCP毗连,Server发送哀求agent.ping,Agent吸收到哀求并进行响应,Server处理吸收到的数据,关闭TCP毗连

被动模式步骤:zabbix agent 首先向ServerActive配置的IP哀求获取active items,获取并提交active items数据值给server大概proxy。被动模式是指 zabbix agent 被动的担当zabbix server(大概Zabbix Proxy)周期性发送过来的数据收集指令此为默认的工作方式。在被动模式之下,zabbix server会根据主构造联的模板中的监控项和数据采集隔断时间,周期性的打开随机端口并向zabbix agent服务器的10050端口发起tcp毗连,然后发送获取监控项数据的指令。

 被动模式的优点就是配置简单,安装后即可使用,因此也成为zabbix的默认工作模式,但是被动模式的最大问题就是会加大zabbix server的 负载,在数百乃至数千台服务器的环境下会导致zabbix server必要轮训向每个zabbix agent发送数据采集指令,如果zabbix server负载过高还会导致不能及时获取到最新数据被动模式由于性能的原因,一台 Zabbix Server 一样平常只能监控500台以下的主机,更多的主机发起使用自动模式。默认是被动模式,在被监控的主机上安装zabbix-agent并启动上添加主机并进行关联就可以。
 被动模式只必要配置该行

[code][root@client ~]#vim /etc/zabbix/zabbix_agentd.conf Server=10.76.0.246 #被动模式指向Zabbix Server的IP或FQDN[/code]

 自动模式实现修改一下配置

[code][root@client ~]#vim/etc/zabbix/zabbix_agentd.conf Server=10.76.0.246 #被动模式指向Zabbix Server的IP或FQDN ServerActive=10.76.0.246 #自动模式指向Zabbix Server的IP或FQDN Hostname=10.76.0.184 #当前主机的IP[/code]

3.zabbix proxy自动及被动

自动模式,Zabbix Proxy 会自动向 Zabbix Server 发送监控数据。这意味着署理程序定期查抄预先定义的监控项,并将结果直接发送到服务器。
 **特点:**数据推送:署理程序自动将数据发送给服务器。减少服务器负载:由于署理自动发送数据,减少了服务器端的查询负担。网络问题敏感:如果网络有问题大概署理无法毗连到服务器,可能会导致数据丢失。适用于大量数据:适合于必要频繁发送大量数据的环境。
被动模式 :被动模式则是 Zabbix Server 定期向 Proxy 哀求数据。在这种模式下,Proxy 不会自动发送数据;相反,它等待服务器的哀求并响应这些哀求。
 **特点:**数据拉取:服务器向 Proxy 哀求数据。包管数据完整性:即使在网络不稳定的环境下也能包管数据被收集。增长服务器负载:服务器必要定期向每个 Proxy 发起哀求。适用于关键数据:适合于必要确保数据完整性和可靠性的场景。

[code]zabbix-proxy安装 [root@zabbix-proxy ~]# rpm -Uvh https://repo.zabbix.com/zabbix/6.0/rhel/8/x86_64/zabbix-release-6.0-5.el8.noarch.rpm [root@zabbix-proxy ~]# yum clean all [root@zabbix-proxy ~]# dnf install zabbix-proxy-mysql zabbix-sql-scripts zabbix-selinux-policy 数据库 [root@zabbix-proxy ~]# mysql mysql> create database zabbix_proxy character set utf8mb4 collate utf8mb4_bin; mysql> create user zabbix@localhost identified by '123456'; mysql> grant all privileges on zabbix_proxy.* to zabbix@localhost; mysql> set global log_bin_trust_function_creators = 1; mysql> quit; 导入初始架构和数据,系统将提示您输入新创建的密码。 [root@zabbix-proxy ~]# cat /usr/share/zabbix-sql-scripts/mysql/proxy.sql | mysql --default-character-set=utf8mb4 -uzabbix -p123456 zabbix_proxy [root@zabbix-proxy ~]# mysql mysql> set global log_bin_trust_function_creators = 0; mysql> quit; 自动模式实现 [root@zabbix-proxy ~]# vim /etc/zabbix/zabbix_proxy.conf ProxyMode=0 #自动模式为0,被动模式为1,默认为0即自动模式 Server=10.76.0.246 #指向Zabbix Server Hostname=zabbix-proxy #该名称要与Web管理页的agent署理程序名称雷同 DBHost=localhost #MySQL服务器地址 DBName=zabbix_proxy #MySQL数据库名 DBUser=zabbix #毗连MySQL的用户 DBPassword=123456 #毗连MySQL的用户密码 被动模式 [root@zabbix-proxy ~]# vim /etc/zabbix/zabbix_proxy.conf ProxyMode=1 #0为自动,1为被动,此为默认 server=10.76.0.246 #zabbix server服务器的地址 Hostname=zabbix-proxy #agent署理程序名称雷同 DBHost=localhost #数据库服务器地址 DBName=zabbix_proxy #数据库库名称 DBUser=zabbix #毗连数据库的用户名称 DBPassword=123456 #数据库用户密码[/code]

4.自定义监控,监控linux和毗连状态,创建email进行根本报警

[code][root@zabbix-server ~]# cat /etc/zabbix/zabbix_agentd.d/test.conf UserParameter=root_filesystem_use,df|awk -F' +|%' '$7 == "/" {print $5 }' UserParameter=tcp_status_estab,ss -ant|grep -c ESTAB #客户端测试 [root@client1 ~]# zabbix_agent -t root_filesystem_use [root@client1 ~]# zabbix_agent -t tcp_status_estab #重启服务后服务器端才能获取数据 [root@client1 ~]# systemctl restart zabbix-agent.service #服务器端测试 [root@zabbix-server ~]#yum -y install zabbix-get [root@client1 ~]# systemctl restart zabbix-agent.service [root@zabbix-server ~]#zabbix_get -s 10.76.0.184 -p 10050 -k "root_filesystem_use" [root@zabbix-server ~]#zabbix_get -s 10.76.0.184 -p 10050 -k "tcp_state_estab"[/code]
  • qq开启SMTP功能,并获取授权码
  • 创建告警媒介

5.摆设zabbix agent脚本,适配rocky和ubuntu系统

[code]#!/bin/bash url="https://repo.zabbix.com/zabbix/6.0" SERVER="10.76.0.246" HOST=`hostname -I` . /etc/os-release if [ $ID = "rocky" $ID = "centos" ];then rpm -Uvh $url/rhel/$VERSION_ID/x86_64/zabbix-release-6.0-5.el8.noarch.rpm yum clean all && yum install zabbix-agent -y sed -i "s/Server=127.0.0.1/Server=$SERVER/" /etc/zabbix/zabbix_agentd.conf sed -i "s/# Hostname=Zabbix Server/Hostname=$HOST/" /etc/zabbix/zabbix_agentd.conf elif [ $ID = ubuntu ]; then wget $url/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.0-4+ubuntu20.04_all.deb dpkg -i zabbix-release_6.0-4+ubuntu20.04_all.deb apt update && apt install zabbix-agent -y sed -i "s/Server=127.0.0.1/Server=$SERVER/" /etc/zabbix/zabbix_agentd.conf sed -i "s/# Hostname=/Hostname=$HOST/" /etc/zabbix/zabbix_agentd.conf else echo "你的系统不是redhat和ubuntu系列的,请查抄您的系统版本!" exit 1 fi systemctl start zabbix-agent && systemctl enabled zabbix-agent[/code]

6.使用脚本,基于zabbix api添加zabbix agent到zabbix web

[code]#!/bin/bash zabbix_server="10.76.0.246" HOST="10.76.0.184" #获取TOKEN值并赋予变量 TOKEN=$(curl -s -XPOST -H "Content-Type: application/json-rpc" -d ' { "jsonrpc": "2.0", "method": "user.login", "params": { "username": "Admin", "password": "zabbix" }, "id": 1 }' "http://${zabbix_server}/api_jsonrpc.php" | jq -r .result) curl -s -X POST -H "Content-Type: application/json-rpc" -d ' { "jsonrpc": "2.0", "method": "host.create", "params": { "host": "'$HOST'", "name": "'linux-$HOST'", "interfaces": [ { "type": 1, "main": 1, "useip": 1, "ip": "'$HOST'", "dns": "", "port": "10050" } ], "groups": [ { "groupid": "2" } ], "templates": [ { "templateid": "10001" } ] }, "id": 1, "auth": "'$TOKEN'" }' http://${zabbix_server}/api_jsonrpc.php | python3 -m json.tool[/code]

7.使用granfana构建监控图形。

 使用grafana构建监控网络装备的图形


来源:https://www.jb51.net/server/326232jte.htm
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
关闭

站长推荐上一条 /6 下一条

QQ|手机版|小黑屋|梦想之都-俊月星空 ( 粤ICP备18056059号 )|网站地图

GMT+8, 2025-7-1 18:01 , Processed in 0.034239 second(s), 19 queries .

Powered by Mxzdjyxk! X3.5

© 2001-2025 Discuz! Team.

返回顶部