在这之前,先看以下关于该报错的说明:
如果你是在监控端看到这条消息,也就是安装了WEB页面的服务器上看到这个消息,并且本机可用性和ZBX小字显示红色(也就是你这台机在监控别的机子时也在监控自身)
分两种情况:
第一种报错:Failed to accept an incoming connection: connection from "xxx.xxx.xxx.xxx(本机ip) " rejected, allowed hosts: "127.0.0.1"
那么web的本机配置信息(即在web页面名称为zabbix server的主机)端口要修改为127.0.0.1:10050
第二种报错:Failed to accept an incoming connection: connection from "127.0.0.1" rejected, allowed hosts: "xxx.xxx.xxx.xxx(本机ip)"
那么web的本机配置信息(即在web页面名称为zabbix server的主机)端口要修改为xxx.xxx.xxx.xxx(本机ip):10050
如果你是在被监控端看到这条消息,并且WEB页面可用性和ZBX小字显示红色,按照下面方式检查 zabbix_agentd.conf 文件配置
如果 并且WEB页面可用性和ZBX小字显示绿色,也就是服务正常运行但仍出现该报错,不用管他,因为zabbix_agentd服务是建立在 zabbix_server服务基础上的,无论是监控端还是被监控端,这两个服务都要同时运行。但zabbix_agentd 是负责接受监控请求的,也就是被监控端主要依赖这个服务,而 zabbix_server服务是专门发送监控请求的,即监控端一定要装着这个服务。在你的被监控端你只配置了zabbix_agentd来处理监控端发出的监控请求,但是你忘记zabbix_server服务也在运行啊!!!那玩意也在尝试监控你的被监控端,此时你所谓的"被监控端"更像一个功能不完整的监控端,在你的被监控端,zabbix_server服务在尝试监控自身,即127.0.0.1,但你的zabbix_agentd.conf配置时只允许你的监控端ip访问,127.0.0.1被拒绝了,所以在监控端的web页面显示正常但仍报错,但对服务没有影响的!
我就是觉得奇怪,明明被监控端不用监控服务偏要给他捆绑到一起,服了



如果zabbix_agentd.conf 文件配置错误,仔细检查
vim /usr/local/zabbix/etc/zabbix_agentd.conf
在被监控的主机上定位到 /usr/local/zabbix-server/etc/zabbix_agentd.conf,把里面乱七八糟的东西删掉,写入以下内容
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
Server=#监控端(主控端)的ip
ServerActive=#监控端(主控端)的ip
Hostname=#在web页面填写的主机名称
ServerActive和server都填监控端的IP!不是被监控端的ip!!!不是本机ip!!!
哪台机子监控你的就填它的ip
hostname名称如下图:必须要填对,不然会报错!这个坑很久才出来
hostname是你取的主机名称!!!

保存
然后到/var/log文件夹下新建一个文件夹,命名为zabbix,再在zabbix文件夹内新建一个文件,命名为zabbix_agentd.log

将这个文件权限更改为777(可公共读写)

完成
注意:log文件没有创建也可能导致服务无法运行!或者没有权限无法写入日志也是一个原因!仔细检查!
看看更多关于Zabbix的文章,助你更快成功部署zabbix!
文章评论