
0.简介
尽管我进行了真正的搜索,但我没有在Habr上的NetXMS上找到任何文章。 仅出于这个原因,我决定编写此创作内容以便关注该系统。
这是一个教程,方法以及系统功能的简要概述。
本文包含对系统功能的简要分析和描述。 机会多多,我出于多种原因没有进行挖掘。 并且所有功能的描述将花费不止一篇文章。
由于我或多或少只与Zabbix一起工作-在本文中将经常提及该系统以与该主题进行比较。 此外,偶然发生的事情是将所有内容与公认的东西进行了比较。
1.什么和为什么?
从定义中可以看出,监视系统是一种系统,它使您可以随时获取任何网络节点\机器\路由器\上的最新信息,以输入所需的信息。
为什么这样做是必要的,这一点也很明显。 与时俱进。
通常,监视系统可以提供有关整个基础结构及其各个部分的状态的非常全面的信息。 另外,如果您设置了警报(没有任何监视,那毫无用处),那么我们将获得一个严肃的工具,使我们不仅可以及时应对紧急情况,而且在大多数情况下,可以防止此类事故的发生。
2.为什么选择NetXMS?
对于那些喜欢多书的人来说有点题外话所以,当我年轻而没有经验的时候...那么,通常所有的童话故事都开始了吗..总之,当我是一个极简主义者时,我研究了监视基础结构的问题,这些“研究”的结果是得出结论,没有什么比Zabbix更好的了。 在那一刻,我真的很喜欢他,因为他可以做很多事情,他可以做很多事情,并且可以通过自写脚本扩展他的功能,所以可以说,如果他的手从正确的地方伸出,他可以做任何事情。 但是Zabbix是一个非常复杂的工具。 我花了将近两个星期的时间才弄明白了。 这只是实施阶段。 然后再花几个星期来设置对我当时需要的一切的监控。 以及如何使用它查看路由器的端口状态(我读过,读过,害怕过并决定我并不需要它)……不,好吧,这对于大学毕业后没有准备的人来说真的很可怕……
几年后,随着日趋成熟,我决定该是时候刷新有关监视系统的知识了。 最后,进行正常,稳定的网络监控,因为随着网段的增长,分支机构的连接以及其他细节的出现,这一问题已迫在眉睫。 一切都在流动,一切都在变化。 我开始测试各种工具。 我将这个系统戴上,然后触摸它,然后再一个。 到处都是缺少的东西,到处都是不喜欢的东西。 要么界面不方便,要么调优,然后再折腾。 然后NetXMS为我服务。 顺便说一句:我在Zabbix工作了两个星期,在NetXMS那里工作了两个小时。 也许Zabbix的经验受到了影响,或者重点在于NetXMS本身……很难说。
事实证明,NetXMS非常易于安装和配置。 它具有适用于Windows和Linux的版本的服务器和管理控制台,图形化,内置的“浏览器”,可让您从管理控制台中通过http \ https协议连接到相同的路由器,并且该界面非常直观,并且具有用于任何操作系统。 简而言之,该系统非常简单方便。 乍看之下。
顺便说一句,他们拥有的文档是10中的8。主要内容已在其中指出,但是为了理解其细微差别,您需要更深入地研究。
开发人员指出的主要优点深度网络监控
在2级和3级自动检测,可视化和搜索连接的组件
全面的SNMPv3支持
通过扫描“探针”进行主动检测
基于来自受监视设备的信息的被动发现-ARP和路由表,接口
应用程序和服务器监控
您期望的所有基本指标:处理器,文件系统,I / O,内存,流量
用于监视Java应用程序的JMX桥
特定于应用程序的扩展:Oracle,MySQL,PostgreSQL,MongoDB,DB2,Tuxedo等
本机应用程序的集成API
专为大型网络而设计
一台服务器可以跨数千个设备跟踪数百个指标
全面支持分布式监控和水平扩展
监视重叠的IP子网
面向运营商和客户的灵活访问控制
3.我们深入
如何安装系统-
开发人员网站上有完整的管理
手册 ,并且没有什么复杂的事情,因此我不会就此停下来。 安装最困难的事情是将系统连接到数据库。选择DBMS和服务器OS只会有所不同。 因为已经有了Windows,所以选择了Windows(此后可输入数据)和MSSQL。
3.1。 开启自动检测
可以在安装过程中启用主机的自动发现。 如果由于某种原因未这样做,则可以始终将其包含在
“配置网络发现”中,或者单击具有相同名称的图标。 发现属性出现在工作空间中。 您需要通过切换到被动或主动模式来启用它,并指定其他属性,例如,轮询的子网。 在这里,您可以关闭筛选器,还可以选择和配置内置系统,并编写自己的脚本。 老实说,我不需要过滤器。 但是设置看起来非常友好和清晰。
您还可以在此处指定默认的SNMP社区及其凭据(读取授权)。
3.2。 添加节点
启用自动发现后,将添加终端节点(PC,打印机)并自动跨子网分布。 有了主动网络,事情就变得更加复杂了。
您应该首先在网络设备上启用SNMP并设置社区。 如果SNMP社区的默认值在网络节点的自动发现属性中未更改,则系统使用公共社区,并且可以为添加的节点(节点)的属性中的每个节点更改此设置。
为了方便起见,可以根据任何方便的原理对设备进行分组;为此,可以在树的Infrastructure Services分支中创建容器,并将Entrie Network的节点绑定到其中。
在路由器上启用并配置SNMP并将它们添加到受监视设备列表后,系统将与它们联系,进行询问,确定它们是什么设备,应用模板,开始收集数据并显示每个路由器的前面板。 本身。 开箱即用。 当我建立Zabbix时,我只能梦of以求。

我手动添加了所有网络密封管,因为它们本身由于某种原因未出现。 这里的一切都很简单。 我们在基础结构服务中使用任何方便的名称(例如,交换机)和
RMB-create-node创建一个容器,指定
节点的显示名称,其IP地址,最好选中“禁用NetXMS代理”框,因为它仍然无法安装在网络设备和多余的数据包。
内置浏览器。 您只需右键单击所需的路由器,然后打开设备的Web界面。 在我看来,比每次浏览您的笔记并寻找所需的IP更为方便。 没错,浏览器马马虎虎。
3.3。 建立网络图
首先,您需要创建一个网络映射作为一个对象。 像往常一样,在
RMB的
Networks Map分支中
,创建,选择一种地图类型,设置参数 ,然后系统将做进一步的工作。
卡的类型如下:
- 自订 这是应用户要求而设计的用于手动形成的卡。
- 第2层拓扑 。 这是一个映射,可让您依靠OSI模型的第二级为用户自动执行所有操作(实际上,它基于设备的mac地址构建一个映射)。
- IP拓扑 ,也称为第3层 。 与第2层的情况相同,仅根据OSI模型的第3级(IP地址)构建映射。
选择手动映射时,需要将树中的节点拖到地图层上,进行连接等。 普通图纸。
在另外两种情况下,您需要选择一个参考点,系统将从该参考点开始构建地图。 例如,路由器的节点。 系统从中读取有关已连接设备及其连接的端口的数据,然后从下一个路由器读取数据,进行比较等等。 在分析了所有设备之后,NetXMS本身将绘制网络设备之间的连接,指示连接端口。 也可以指定系统还应该通过在卡属性(
RMB-属性-卡属性 )中点击相应项目,将终端设备(打印机,PC,服务器)放置在卡上。 同样,在本段中,如果需要或需要,可以设置“检测半径”。
一点建议。 启用“始终适合屏幕显示”属性,以便每次更新网络地图时都不必滚动工作区并进行缩放。

使用分布式网络拓扑,可以将对象覆盖在该区域的地图上。 例如,通过在服务器机房上覆盖必要的物体,也可以使用机架上的照片和设备。 因此,您可以快速确定机架中任何设备的状态。 我认为,如果有必要,将事务转移给继任者或新来的同事解释情况是非常有用的。 直观,方便,不言而喻。
3.4。 代理商
Windows和Linux都有代理。 操作原理与同一Zabbix代理的原理相同:它安装在必须从中进行度量的计算机上,并将数据传输到监视服务器。 可以在将节点添加到系统之前以及之后安装代理。 代理出现在节点上之后,一段时间后,系统将开始使用标准模板从其接收数据。 您可以为一个节点添加附加的监视参数,也可以将一个或几个预定义的模板附加到该节点。 当然,建议您使用模板,因为此设置更灵活。
代理程序的监视参数列表非常广泛。 在
NetXMS Wiki上查看完整列表
一旦系统确定代理在节点上运行,它将立即将该节点附加到默认模板之一
-Windows,Linux,HP-UX,通用UNIX,AIX (取决于节点的操作系统)。
Windows主机的标准模板:

您可以通过单击“
RMB-数据收集参数 ”,然后单击“
工作空间中的RMB-新参数 ”,添加一个用于跟踪特定节点的
参数 ,然后从列表中选择所需的
参数 。 您还可以在此处为受监控参数配置触发器。
像Zabbix一样的代理程序可以运行用户脚本,这一点很重要。
如何安装?这是题外话,因为每个人...嗯...他想要的。
这里的问题是-代理是否只需要分发到服务器,甚至分发到网络上的所有计算机? 如果有服务器,但服务器很少,则最简单的方法是手工操作。 如果很多-域策略,KIX,PoSh。 没事 代理具有/ SILENT开关,它使用户可以透明地“实现”用户(如果我们正在谈论将它们分配给网络上的所有计算机)。 我更喜欢脚本,因为与每次打开PC时都会放置程序的策略相比,您可以设置条件并创建特定标志。 因此,我们正在编写系列脚本“检查标志文件的存在,如果不存在,请使用/ SILENT开关运行安装程序,并在成功安装后创建标志文件”。 获利
3.5。 扳机
可以将触发器配置为响应正在收集的数据中的某些事件。 例如,超出路由器的某个特定乒乓值。 还配置了每个触发器的通知方法(对于某些触发器,控制台中的图标就足够了,有些触发器会在可能的情况下立即发送警报)。 从“动作配置”中的预配置中选择对事件的响应。
要创建触发器,请执行以下操作:
输入节点或模板的数据收集配置,双击感兴趣的参数(如果没有,则必须先创建它),然后转到属性中的“阈值”选项卡,单击“添加”按钮。
“
功能 ”-计算条件要采用什么值或什么值。 它可以采用以下值(用于验证的值数在“样本”字段中指示):
-上次轮询值:上次轮询值
-平均值:最后一次的平均值
-平均偏差:平均偏差
-与先前值的差异:与先前值的差异
-数据收集错误:接收数据时出错
-价值总和:价值总和
-脚本:根据用户脚本获得的值
“
操作 ”-触发触发条件。 它可以接受值(该值在相应的“值”字段中指示):
-<:小于:小于
-<=:小于或等于:小于或等于
-==等于:等效
-> =:大于或等于:大于或等于
->:大于:大于
-!=:不等于:不相等
-喜欢:接近
-不喜欢:不接近
以最后两个参数为代价,我对它们的工作方式没有信心。 因此,我什至不假设它们内置了什么边界。
简而言之,所有事物都像在同一Zabbix中一样,但是您无需用手输入公式,不必担心会犯错误或责骂自己。 要恢复触发器(停用事件),系统本身将替换一个值。 (同样,在Zabbix中,您需要打印而不是盖章)。
3.6。 模式
RMB-创建一个模板,输入模板的名称。 人民币数据收集配置。一点理论收集的信息可能来自多个来源。 它可以是机器上运行的NetXMS代理 ,也可以是服务器本身发送的“ 简单请求 ”或“ 内部 ”(例如,相同的ping),“ SNMP ”,“ 检查点SNMP ”,“ 推送 ”,“ Windows性能计数器 ” ,“ SM-CLP ”或自定义“ 脚本 ”。 对于每种类型的信息,您都可以选择系统在收到信息后所期望的类型。 例如,ping将返回整数,以字节为单位的可用磁盘空间量也将是整数,但是相同的温度将不再是整数(即实数)。
要在NetXMS中通过SNMP收集信息,有大量的预定义参数,也就是说,您不能输入特定的OID,而只能在MIB树中找到它,实际上这是个问题。 因此,您需要仔细阅读制造商的文档,并分别查找每个设备的IOD值。 您可能会花费大量时间来设置从设备读取信息的时间,方法是碰到来自UNSUPPORTED系统的消息,但最后,事实证明该特定设备根本不知道如何提供所请求的信息。 它仍然只是抽烟手册和希望 。
例如,要收集有关节点响应时间(ping)的信息,您需要添加一个新参数(
RMB-new parameter ),在Origin字段中选择Internal,按下Select按钮,然后选择Ping Time。 我刚刚在Zabbix中做了一个梦a以求的搜索。 更改节点的轮询周期也很有意义(默认为60秒,也就是说,如果路由器在被监视系统询问后立即停止响应,则系统将在大约一分钟的时间内意识到系统有问题)。这样,它将发出警报)。
可以处理的内部数据列表:

将所有必需的设置添加到模板后,单击“
RMB-apply”,然后选择需要将此模板应用到的所有节点(
ctrl + LMB )。 仅此而已。 之后,分支将出现在模板下的树中,打开该分支,您可以看到应用了此模板的所有节点。
从模板分离节点时,收集的数据不会停止收集;要取消其收集,您需要转到每个节点的数据收集配置并手动删除所有内容,或者首先从模板中删除参数,然后再从中删除节点。 我不知道为什么要这样做,但是我认为这是一件非常奇怪的事情。 但是……就是这样。
在模板中,您可以选择要收集的所需数据,然后将其复制到另一个模板。 大量。 而且不要用手将一个模板从一个模板复制粘贴到另一个模板...
我已经开始讨厌Zabbix ..3.7。 仪表板
奇怪的是,但是关于此主题的NetXMS Wiki仅包含一个指向youtube的链接:
创建仪表板 ,甚至没有可添加到仪表板的元素的列表和说明。 基本上,那里的一切都一样直观。
标签只是...好吧...标签是...我什至不知道如何翻译。 简而言之,带有名称的字段用于表示和定界元素,因为名称本身并不包含元素。
折线图是折线图。
条形图是一个图表。
警报查看器 -所选节点的警报列表。 简而言之,名字不言自明。
接下来,打开仪表板属性并配置视图。 我们对“仪表板元素”选项卡感兴趣。 列数是列数,即水平放置的元素。 每个对象都有其自己的属性,我建议您取消选中Layout-Grab过多的垂直空间选项,以最小化每个元素的大小。

3.8。 动作配置
(配置-动作配置)本质上,这些是对触发器的响应。

NetXMS可以发送电子邮件,短信,xmpp消息来响应触发器。 这里的一切都很琐碎-只需填写必填字段即可。
您还可以:
-将通知发送到另一台NetXMS服务器
-在NetXMS管理服务器上运行命令
-使用NetXMS代理在节点上运行命令
-执行NXSL脚本(NSXL是其
NetXMS脚本编程语言 )
创建动作后,您可以为其配置执行延迟时间,以及应用宏执行。延迟时间是必要的,以便在问题自行解决时不会打扰操作员(例如,对ping请求的响应时间长于指定的值,但是在下一次检查期间它可以恢复正常,那么为什么要为这种琐事烦恼?) 。3.9。访问权的区分
对于每个对象,您可以配置访问权限。对于另一个对象内的每个对象,您还可以配置访问权限。这允许针对不同用户组非常灵活地分配职责和监视功能。这就是我想说的。4.结论
我想反驳我自己文章的标题。NetXMS不适合懒惰的人。只是开发人员没有像其他人那样专注于功能,而是除了其他所有功能外,他们还负责界面。来吧 我使用了Zabbix和NetXMS。为此,我将仅从这两个系统中写下我的感受。这样啊
我认为NetXMS是一个非常用户友好的系统。好...对管理员...对,对管理员。她拥有所谓的直观界面,非常棒。无需编写您自己的公式,阅读大量支持文档即可启用ping验证,然后再进行切换或其他一些简单操作。但是
在Zabbix中,最简单的操作与真正复杂的操作并没有太大区别,也就是说,如果您掌握了它,那么剩下的就可以做。 NetXMS有提示;大多数参数可以在界面中找到,用鼠标选择并配置。在Zabbix中,您需要确定系统是否可以做到这一点和做到这一点,如果可以,则如何编写它以及返回什么参数。 Zabbix在各种场合下都赢得了社区和大量模板的支持……如果您能在这座垃圾山上找到所需的东西……另一方面,NetXMS也有很多支持者及其为该系统创建的附件。如项目主页上所述,开箱即用的系统本身可以监视最受欢迎的应用程序。对我而言,NetXMS对Zabbix的主要优势是能够在问题节点上运行脚本以响应触发器。 CPU的温度已超过阈值-它本身将熄灭主机。然后我们将了解-问题是什么。也许在Zabbix中也有这样的事情,但是我做不到。以及路由器上的端口监视。就是这样……确实如此,掌握脚本语言是必要的,仅此而已……NetXMS中的访问权限使您可以非常灵活地区分系统中各个用户的功能。但是,要进行全部设置,您需要直接修改。通常,这些系统非常相似,乍一看,它们的功能似乎至少具有可比性。尽管感觉Zabbix可以做得更多,但是这些功能深藏在幕后,对于仅是凡人的管理员来说,多合一是无法实现的。 NetXMS看起来简单明了,友好而令人愉快。Zabbix具有出色的文档,Wiki,操作方法,常见问题解答,最佳实践以及各种论坛等,您可以在其中找到几乎所有问题的答案。如果是的话,请自行设定。总而言之,我想向刚起步的人或不需要深入研究所有事物的人推荐NetXMS。我相信,如果您进一步处理它,则可以得出非常非常细微的发现。但是,我看到的主要优点是界面非常好,易于设置。5.二手材料
youtube频道Tomas KirnakNetXMS WikiGoogle搜索