1.3 网络位置和依赖关系
监控系统在网络拓扑中所处的位置有很多架构方面的细节,所以应当花一些时间仔细考虑。实施目标应分为以下三部分:
1.维持现有的安全措施;
2.最小化对网络的影响;
3.最小化监控系统和最关键系统之间的依赖设备数量;
没有一个理想的解决方案能够满足上述三个条件,因此在不同环境下,需要对上面三个目标有所取舍。最终结果常常是相互妥协的,所以最重要的是花些时间描绘出不同的架构图并考虑每种架构所带来的影响。
图1-2中所示的网络拓扑是一个网络的简单例子,系统管理员应该都觉得熟悉。目前,大多数私有网络都提供了面向Internet的服务,因此分为了三个区域:内网、外网、DMZ区。在本例中,绝大多数主机都在内网,大多数关键重要 的主机却都在DMZ区。
按照本节开头的实施原则,我们首先要考虑的是维持网络的安全。创建一个监控的框架将不得不在防火墙上开发部分端口,比如,我们的监控主机需要访问其他网络主机的80端口。如果监控系统部署在DMZ区,那么和部署在内网相比,则需要在防火墙上开放更多的端口,因为很多主机都是部署在内网。对于大多数企业,因为端口开放的问题,是不会允许将监控服务器部署在DMZ区的。下一节将会讨论更深层次的安全问题,但是对于本例,这只是简单的算数题。
图1-2 典型的两层网络
有很多方式能够减少监控系统对网络的影响。比如,通过使用“FoxBox”,或者GSM和CDMA的专用设备来发送SMS消息以减少网络流量,并避免产生依赖关系。然而,在网络位置的情境中,降低网络影响的最好方式是在拥有大量主机的网络环境中部署一个监控系统,因为这样可以降低经过防火墙和路由器的必要流量,这里说的也是内网。
最后,将监控系统部署在与大多数关键系统隔离的网络中并不理想,因为如果发生网络设备不可用的事件,监控系统将“不可见”位于网络设备之后的主机。这种情况在Nagios中称为网络的“阻塞中断”。DMZ区的主机是防火墙的“子节点”,当这样配置的时候,Nagios则认为这是依赖关系。当防火墙发生宕机事件时,Nagios将不会发送宕机后的这些“子节点”的通知(但是可以依照期望设置),在可用性报表中,这些主机在该时段的状态会标记为“未知”。无论哪种网络,都会产生大量的依赖关系,所以这里需要联系实际环境考虑另外两个目标。在本例中,尽管有依赖关系存在,但内网依然是监控主机部署的最佳位置。