Nagios 与 Redis Enterprise
Redis Enterprise Software (RS) Nagios 插件可让您监控 RS 相关对象和警报的状态。RS 警报可能与集群、节点或数据库相关。
Redis Enterprise Software (RS) Nagios 插件可让您监控 RS 相关对象和警报的状态。RS 警报可能与集群、节点或数据库相关。
可以通过 Nagios 监控的警报与可以在 RS UI 的设置 > 警报页面或特定数据库 > 配置页面中配置的警报相同。
所有警报配置(活动/非活动、设置阈值等)只能通过 RS UI 进行,无法在 Nagios 中进行配置。通过 Nagios,您只能查看警报的状态和信息。
可以在插件包本身中找到完整的警报列表(在“/rlec_obj/rlec_services.cfg”文件中,更多详细信息见下文)。
RS Nagios 插件支持从 Gnome 密钥环、KWallet、Windows 凭证库、Mac OS X 密钥链(如果存在)或其他 Linux Secret Service 兼容密码存储中检索 API 密码。如果没有可用的密钥环服务,密码将以 base64 编码保存在用户主目录下。
配置 Nagios 插件
为了配置 Nagios 插件,您需要将软件包附带的文件复制到 Nagios 环境中,并将它们放在 Nagios 配置目录中。或者,您也可以将软件包配置的部分复制到现有的 Nagios 配置中。
如果需要 Keyring 功能来存储密码,则应按照以下步骤在 Nagios 机器上的操作系统 CLI 安装并使用 python keyring 包:
- pip install keyring 安装该包(如果需要,请参阅 https://pip.pypa.io/en/stable/installing/了解如何安装 python pip)。
- keyring set RS-Nagios <RS 用户电子邮件> 设置密码。用户电子邮件应与 Nagios 配置中使用的电子邮件相同,密码应使用运行 Nagios 服务器的同一用户设置。
然后,您需要将本地参数(例如主机名、地址和对象 ID)更新为与 RS 部署相关的值。
最后,您需要为要监控的每个节点和数据库设置配置。更多详细信息如下。
RS Nagios 软件包包括两个组件:
- 插件本身 - 带有后缀“rlec_nagios_plugin”
- 配置文件 - 带有后缀“rlec_nagios_conf”
以下是这些包中包含的文件列表以及有关需要对这些包进行哪些更新的说明。
注意:以下说明假设您在 Ubuntu 上运行,拥有干净的 Nagios 安装,并且基本 Nagios 目录是“/usr/local/nagios/”
步骤 1
将插件文件夹中名为“libexec”的文件夹及其内容复制到“/usr/local/nagios/”
其中包含的文件有:
- check_rlec_alert
- check_rlec_node
- 检查_rlec_bdb
- 电子邮件存根
- rlecdigest.py
注意:check_rlec_alert、check_rlec_node、check_rlec_bdb 文件是实际的插件实现。您可以使用“h”开关运行每个文件,以检索其文档及其预期参数。
第 2 步
将以下行添加到您的“nagios.cfg”:
- cfg_dir=/usr/local/nagios/etc/rlec_obj
- cfg_dir=/usr/local/nagios/etc/rlec_local
- resource_file=/usr/local/nagios/etc/rlec_resource.cfg
步骤3
将配置文件及其文件夹复制到“/usr/local/nagios/etc”并进行必要的更新,如下所述。
- 在“/etc”文件夹下:
- “rlec_resource.cfg” 包含用于连接 RS 的用户和密码的全局变量定义。您应该将变量更新为与您的部署相关的用户和密码。
- “rlec_local”文件夹
- “rlec_obj”文件夹
- 在“/rlec_local”文件夹下:
- “cluster.cfg” 保存集群级别的配置详细信息。如果您想要监控多个集群,则需要为每个集群复制文件中的两个现有条目。
- 第一个“定义主机”部分为集群的 IP 地址定义了一个变量,该变量可在其他配置文件中使用。
- 将“地址”更新为 DNS 中定义的集群名称 (FQDN),或集群中某个节点的 IP 地址。
- 如果您要配置多个 RS,则在复制此部分时应确保:
- 这个“名字”是独一无二的。
- 在第二个“定义主机”部分中:
- 每个条目中的“host_name”必须是唯一的。
- 每个条目中的“display_name”可以更新为 Nagios UI 中显示的用户友好名称。
- 第一个“定义主机”部分为集群的 IP 地址定义了一个变量,该变量可在其他配置文件中使用。
- “contacts.cfg” 保存了向谁发送电子邮件的配置详细信息。它应该更新为与您的部署相关的值。如果此文件已存在于您现有的 Nagios 环境中,则您应该对其进行相应的更新。
- “databases.cfg” 保存要监控的数据库的配置详细信息。“define host” 部分应该为每个要监控的数据库复制一份。
- “host_name” 应该是一个唯一的值。
- “display_name” 应该更新为用户友好的名称以显示在 UI 中。
- “_RLECID” 应该是可以从
rladmin status命令输出中检索的数据库的内部 ID。
- “nodes.cfg” 保存集群中节点的配置详细信息。“define host” 部分应该为集群中的每个节点复制。
- “host_name” 应该是一个唯一的值。
- “display_name” 应该更新为用户友好的名称以显示在 UI 中。
- “地址”应该更新为映射到节点 IP 地址的 DNS 名称,或者 IP 地址本身。
- “_RLECID” 应该是可以从
rladmin status命令输出中检索到的节点的内部 ID。
- 在“/rlec_obj”文件夹下:
- “rlec_cmd.cfg” 包含如何激活插件的配置详细信息。无需对其进行任何更新。
- “rlec_groups.cfg” 保存主机组的定义。无需对其进行任何更新。
- “rlec_services.cfg” 保存所有受监控警报的定义。无需对其进行任何更新。
- “rlec_templates.cfg” 包含一般的 RS Nagios 定义。无需对其进行任何更新。
- “cluster.cfg” 保存集群级别的配置详细信息。如果您想要监控多个集群,则需要为每个集群复制文件中的两个现有条目。