使用 Checkmk 监控 Oracle 服务器

Monitoring Oracle Servers With Checkmk

数据库对于许多 IT 流程至关重要。它们的性能和可靠性取决于许多因素,因此使用专用工具来帮助您掌握情况是有意义的。使用外部工具监控数据库可以帮助您主动识别性能问题,但有许多因素需要考虑。如果方法不当,您可能会错过有价值的信息,并且可能会浪费大量时间来配置数据库监控。

在本教程中,我将简要介绍如何使用 Checkmk 监控 Oracle 数据库,Checkmk 是一款适用于各种 IT 资产的通用监控工具。Oracle 数据库是最常见的关系数据库管理系统 (DBMS) 之一,Checkmk 带有出色的预配置 Oracle 监控,因此您只需几分钟即可开始使用。这不仅可以确保数据库的最佳性能,还可以让您有机会发现优化机会。

前提条件

您需要一个正在运行的 Checkmk 站点。在本文中,我使用的是 Checkmk 免费版 2.1.0p19 版本,它安装在 Ubuntu 服务器(版本 20.04)上。Checkmk 可以运行在 Linux 上,包括 RHEL、CentOS、Debian 等,也可以在容器中或作为虚拟设备运行。您可以从官方 Checkmk 网站 下载适用于所有平台的最新 Checkmk 版本,并观看此视频教程,迈出您的第一步。

在本教程中,我将使用一个简单的 Oracle 服务器作为示例。在我的例子中,我的 Oracle 数据库 19.0 版本运行在硬件服务器上,我使用 Rocky Linux 9.0 版本作为我的操作系统。我将向您展示如何配置和安装 Checkmk 代理。但是,Checkmk 也可以监控远程数据库,而无需安装代理。

您不需要任何 Oracle 监控方面的经验,因为 Checkmk 会接管最重要监控服务的收集,并设置警告和严重状态的阈值。但是,您需要访问权限来为您要监控的数据库创建用户帐户,您将在第一步中完成此操作。

步骤 1:为监控创建 Oracle 用户帐户

首先,您需要创建一个用户帐户,Checkmk 将使用该帐户从您的数据库查询监控数据。在我的例子中,我使用 SQL Plus 并通过终端创建用户。该过程因您使用的 Oracle 环境和工具而异。您可以在 Oracle 文档 中阅读更多详细信息。

  • 在我的示例中,我切换到 Oracle 用户并以 sysdba 身份登录。
su - oracle

sqlplus / as sysdba
  • 现在,我为监控创建一个用户帐户。在我的例子中,我将其命名为 ‘checkmk’。
create user checkmk identified by MySecurePassword
  • 创建用户帐户后,为该用户帐户分配访问权限和启动会话的权限。
grant select_catalog_role to checkmk

grant create session to checkmk
  • 您现在可以使用 connect 测试连接
connect checkmk/MySecurePassword

当然,‘MySecurePassword’ 只是一个占位符。请使用足够长度的强密码,并混合使用大小写字母、数字和特殊字符。创建用户后,您可以切换到您的 Checkmk 站点进行下一步。

步骤 2:在 Checkmk 中使用 Oracle 监控规则

您现在将使用 Oracle 数据库代理规则来创建一个 Checkmk 代理,您稍后将在您的 Oracle 服务器上安装它。为此,您将使用 Checkmk Agent Bakery,它不是 Checkmk Raw Edition 的一部分。如果您使用的是 Checkmk Raw Edition,则需要通过命令行配置插件。为此,请按照 Checkmk 文档中关于监控 Oracle 数据库 的文章中的说明进行操作。

  • 打开 Checkmk。
  • 转到 设置 并搜索 ‘oracle database’。单击 ‘ORACLE databases (Linux, Solaris, AIX, Windows)’。

monitoring-oracle-servers-with-checkmk-image-1

  • 单击 添加规则

在 ‘ORACLE databases (Linux, Solaris, AIX, Windows)’ 下,您会看到许多选项来配置您的 Oracle 监控。但是,Checkmk 为您提供了良好的默认值。对于大多数用例,您只需要激活几个框

  • 勾选 激活 前面的第一个框,并将默认设置保留为 ‘Deploy ORACLE database plugin’。
  • 因为我的 Oracle 数据库服务器运行在使用 systemd 作为超级服务器守护程序的 Linux 发行版上,所以我需要激活 主机使用 xinetd 或 systemd (仅限 Linux/AIX/Solaris),并选择 ‘systemd’ 选项。我将 间隔 保留为一分钟。
  • 登录默认值 中,您需要添加您的用户帐户凭据。激活该框,然后选择 身份验证方法 以使用您的用户帐户登录。
  • 在我的例子中,我保留 ‘使用以下凭据登录’ 选项,以及我之前的用户帐户 ‘checkmk’ 和密码。
  • 单击 保存

monitoring-oracle-servers-with-checkmk-image-2

步骤 3:烘焙和安装 Checkmk 代理

配置完成后,您需要使用 Agent Bakery 来烘焙代理包。

单击 设置 并转到 Windows, Linux, Solaris, AIX

现在,单击 烘焙代理

monitoring-oracle-servers-with-checkmk-image-3

您需要等待 Agent Bakery 完成,然后您应该看到一个新的可用代理配置。

单击适合您的 Oracle 数据库服务器的格式。在我的例子中,RPM 包就可以解决问题。

monitoring-oracle-servers-with-checkmk-image-4

下载后,安装软件包。我在终端上使用 dnf

sudo dnf install check-mk-agent-2.1.0p19-0a8bd97002c9f415.noarch.rpm

步骤 4:在 Checkmk 中将 Oracle 服务器添加到监控 现在您可以将您的 Oracle 服务器添加到 Checkmk 中的监控,因此您需要返回到您的 Checkmk 站点。

转到 设置 并单击 主机

单击 添加主机

主机名 下,您添加您的 Oracle 服务器的名称。在我的例子中是 ‘oracle-rocky-01.demo.tribe29.com’。

单击 保存并转到服务配置

我的 Oracle 服务器的名称可以通过 DNS 解析。如果您的服务器不是这种情况,您必须激活 IPv4 地址 选项并输入服务器的 IP 地址。

monitoring-oracle-servers-with-checkmk-image-5

您必须等待自动服务检测。之后,单击 接受全部 以添加所有检测到的服务。

通过单击右上角带有感叹号的黄色图标来确认您所做的更改。您应该在那里看到 ‘changes’ 的数量。

单击 在选定站点上激活

monitoring-oracle-servers-with-checkmk-image-6

就是这样,您的数据库服务器现在已被监控。转到 监控,您可以在 所有主机 下找到您的数据库服务器主机。单击主机,您将进入主机视图

monitoring-oracle-servers-with-checkmk-image-7

总结

这个基本教程为您提供了关于如何监控 Oracle 数据库的介绍。您为自己打下了良好的基础,但还有更多工作要做。您还应该监控您的服务器硬件,并且您可能还想了解更多关于 Checkmk 中所有配置选项的信息。此外,我提到了监控远程数据库。因此,我建议阅读这篇关于 Oracle 监控 的博客,因为它为这些要点提供了答案,并向您展示了如何监控 Oracle 云基础设施。有关监控数据库的更多一般信息,您应该查看这篇关于 SQL Server 监控 的文章。

加载 Disqus 评论