Zabbix内置的监测HTTPS服务状态使用的是Simple check,按照官方文档的说法zabbix server使用curl发起请求来测试https服务的连通性,但随之也引发了一些问题:
- 使用curl进行监测会出现各种不可预知的问题如TLS版本,server的支持等;
- 使用curl进行检测相对来说是一个相对耗时的操作;
- 尤其是对于纳管大量机器的情况下,我们通常使用客户端主动上报的方式来减轻zabbix server的压力。
那么,如果要替代系统内置的 net.tcp.service[https], 最佳的替代方案是使用zabbix提供的key net.tcp.listen[port]。
那么这个key的优势是什么呢?
Since Zabbix 3.0.0, on Linux kernels 2.6.14 and above, information about listening TCP sockets is obtained from the kernel’s NETLINK interface, if possible. Otherwise, the information is retrieved from /proc/net/tcp and /proc/net/tcp6 files.
由此可见使用net.tcp.listen[port]是最佳的选择。