问题标签 [icinga]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
151 浏览

mysql - 带可变参数的 MySQL 函数

我正在使用 Jaspersoft 的 iReport 和 icinga 的数据创建监控报告。在 ireport 中,我必须输入查询以获取所需的数据。现在,我想从该服务中获取(受监视对象的)名称和相应的可用性。为此,icinga 提供了一个函数,该函数将 object_id、开始日期和结束日期作为参数。比如这样:

对于 iReport,我需要在一个查询中获取所有需要的对象。例如,我需要对象编号 131、258、101、465。

是否可以将变量/通配符或多个 object_ids 传递给函数?我还无法管理它。

谢谢您的帮助!

0 投票
1 回答
480 浏览

python - Python 模块 snmpSessionBaseClass:在哪里下载

我正在尝试在我正在运行的脚本中导入 snmpSessionBaseClass python 模块,但我没有安装该模块,我似乎无法找到下载它的位置。有谁知道下载和安装这个模块的 pip 或 yum 命令?谢谢!

0 投票
0 回答
80 浏览

git - 脚本/cron 自动更新 LetsEncrypt 证书并推送到存储库

我希望脚本/cron 能够为多个域续订 LetsEncrypt 证书(使用 acme-tiny),当 Icinga 检查显示它们距离到期还有 15 天时。

然后应该将这些更新的证书推送到 GitHub 存储库。

我不确定如何继续执行脚本以使其仅在 Icinga 检查后为域运行。

0 投票
1 回答
27 浏览

nagios - 用途:Icinga 1 服务定义中的参数

use在 Icinga 1 配置文件中看到对参数的引用,例如:

另一方面,我在似乎是适当的文档(关于服务定义的部分)中没有看到这个论点。

这个论点是什么意思,这在哪里记录?

0 投票
1 回答
48 浏览

linux - 从模板创建多个文件并即时替换内容

如标题中所述,我想从模板创建多个文件并即时替换固定关键字

如果我做

我有点接近,因为我得到了第一个结果的正确输出,但数字 02-04 有错误。

因为在 icinga 中不需要分隔每个配置文件(但这将是一个奖励),所以可以将结果放入单个输出文件中。

例子:

这现在应该导致:

我很确定这很容易通过使用带有循环的任何类型的脚本来完成

我只是好奇这是否可以使用一些单行命令来完成

0 投票
1 回答
542 浏览

nagios - 如何在 Icinga 数组参数中转义逗号

我有一个 Python 脚本,它接受可变数量的整数并对其进行一些处理。这些值通过命令行参数传递给脚本-s。当我在本地运行脚本时,它工作正常:

在内部,使用以下代码将整数转换为逗号分隔的数组:

如果我随后调用print args.myNumbers脚本,我最终会得到一个如下所示的数组:

['1', '2', '3', '4']

我一直无法在 Icinga Web 上获得相同的输出。我怀疑这与 Icinga 如何解析宏有关。我的代码如下:

以下是我尝试过的一些输入vars.someNumbers =及其相应的输出:

更新:经过多次摆弄,我设法让数组看起来一样。我首先必须更改arguments我的检查命令的一部分以禁用重复键:

我不得不使用 input ["1", "2", "3", "4"]。(有趣的是,不起作用['1', '2', '3', '4'],因此单引号和双引号之间显然存在差异。)

但是,有一个新问题:我的.join()方法在 Icinga 上的行为与在本地计算机上的行为不同。在我的本地机器上,在 之后.join(),我得到:

1,2,3,4

而在 Icinga 上,我得到:

1, 2, 3, 4(注意空格)

我尝试添加.replace(" ","")到我的.join()命令,但它没有效果。

更新 2: Icinga 似乎对逗号和空格有一些奇怪的痴迷。这个测试说明了这个问题:

这是一个更简单的问题示例:

尽我所能,我还不能删除空格(这对我的应用程序来说是一个问题,因为它应该使用传入的参数动态构建一个 URL)。

更新 3:我当前针对特定情况的解决方法是%2C在我的.join()方法中使用,即逗号的 URL 编码。

0 投票
0 回答
814 浏览

monitoring - Icinga:如何通过远程 api 或工具启用维护模式?

我正在使用 Icinga 版本 2.4.2 来监控多台主机上的服务。我希望能够使用 cli 工具或 rest API 而不是 Web UI 将某些主机置于维护模式一段时间。

这可能吗?如果可以,我应该使用什么工具/api?如果我不能通过远程工具/api 执行此操作,我应该在服务器或客户端上使用什么命令将客户端置于维护模式?

更新:似乎其余的 api 有一个解决方案。这组权限有效:

然后以下允许我制作和删除停机时间:

现在我遇到的唯一问题是如何传递开始和停止日期的变量。尝试这样做会导致以下错误:

0 投票
0 回答
417 浏览

icinga - 失去连接时,Icinga2 客户端主机 culster-zone 检查命令不会关闭 (RED)

我在我的 icintga2 监控系统中使用具有自上而下模式的导向器设置了一个具有 2 个客户端端点的单个主控。我还设置了 2 个接受配置和接受命令的客户端节点。(希望这意味着我正在运行自上而下的命令端点模式)

3 台主机的服务检查(磁盘/内存/负载)返回正确的结果。但我的问题是:根据Top Down Command Endpoint example的示例,主机 icinga2-client1 使用“ hostalive ”作为主机 check_command。例如。

但是我遇到的一个问题是,如果 client1 icinga 进程未运行,则主机状态保持绿色,并且所有服务状态(磁盘/内存/负载)也保持绿色,因为 master 没有获得任何服务检查更新和 hostalive check 命令能够 ping 节点。

最佳实践 - 健康检查部分,它提到使用“ cluster-zone ”检查命令。我期待在使用“ cluster-zone ”时,当客户端节点 icinga 进程停止时,主机状态将为RED ,但不知何故这并没有发生。

有人知道吗?

我的区域/主机/端点配置如下:

谢谢,

瑞克

0 投票
1 回答
167 浏览

bash - 自动将命令的输出提供给提示符

我有一个脚本,它读取一个文本文件,其中列出了所有节点:

这是我的脚本:

1) 脚本应该登录到 Icinga 主机并icinga2 pki ticket --cn '$f'为在该文件上找到的每个节点运行一个命令,linux-list.txt并为每个主机生成一个票证

2)然后将这个生成的代码发送到每个节点($f)

完成上述所有命令后,脚本需要运行命令 icinga2 节点向导,该向导将启动问题/答案提示,并需要有人键入答案,如下所示。

Icinga master 的 FQDN 是master.icinga.test.com,它的 IP 是10.20.20.1. PKI 票证是我们之前在 Icinga 主机上生成的,并且对于每个主机都不同。

有什么办法可以自动化吗?

谢谢

0 投票
2 回答
1204 浏览

nagios - 当 Icinga2 主机具有关键服务时,是否可以运行脚本?

假设给定主机FooHost正在运行 Apache2。Icinga2 通过 ssh 命令运行检查并发现 Apache2 未运行,这会触发严重警报。

是否可以让 Icinga2 对此事件执行脚本?在这个例子中,我想编写一个脚本来执行 SSH 远程执行systemctl restart apache2

或者,我们可以编写一个可以部署在所有服务器上的看门狗脚本,但是将它写在 Icinga2 盒子上更有意义,并使用 ssh 远程执行,因为这允许集中控制。

我认为没有理由让工程师登录来解决这个问题,除非重新启动也失败了。