Finer04's Blog
首页
乱写一通
脑洞破文
随便谈谈
当前播放.page
快速搭建 Zabbix-Proxy (并不)
Finer04
September 30, 2019
2880 字
文章目录
**其实最快的方法就是弄 Docker,所以这是快速版搭建** 我在公司做的是网络监控,主要是不同运营商的节点对不同省份地区的进行监测,评价网络质量主要是时延和丢包率,但我们不可能用 Ping -t 一直测,我也不知以前的同事为什么可以把用于服务器监控的 Zabbix 改造成只监测网络,所以我就把目前公司这个网络质量监测为基础,我的大学毕业论文就是写这个相关的。 ## 背景 随着业务量的增多,根据领导或其他部门的同事的需求,我们也会对新的运营商出口搭建一个节点,主要是利用 Zabbix 的 “简单检查” 的功能,可以用 Zabbix-Proxy 对远程 IP 进行实时 ICMP 监测,当然这个 Zabbix 就自带这个模板,比较麻烦的在于怎么部署 Zabbix-Proxy,其实搭多了步骤也很清晰: 1. Linux环境(主要用 CentOS) 2. 部署 mariadb-server、添加 Zabbix-repo 源 3. 修改配置文件 4. 开启服务 ## 前置 记得关掉 Selinux,防火墙要配好,可以连通 server 的IP,需要放行好 10050:10051 端口 ## 搭建 本文以 3.x 为例,4.x 步骤一致,只是第一步就选对什么版本而已。配置基本照抄官方文档即可 打开 Zabbix 的官网,直接打开 [Download 页](https://www.zabbix.com/cn/download?zabbix=3.0&os_distribution=red_hat_enterprise_linux&os_version=8&db=mysql) ### 部署版本源 # rpm -Uvh https://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm # yum clean all ### 安装数据库、Zabbix-proxy 数据库我这边默认使用 MySQL,zabbix-agent 我也会顺便搭建,但不想监测节点健康的话可以跳过 # yum install mariadb-server zabbix-proxy ### 添加数据库 Zabbix-proxy 其实是无前端的 Zabbix-server,数据库架构要与 Zabbix-server 架构一致才能一起工作 # mysql -uroot -p password # 其实一般用 yum 安装是没有密码的 mysql> create database zabbix character set utf8 collate utf8_bin; # 建立 zabbix 数据库 mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'password'; # 给 zabbix 数据库赋权,账号为 zabbix,密码为 password mysql> flush privileges; #刷新权限 mysql> quit; ### 导入 proxy 的 SQL 文件到数据库 用 zcat 命令解压并输出内容,利用管道导入到 zabbix 数据库 zcat /usr/share/doc/zabbix-proxy*/schema.sql.gz | mysql -u zabbix -p zabbix ### 改一波配置 前面都搭建好的话,那我们只需更改 proxy 的配置文件就好了。以下的关键点,善用 vim 的 "/" 的搜索功能 [root@izwzz ~]# cat /etc/zabbix/zabbix_proxy.conf | grep "^[^#]" Server=103.x.x.x # server 的 IP 地址 Hostname=aliyun88-sz # 该 proxy 的名称,该名称在 server 前端添加名字就要输入这个 EnableRemoteCommands=1 # 是否开启远程命令(看业务) DBName=zabbix # 数据库名 DBUser=zabbix # 数据库的用户名 DBPassword=password # 数据库的密码 ### 开启服务测试 我局的OK了,直接开启相应的服务。正式要使用的时候一定要记得 enable,否则服务器重启后服务不会自己起来 systemctl start mariadb systemctl start zabbix-proxy ### 在 Server 前端添加主动式的 Zabbix-proxy 回到 Zabbix-proxy 的前端页面,点击 `[管理] - [agent代理程序]`,再点击右上角创建代理,填写以下内容,其中 `agent代理程序名称一定是配置文件的 Hostname 才行`  (图片是用论文的图片,我懒得上前端了) 选择程序模式,我们一般是使用主动式,因为: - 主动式:Proxy 自己发送数据到 Server 服务器,适合内网穿透,分担 Server 压力,在监测内网交换机非常有用 - 被动式:Server 自己去请求 Proxy 获取数据,需要有公网资源,消耗 Server 的网络资源 ## 排障 如果那么长时间都没数据,那肯定配置有误,我这边先把我遇到的错误总结一下吧。 首先一定得打开日志文件:/var/log/zabbix/zabbix_proxy.log - 如果看到`Permission denied`,那肯定是 SELinux 没关,请百度 - 如果看到`host x.x.x.x unreached`,那就是到达不了 Server 的 IP,需要检查防火墙或节点的安全组 - 很久没监测数据,只需重启 zabbix-proxy 进程就能获取数据了 # 总结  所以同事们快自己学会搭呀,别天天让我搭啊!!!!
Linux
运维
Zabbix
搭建
评论已关闭
▲ Top
评论已关闭