在实际生产环境中,我们可能需要将很多台主机添加到 Zabbix Server 里,我们进行手动添加的话,会比较麻烦、费时,而且还容易出错。所以一般我们会设置主机自动注册。这样就比较方便。

官方文档链接 : 点我

针对zabbix agent 设置参数做下特别说明

  • Server

    指定可以连接本 agent 的 Zabbix Server 或者 Zabbix Proxy 的 IP 。

  • ServerActive

    参数是用于在 自动注册和 主动监控(监控项)用的参数,设置为 zabbix server 或者是 zabbix proxy 的 IP。

  • Hostname

    我们需要设置 Hostname ,因为我们将在 动作中的触发条件中使用,如果你没有在zabbix_agentd.conf中特别定义Hostname, 则服务器将使用agent的系统主机名命名主机。Linux中的系统主机名可以通过运行hostname命令获取。最后成功添加的主机名称也是该选项设置的值。

一、 通过 agent 自动注册到 zabbix server (官方)

划重点:发起点就是: zabbix-agent

涉及配置:配置---》动作--》自动注册

主机自动注册配置涉及两块:

  • agent 配置
  • 动作-自动注册

一、 agent 配置

需要配置的参数

  • Server : 配置为 Zabbix Server 或者 Zabbix Proxy 的 IP。
  • ServerActive :配置为 Zabbix Server 或者 Zabbix Proxy 的 IP。如果端口改变了,需要在后面加上端口。
  • Hostname:设置主机的名称。

我们也可以使用其它参数值进行设置然后在触发条件中,例如 HostMetadataHostMetadataItem

二、动作-自动注册

配置 ---》 动作 ----》 自动注册 ---》 创建动作。

动作需要设置触发条件,我们可能只需要将自动发现的符合某个条件主机添加到某个主机群组。所以我们这里需要设置触发条件。可以通过 主机名称、主机元数据、zabbix proxy 来设置触发条件。

操作:也就是自动发现的主机符合前面设置条件后需要设置的操作,比如添加到某个群组,链接到某个模板等等。

注意事项

  • 如果我们设置好了,上面的配置后,但是发现没有主机注册,我们可以看看是不是我们 zabbix server 或者 zabbix proxy的监听的端口在防火墙(或者是安全组)有没有开放。默认监听端口是 10051。
  • 如果我们可以看到主机注册成功了,但是 agent 的状态一直不是活跃的,那么我们可以看看我们 zabbix agent 的监听的端口在防火墙(或者是安全组)没有开放。默认监听端口是 10050。

二、通过 zabbix server 自动发现来添加主机

划重点:发起点就是: zabbix server

涉及配置:配置---》动作--》自动发现,配置---》自动发现

zabbix agent 配置

由于发起点是 zabbix server,所以我们在配置参数时,只需要配置 ServerHostname,然后将 ServerActive参数注释。如果我们没有注释该参数,则又会进行自动注册了。如果我们没有设置自动注册项的话,该参数不注释也可以的。

Zabbix server 配置

设置自动发现规则

设置动作-自动发现-创建动作

设置动作的触发条件,就是匹配我们自动发现出来的主机,当自动发现的主机符合触发条件,就添加到 指定的主机组和链接到指定的模板。

设置操作,链接模板,添加到主机群组。

我们可以在 监测---》自动发现查看到我们自动发现到的主机。

三 脑洞大开

脑洞大开一

在思考这个场景的过程中,我想过当 zabbix agent 没有固定ip(公司内部服务器),我们该如何监控,我想可以通过让该主机自动注册到 zabbix server,然后使用 主动发送模式,也就是由 zabbix-agent 自动发送监控数据到 zabbix server,记住我们这里需要设置所有的监控项类型为 zabbix agent(主动式)。 问题点在于: 当客户端IP 变了,zabbix server 是重新添加一个新的 host,还是会自动识别 ,经过测试,发现 zabbix server 不会添加新的主机,也不会更改 之前主机的IP,但是数据是正常采集的,zabbix agent 是会有一个报错。

脑洞大开二

当把 zabbix server 放置在内网,没有固定ip,那么是否可以实现监控呢?我思考了下,是发现不可以的,原因有一点,就是 既然 zabbix server 没有固定ip,所以采用的模式是被动,那么在 zabbix -agent 要设置一个 Server 参数,这个参数的意义是允许哪个 ip 连接我的 agent 的。但是我们的 zabbix server 有没有固定 IP。所以方法是行不通的。

Zabbix 设置自动添加主机两种方法(自动注册、自动发现)的更多相关文章

  1. 代码操作Word时,目录自动更新的两种方法

    最近的项目中有一个功能点为:根据分析数据库并生成报告.不过不是大数据.数据挖掘之类,报告的内容.组织方式都是事先固定下来的.实现的方式为,在普通word文档中插入书签制成模板,然后程序使用OpenXM ...

  2. C# web api返回类型设置为json的两种方法

    web api写api接口时默认返回的是把你的对象序列化后以XML形式返回,那么怎样才能让其返回为json呢,下面就介绍两种方法: 方法一:(改配置法) 找到Global.asax文件,在Applic ...

  3. ZBrush中设置背面遮罩的两种方法

    背面遮罩是ZBrush软件实时遮罩的一种,它的出现能够解决我们在模型雕刻时的一些问题.我们在 ZBrush®中雕刻一个比较薄的物体时,经常会不经意的雕刻到背面的物体.那么遇到此类状况该如何设置ZBru ...

  4. C# web api 返回类型设置为json的两种方法

    每次写博客,第一句话都是这样的:程序员很苦逼,除了会写程序,还得会写博客!当然,希望将来的一天,某位老板看到此博客,给你的程序员职工加点薪资吧!因为程序员的世界除了苦逼就是沉默.我眼中的程序员大多都不 ...

  5. qt 自动重启(两种方法)

    所谓自动重启就是程序自动关闭后在重新打开: 一般一个qt程序main函数如下: int main(int argc, char* argv[]) { QApplication app(argc, ar ...

  6. Android Studio自动排版的两种方法

    Android Studio这样的集成开发环境虽然代码自动化程度很高,但是自动化程度高导致人的自主性就下降了,而且总是依赖编辑器的功能也会搞得代码排版很别扭. 最难受的是你在Android Studi ...

  7. ios 设置屏幕方向的两种方法

    第一种:通过人为的办法改变view.transform的属性. 具体办法: view.transform一般是View的旋转,拉伸移动等属性,类似view.layer.transform,区别在于Vi ...

  8. 设置cell高度的两种方法(label高度的可变引起cell高度可变的情况)

    第一种:(iOS8以后可用) 在Xib或stroyboard中(代码也可以) 利用AutoLayout设置好label的约束(比如可以设置四个边都距离屏幕50等方式,必须四个边都要固定好). 在代码部 ...

  9. Vue-详解设置路由导航的两种方法: <router-link :to="..."> 和router.push(...)

    一.<router-link :to="..."> to里的值可以是一个字符串路径,或者一个描述地址的对象.例如: // 字符串 <router-link to= ...

随机推荐

  1. C#/WPF 仅启动一个进程实例

    如何实现仅启动一个 WPF 进程实例,并在打开第二个时,自动唤起之前打开的进程. 1 代码入口 在 App.xaml.cs 文件中,重写 OnStartup 方法,并添加 Mutex 进程锁. /// ...

  2. python将oracle数据库保存到excel

    上代码: import pandas as pd import SqlHelper.ORACLE as ORA if __name__ == '__main__': #连接数据库 ms = ORA.O ...

  3. go开发注意事项和dos的一些操作

    不需要加分号 写法 go编译器一行一行编译,所以多条语句不能写在同一行,否则会报错 go语言定义的变量或者import的包如果没有使用到,代码不能通过编译 func main() { ... } 只能 ...

  4. LinuxShell脚本——选择结构

    LinuxShell脚本——选择结构 摘要:本文主要学习了Shell脚本中的选择结构. if-else语句 基本语法 最简单的用法就是只使用if语句,它的语法格式为: if 条件 then 命令 fi ...

  5. springcloud vue 微服务分布式 activiti工作流 前后分离 集成代码生成器 shiro权限

    1.代码生成器: [正反双向](单表.主表.明细表.树形表,快速开发利器)freemaker模版技术 ,0个代码不用写,生成完整的一个模块,带页面.建表sql脚本.处理类.service等完整模块2. ...

  6. [转]Eclipse插件开发之基础篇(6) SWT简介

    原文地址:http://www.cnblogs.com/liuzhuo/archive/2010/09/01/eclipse_plugin_1_3_1.html SWT(Standard Widget ...

  7. 分布式系统ID的几种生成办法

    前言 一般单机或者单数据库的项目可能规模比较小,适应的场景也比较有限,平台的访问量和业务量都较小,业务ID的生成方式比较原始但是够用,它并没有给这样的系统带来问题和瓶颈,所以这种情况下我们并没有对此给 ...

  8. LG2375/LOJ2246 「NOI2014」动物园 KMP改造

    问题描述 LG2375 LOJ2246 题解 看了题解,需要回看,需要继续通过本题深入理解KMP. 为了将 \(\mathrm{KMP}\) 和只插入了一个模式串的\(\mathrm{AC}\)自动机 ...

  9. Python进阶-XVII 非python的接口类、多态、python自己的封装

    1.python模拟java中的接口类 python中是没有接口类的概念的,因为它支持多继承,但是java不能,所以就提出一个接口类的概念 java : 面向对象编程 设计模式 —— 接口 接口类 : ...

  10. 二分法查找(C语言)

    二分法是一种高效的查找方法,其适用于已经排好序的数组 基本思路 从数组最中间的数开始查找判断,若不是需要查找的数字,则比较大小,之后则在从中间分开的两边中的一边从最中间开始查找判断,以此类推 算法描述 ...