zabbix server&proxy部署操作过程
系统:ubuntu20.04 zabbix版本: 5.4
安装zabbix server
安装方式: 包管理安装,docker,源码,appliance
当前部署方式: 包管理
- 添加 repository
wget https://repo.zabbix.com/zabbix/5.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_5.4-1+ubuntu20.04_all.deb
dpkg -i zabbix-release_5.4-1+ubuntu20.04_all.deb
apt update
- 安装Zabbix server,Web前端,agent
apt install zabbix-server-mysql zabbix-frontend-php zabbix-nginx-conf zabbix-sql-scripts zabbix-agent
- 安装数据库(根据上面安装的数据库选择,当前MySQL)
apt install mysql-server
mysql_secure_installation # 配置向导
- 创建初始数据库
mysql -uroot -p
#输入密码
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> create user zabbix@localhost identified by '密码'; # 自己设置密码
mysql> grant all privileges on zabbix.* to zabbix@localhost;
mysql> quit;
导入初始架构和数据:
zcat /usr/share/doc/zabbix-sql-scripts/mysql/create.sql.gz | mysql -uzabbix -p zabbix
- 为Zabbix server配置数据库
vim /etc/zabbix/zabbix_server.conf
配置选项中的DBPassword=密码
- 为Zabbix前端配置PHP
vim /etc/zabbix/nginx.conf
listen 80;
server_name example.com;
- 启动Zabbix server和agent进程
启动各服务&设置为开机自启
systemctl restart zabbix-server zabbix-agent nginx php7.4-fpm
systemctl enable zabbix-server zabbix-agent nginx php7.4-fpm
- 登陆配置的IP/地址访问,初始化
浏览器打开IP/地址访问,首次打开会有初始化步骤。按照引导完成。
安装zabbix_proxy
proxy与之前记录Zabbix-Proxy 部署和运行类似。
Zabbix proxy 使用场景:
1.监控远程区域设备
2.监控本地网络不稳定区域
3.监控上千设备时,减轻 zabbix server 的负荷
4.简化分布式监控的维护
Zabbix proxy 数据库必须和 server 数据库分开,否则 Zabbix server 数据库会被破坏。
注意从 zabbix server 数据库直接更新最新配置的 proxy 可能会比 Zabbix server 更快生效。当 Zabbix server 由于设置 缓存更新周期 的原因而无法快速更新时,proxy 收集发送到 Zabbix server 的数据可能会被忽略。
proxy 收集到数据都先存储在本地,然后在一定时间后传给 Zabbix server,这样就不会因为暂时无法连接zabbix server而丢失数据。本地保留时间由 proxy配置文件中参数 ProxyLocalBuffer 和 ProxyOfflineBuffer 决定。
- 添加 repository
wget https://repo.zabbix.com/zabbix/5.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_5.4-1+ubuntu20.04_all.deb
dpkg -i zabbix-release_5.4-1+ubuntu20.04_all.deb
apt update
- 安装数据库(MySQL)
apt install mysql-server
- 添加proxy所需库
apt install zabbix-proxy-mysql
- 创建初始数据库
mysql -uroot -p
#输入密码
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> create user zabbix@localhost identified by '密码'; # 自己设置密码
mysql> grant all privileges on zabbix.* to zabbix@localhost;
mysql> quit;
- 导入数据
zcat /usr/share/doc/zabbix-proxy-mysql/schema.sql.gz | mysql -uzabbix -p zabbix
- proxy配置数据库
vin /etc/zabbix/zabbix_proxy.conf DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=密码
- 启动proxy
- 启动服务&开机启动
systemctl restart zabbix-proxy
systemctl enable zabbix-proxy
- server中配置proxy
- Administration -> Proxies -> Creat Proxy
正常无其他额外设置时, 只需要填写Proxy Name选项,mode默认Active。
Proxy Name 需要与Proxy服务中HostName配置相同才能正常通讯。
编辑proxy配置
vim /etc/zabbix/zabbix_proxy.conf
Server=Server地址
HostName=xxxxx唯一的proxy name,与server配置时proxy name 必须一样。
- proxy监控任务
在host菜单中:
可以把指定host的 Monitored by proxy
选项选中proxy。
或者通过Mass update
按钮,在列表多选host操作。