我已经在我的网络上安装了 Nagios,并且我有一些初级问题。
我想获得有关以下类型服务器的一些“最佳实践”信息:
- 网络服务器
- Exchange 服务器
- 数据库服务器
从上面的列表中,我想知道应该监控哪些资源。例如,监控 Exchange 服务器的首选检查是什么,我最初想到的是这些:
- 磁盘空间(C:)
- CPU 负载 (%)
- 内存使用情况 (%)
我想编制一份这些内容的列表,以便当我向网络添加新服务器时,我知道应该根据服务器类型添加哪些检查(本质上是一组模板)。
为了进一步澄清,我不是问如何配置 Nagios,而是问我应该针对不同类型的服务器选择哪些最佳实践和典型检查。
答案1
我有点难以理解你,但我想你正在寻找一个示例设置。
Wikimedia(维基百科人员)有一个公共 Nagios 服务器,听起来它正是您所需要的。请在此处查看:http://nagios.wikimedia.org/
答案2
您正在寻找主机组。可扩展的 Nagios 部署的关键(或至少一个关键)是绝不将服务检查直接映射到主机或主机列表。相反,创建主机组并将主机添加到这些主机组,然后将服务检查分配给这些主机组。这意味着添加新服务器非常容易。这是一个例子。
define hostgroup {
hostgroup_name mogile-servers
alias Mogile Servers
members adrock,mca,miked
}
define service {
hostgroup mogile-servers
use he-generic-service
service_description MOGSTORED_RSS
contact_groups sms
check_command check_remote_procs_rss!10485760!12582912!mogstored
}
请注意,还有几个服务分配给了 mogile-servers 主机组。
现在,如果我需要添加另一台 mogile 服务器,我只需将其添加到 mogile-servers 主机组,然后系统将检查该新主机上的所有服务。很简单。
如果您强迫自己考虑将服务映射到上述主机组,那么您将省去很多心痛和配置混乱。
在上面的例子中,您将创建类似以下内容的内容:
define hostgroup {
hostgroup_name exchange-servers
alias Exchange Servers
members pdc-host, sdc-host, tdc-host
}
define service {
hostgroup exchange-servers
use he-generic-service
service_description EXCHANGE
contact_groups sms
check_command check_exchange
}
答案3
需要注意的一点是:
监护人是监护人
如果 Nagios 提供的监控服务出现故障,那么您如何知道:a) 您的服务是否正常,或者 b) 您已经失去了监控服务并且实际上一切都变得一团糟。
因此我始终建议二Nagios 主机。
- 第一个配置为监控您的所有服务。
- 第二个配置为监控其他 Nagios 服务 - 理想情况下,它应该位于不同的位置,以便可以检测到完整的站点故障。
两者都应该配置为能够发送通知,第二个也应该配置为不依赖于第一个位置的任何服务。