Zabbix agent on Zabbix server is unreachable

Zabbix agent on Zabbix server is unreachable,第1张

由于某种原因,我出现了这个问题。。。。此处省去一万个感叹号。

Zabbix agent on Zabbix server is unreachable,中间的Zabbix server 可以改为任何一个主机

在安装好zabbix之后,我监听自己的主机。

然后

在这张图片中:

由于我是在A机器上装了zabbix-server和zabbix-agent,然后我为了进行测试,我就直接用A机器上的zabbix来监听A机器。这样子的话,agent代理程序接口的IP 地址

就填127.0.0.1吧,因为是自己监听自己,127.0.0.1相当于监听本机。

然后上面的主机名称就写成

但是上面图片我却不是这样子做的,也可以监听到本机。这两种方法得到的结果虽然是一样的,但是他们走的路并不一样。上图中填写的主机名是:

然后agent代理程序接口的IP 地址填写的是:

然后在/ect/zabbix/zabbix_agentd.conf中的

可以添加(用英文输入法的逗号隔开):

添加后结果如下:

保存一下文件,重启zabbix-agent就行

这种方式是通过外网来监听本机A的,而上面的127.0.0.1是通过内网来监听本机A的。

而在实际过程中,我们一般会用A机器去监听B机器,C机器,D机器等等等。

到zabbix 的web页面,点击配置---->主机---->点击右上角的 添加主机。

主机名称 : 在 agent 端配置文件里面配置的 hostname 是什么这里就写什么

可见的名称 : 自定义

群组 : 自定义

agent代理程序的接口 : agent 的IP 跟 端口

然后点击模板 -----> 添加模板

Server:zabbix sever的列表,逗号间隔,agent对server端的主机限定。

ServerActive:健康检查,带端口的,agent主动往zabbix server发数据。

ListenPort:agent在被监控机器运行的程序端口。

Hostname:zabbix server配置的主机名称。

刚开始耍zabbix agent,建议不见使用docker,实际上,容易变动的,我都不建议使用docker,整理镜像是一件非常麻烦的事情。因为镜像都是非常精简的,万一你需要的功能没有,你是解决掉所有的依赖,来添加到镜像,还是在服务器中执行yum install来得方便?还有一点就是,使用docker,会让你很难入门,因为容器启动失败,都不知道报错对应位置的配置,或者不了解具体的报错指代。

环境:

K8s集群:211-214

被监控机器:jenkins服务器:123

Agent的安装,参考了这篇博客:

https://blog.csdn.net/qq_15760109/article/details/79443339

我是从“安装zabbix 软件源”开始的,因为都是自己用的机器,防火墙一开始就关闭了。

执行了以下两条命令:

rpm -ivh http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm

yum install zabbix-sender zabbix-agent zabbix-get -y

查看启动日志

遇到这样的报错,先把selinux关闭,再重启agent看一下:

如果需要其他版本的agent,就把URL路径修改一下就好了。

安装好agent之后,就是要修改配置了。配置中首先肯定是要指定zabbix server的ip端口的,能够安装agent自动插入数据到zabbix服务,那自然是最好的。不过实际情况是不支持。需要定制 *** 作。

看了几篇资料,感觉说得云里雾里的。

总的是要修改四个配置项:

Server

ServerActive

ListenPort

Hostname

看了配置文件说明,结合自己的测试结果,

这个,就是指明zabbix server的ip地址,是ip地址,不是127.0.0.1,不带端口的那种。因为我这边的zabbix server是在k8s集群中,所以我把work集群都配置上了。这个必须要配置上。如果只配置208的话,在zabbix分发到212的时候,212主动发起tagent连接,那就会报错:

所以,稳妥起见,work节点都配置上。

这个是健康检查的东东,要配置IP端口,不是127.0.0.1,那毫无疑问是配置208的31110端口了,任意K8节点都可以,端口都是31110,31110为k8s的zabbix server 10051端口的映射。

这个指的是本地agent绑定的端口,不是zabbix server的端口。

这个就是zabbix配置的host名称,不是/etc/hosts里配置的别名,也不是域名。

好了四个配置都说完了,倒回来看,我觉得ServerActive不配置是不可以的,因为我zabbix端口对于agent来说是修改了的,怎么知道服务端口是什么,是吧,所以,这个应该不是简单的心跳检查什么的,应该就是监控数据传输用的。或者是,zabbix并不是agent主动发回数据的,而是server端过来拿的,这样,即使不配置ServerActive,zabbix也能拿到监控数据。

至于如果要修改agent端口的话,就是修改ListenPort参数,然后主机接口配置那一块的端口对应上。

Server:zabbix sever的列表,逗号间隔,agent对server端的主机限定。

ServerActive:健康检查,带端口的,agent主动往zabbix server发数据。

ListenPort:agent在被监控机器运行的程序端口。

Hostname:zabbix server配置的主机名称。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12063543.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存