使用现有模板和监控项监控主机流程
在被监控的主机上安装Zabbix Agent ,建议和 Zabbix Server 同一个版本
配置 Zabbix agent的配置文件关键两项,并重启服务生效
--> Server = <Zabbix_Server_IP>
--> Hostname=<本机IP>
在Zabbix Server 上使用 zabbix_get 工具测试是否正常连接被监控主机
在Zabbix Server 添加被监控主机
在Zabbix WEB 添加已有的模板至被监控的主机
在Zabbix WEB 观察是否有新数据生成
下面是具体案例
- 在被监控的主机上安装Zabbix Agent ,建议和 Zabbix Server 同一个版本
Zabbix Agent 需要安装到被监控的主机上,它负责定期收集各项数据,并发送到zabbix server端,zabbix server将数据存储到数据库中,zabbix web 访问数据库在前端进行展现和绘图。
案例:在被监控的主机上安装Zabbix Agent
#包安装 Zabbix Agent
可以从官方或国内镜像站点下载
https://repo.zabbix.com/zabbix/
https://mirrors.aliyun.com/zabbix/zabbix/
https://mirror.tuna.tsinghua.edu.cn/zabbix/zabbix/
案例:范例:在ubuntu22.04 安装 Zabbix Agent2 6.0
[root@ubuntu2204 ~]#wget https://repo.zabbix.com/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.0-4%2Bubuntu22.04_all.deb
--2022-12-22 14:05:07-- https://repo.zabbix.com/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.0-4%2Bubuntu22.04_all.deb
正在解析主机 repo.zabbix.com (repo.zabbix.com)... 178.128.6.101, 2604:a880:2:d0::2062:d001
正在连接 repo.zabbix.com (repo.zabbix.com)|178.128.6.101|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度: 3676 (3.6K) [application/octet-stream]
正在保存至: ‘zabbix-release_6.0-4+ubuntu22.04_all.deb’
zabbix-release_6.0-4+ubuntu 100%[===========================================>] 3.59K --.-KB/s 用时 0s
2022-12-22 14:05:07 (1.73 GB/s) - 已保存 ‘zabbix-release_6.0-4+ubuntu22.04_all.deb’ [3676/3676])
[root@ubuntu2204 ~]#dpkg -i zabbix-release_6.0-4+ubuntu22.04_all.deb
正在选中未选择的软件包 zabbix-release。
(正在读取数据库 ... 系统当前共安装有 146065 个文件和目录。)
准备解压 zabbix-release_6.0-4+ubuntu22.04_all.deb ...
正在解压 zabbix-release (1:6.0-4+ubuntu22.04) ...
正在设置 zabbix-release (1:6.0-4+ubuntu22.04) ...
[root@ubuntu2204 ~]#apt update
命中:1 http://mirrors.ustc.edu.cn/ubuntu jammy InRelease
获取:2 http://mirrors.ustc.edu.cn//ubuntu jammy-security InRelease [110 kB]
获取:3 https://repo.zabbix.com/zabbix-agent2-plugins/1/ubuntu jammy InRelease [4,952 B]
获取:4 http://mirrors.ustc.edu.cn/ubuntu jammy-security InRelease [110 kB]
获取:5 https://repo.zabbix.com/zabbix/6.0/ubuntu jammy InRelease [4,958 B]
获取:6 https://repo.zabbix.com/zabbix-agent2-plugins/1/ubuntu jammy/main Sources [1,002 B]
获取:7 https://repo.zabbix.com/zabbix-agent2-plugins/1/ubuntu jammy/main amd64 Packages [624 B]
获取:8 https://repo.zabbix.com/zabbix/6.0/ubuntu jammy/main Sources [1,953 B]
获取:9 https://repo.zabbix.com/zabbix/6.0/ubuntu jammy/main amd64 Packages [5,505 B]
获取:10 http://mirrors.ustc.edu.cn/ubuntu jammy-updates InRelease [114 kB]
获取:11 http://mirrors.ustc.edu.cn/ubuntu jammy-proposed InRelease [270 kB]
获取:12 http://mirrors.ustc.edu.cn/ubuntu jammy-backports InRelease [99.8 kB]
[root@ubuntu2204 ~]#apt install zabbix-agent2 zabbix-agent2-plugin-*
正在读取软件包列表... 完成
正在分析软件包的依赖关系树... 完成
正在读取状态信息... 完成
注意,根据Glob 'zabbix-agent2-plugin-*' 选中了 'zabbix-agent2-plugin-mongodb'
注意,根据Glob 'zabbix-agent2-plugin-*' 选中了 'zabbix-agent2-plugin-postgresql'
建议安装:
logrotate
下列【新】软件包将被安装:
zabbix-agent2 zabbix-agent2-plugin-mongodb zabbix-agent2-plugin-postgresql
升级了 0 个软件包,新安装了 3 个软件包, 要卸载 0 个软件包,有 46 个软件包未被升级。
需要下载 9,384 kB 的归档。
解压缩后会消耗 31.9 MB 的额外空间。
获取:1 https://repo.zabbix.com/zabbix/6.0/ubuntu jammy/main amd64 zabbix-agent2-plugin-mongodb amd64 0:1.2.0-2+ubuntu22.04 [2,937 kB]
获取:2 https://repo.zabbix.com/zabbix/6.0/ubuntu jammy/main amd64 zabbix-agent2-plugin-postgresql amd64 0:1.2.0-2+ubuntu22.04 [2,388 kB]
获取:3 https://repo.zabbix.com/zabbix/6.0/ubuntu jammy/main amd64 zabbix-agent2 amd64 1:6.0.12-1+ubuntu22.04 [4,059 kB]
已下载 9,384 kB,耗时 6秒 (1,666 kB/s)
debconf: 因为并未安装 apt-utils,所以软件包的设定过程将被推迟
正在选中未选择的软件包 zabbix-agent2-plugin-mongodb。
(正在读取数据库 ... 系统当前共安装有 146072 个文件和目录。)
准备解压 .../zabbix-agent2-plugin-mongodb_0%3a1.2.0-2+ubuntu22.04_amd64.deb ...
正在解压 zabbix-agent2-plugin-mongodb (1.2.0-2+ubuntu22.04) ...
正在选中未选择的软件包 zabbix-agent2-plugin-postgresql。
准备解压 .../zabbix-agent2-plugin-postgresql_0%3a1.2.0-2+ubuntu22.04_amd64.deb ...
正在解压 zabbix-agent2-plugin-postgresql (1.2.0-2+ubuntu22.04) ...
正在选中未选择的软件包 zabbix-agent2。
准备解压 .../zabbix-agent2_1%3a6.0.12-1+ubuntu22.04_amd64.deb ...
正在解压 zabbix-agent2 (1:6.0.12-1+ubuntu22.04) ...
正在设置 zabbix-agent2-plugin-postgresql (1.2.0-2+ubuntu22.04) ...
正在设置 zabbix-agent2-plugin-mongodb (1.2.0-2+ubuntu22.04) ...
正在设置 zabbix-agent2 (1:6.0.12-1+ubuntu22.04) ...
Created symlink /etc/systemd/system/multi-user.target.wants/zabbix-agent2.service → /lib/systemd/system/zabbix-agent2.service.
debconf: 无法初始化前端界面:Dialog
debconf: (没有安装任何可用的对话框类程序,所以无法使用基于此种形式的界面。 at /usr/share/perl5/Debconf/FrontEnd/Dialog.pm line 78.)
debconf: 返回前端界面:Readline
Scanning processes...
Scanning linux images...
Running kernel seems to be up-to-date.
No services need to be restarted.
No containers need to be restarted.
No user sessions are running outdated binaries.
No VM guests are running outdated hypervisor (qemu) binaries on this host.
[root@ubuntu2204 ~]#
案例: 将Zabbix Server的MySQL 数据库迁移到独立的MySQL服务器
#停止 Zabbix 服务
[root@zabbix-server ~]#systemctl stop zabbix-server.service
#备份数据库
[root@zabbix-server ~]#mysqldump -uroot -A -F --single-transaction >
/data/all.sql
[root@zabbix-server ~]#systemctl disable --now mysql
#在独立数据库服务器上安装并恢复数据库
[root@mysql-server ~]#apt -y install mysql-server
[root@mysql-server ~]#vim /etc/mysql/mysql.conf.d/mysqld.cnf
#注释两行
#bind-address = 127.0.0.1
#mysqlx-bind-address = 127.0.0.1
[root@mysql-server ~]#systemctl restart mysql
[root@mysql-server ~]#mysql < all.sql
#重新授权用户允许远程连接zabbix数据库
[root@mysql-server ~]#mysql
mysql>create user zabbix@'10.0.0.%' identified by '123456';
mysql>grant all privileges on zabbix.* to zabbix@'10.0.0.%';
#将php的配置指向新的数据库服务器IP
[root@zabbix-server ~]#vim /usr/share/zabbix/conf/zabbix.conf.php
$DB['SERVER'] = '10.0.0.101';
#将Zabbix Server的配置指向新的数据库服务器IP
[root@zabbix-server ~]#vim /etc/zabbix/zabbix_server.conf
DBHost=10.0.0.101
DBPort=3306
#重启服务生效
[root@zabbix-server ~]#systemctl start zabbix-server.service
- 配置 Zabbix agent的配置文件关键两项,并重启服务生效
- Server = <Zabbix_Server_IP>
Hostname=<本机IP>
[root@ubuntu2204 ~]#vim /etc/zabbix/zabbix_agent2.conf
Server=zabbix.mooreyxia.org
[root@ubuntu2204 ~]#systemctl restart zabbix-agent2
[root@ubuntu2204 ~]#systemctl enable zabbix-agent2
Synchronizing state of zabbix-agent2.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable zabbix-agent2
[root@ubuntu2204 ~]#systemctl status zabbix-agent2
● zabbix-agent2.service - Zabbix Agent 2
Loaded: loaded (/lib/systemd/system/zabbix-agent2.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2022-12-22 14:08:52 CST; 7s ago
Main PID: 3505 (zabbix_agent2)
Tasks: 8 (limit: 2196)
Memory: 4.5M
CPU: 60ms
CGroup: /system.slice/zabbix-agent2.service
└─3505 /usr/sbin/zabbix_agent2 -c /etc/zabbix/zabbix_agent2.conf
12月 22 14:08:52 ubuntu2204.wang.org systemd[1]: Started Zabbix Agent 2.
12月 22 14:08:52 ubuntu2204.wang.org zabbix_agent2[3505]: Starting Zabbix Agent 2 (6.0.12)
12月 22 14:08:52 ubuntu2204.wang.org zabbix_agent2[3505]: Zabbix Agent2 hostname: [Zabbix server]
12月 22 14:08:52 ubuntu2204.wang.org zabbix_agent2[3505]: Press Ctrl+C to exit.
[root@ubuntu2204 ~]#ss -nltp
State Recv-Q Send-Q Local Address:Port Peer Address:Port Process
...
LISTEN 0 4096 *:10050 *:* users:(("zabbix_agent2",pid=3505,fd=9))
#注意: 后续还需要在Zabbix Server 添加此主机才能实现监控
- 在Zabbix Server 上使用 zabbix_get 工具测试是否正常连接被监控主机
案例:使用 zabbix_get 工具测试是否正常连接被监控主机
[root@ubuntu2204 ~]#apt install -y zabbix-get
正在读取软件包列表... 完成
正在分析软件包的依赖关系树... 完成
正在读取状态信息... 完成
下列【新】软件包将被安装:
zabbix-get
升级了 0 个软件包,新安装了 1 个软件包, 要卸载 0 个软件包,有 46 个软件包未被升级。
需要下载 85.8 kB 的归档。
解压缩后会消耗 316 kB 的额外空间。
获取:1 https://repo.zabbix.com/zabbix/6.0/ubuntu jammy/main amd64 zabbix-get amd64 1:6.0.12-1+ubuntu22.04 [85.8 kB]
已下载 85.8 kB,耗时 1秒 (72.1 kB/s)
debconf: 因为并未安装 apt-utils,所以软件包的设定过程将被推迟
正在选中未选择的软件包 zabbix-get。
(正在读取数据库 ... 系统当前共安装有 106401 个文件和目录。)
准备解压 .../zabbix-get_1%3a6.0.12-1+ubuntu22.04_amd64.deb ...
正在解压 zabbix-get (1:6.0.12-1+ubuntu22.04) ...
正在设置 zabbix-get (1:6.0.12-1+ubuntu22.04) ...
....
[root@ubuntu2204 ~]#zabbix_get -V
zabbix_get (Zabbix) 6.0.12
Revision 126aa2f53e9 5 December 2022, compilation time: Dec 5 2022 08:44:24
Copyright (C) 2022 Zabbix SIA
License GPLv2+: GNU GPL version 2 or later <https://www.gnu.org/licenses/>.
This is free software: you are free to change and redistribute it according to
the license. There is NO WARRANTY, to the extent permitted by law.
This product includes software developed by the OpenSSL Project
for use in the OpenSSL Toolkit (http://www.openssl.org/).
Compiled with OpenSSL 3.0.2 15 Mar 2022
Running with OpenSSL 3.0.2 15 Mar 2022
[root@ubuntu2204 ~]#zabbix_get -s 127.0.0.1 -k "agent.ping"
1
[root@ubuntu2204 ~]#zabbix_get -s 10.0.0.200 -k "agent.ping"
zabbix_get [33972]: Check access restrictions in Zabbix agent configuration
[root@ubuntu2204 ~]#zabbix_get -s 10.0.0.202 -k "agent.ping"
1
[root@ubuntu2204 ~]#zabbix_get -s 10.0.0.8 -k "agent.ping"
1
- 在Zabbix Server 添加被监控主机
案例:监控 Linux 主机
- 在Zabbix WEB 添加已有的模板至被监控的主机
模板是一些事先定义好的相关监控项的集合,直接关联模板,比一个一个加入监控项要方便很多
模板分为内置模板和自定义模板
内置模板参看:
https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates
内置的监控项
https://www.zabbix.com/documentation/5.0/zh/manual/config/items/itemtypes/zabbix_agent
- 在Zabbix WEB 观察是否有新数据生成
[root@rocky8 ~]#free -h
total used free shared buff/cache available
Mem: 2.7Gi 333Mi 1.7Gi 16Mi 673Mi 2.2Gi
Swap: 2.0Gi 0B 2.0Gi
[root@rocky8 ~]#dd if=/dev/zero of=/dev/null bs=1G count=1000
我是moore,大家一起加油!