小编Kei*_*ith的帖子

Ubuntu 如何跟踪 motd 中的“需要系统重启”标志?

我有几台 Ubuntu 服务器(8.10、9.10)设置为自动安装安全更新。有时这些更新需要重新启动系统,此字符串显示在motd

*** System restart required ***
Run Code Online (Sandbox Code Playgroud)

为了获得有关这些的通知,我计划编写一个 Nagios 测试来监控服务器是否需要重新启动。所以,我的问题:

有没有比解析更好的方法/etc/motd来确定是否需要重新启动?

ubuntu

86
推荐指数
4
解决办法
3万
查看次数

git、nagios 和 hooks、损坏的 git repo

背景

我们正在使用 nagios 来监控我们的基础设施。我们目前没有版本控制下的 nagios 配置,我们有两个人管理 nagios 配置。因此,我正在努力将我们的 nagios 配置放入中央 git 存储库中,使用一些钩子进行语法检查,然后如果配置看起来不错,则使它们“处于活动状态”。我正在使用这个人的帖子作为起点。

我试图实现的一般工作流程是:

  1. 编辑 nagios 配置的本地 git repo。添加编辑过的文件,在本地提交。
  2. git push origin master 到远程仓库。
  3. Push 被 pre-receive hook 拦截,它获取文件,将它们移动到服务器上的临时目录,并通过 nagios 语法检查器运行它们。
  4. 如果语法检查器通过,则接受推送,然后使用 post-commit hookgit pull将新代码放入 live nagios 配置目录中,然后重新启动 nagios。
  5. 如果语法检查器失败,则拒绝推送,向用户显示 nagios 语法错误。

但是,当我由于 nagios 配置中的语法错误而拒绝 git push 时,我遇到了一个奇怪的行为。我期望发生的是,如果我拒绝钩子,则尝试推送应该使存储库保持原样,原样。不过,情况似乎并非如此。以下是我所看到的详细信息:

问题

我在本地编辑 nagios 配置,故意包含一个语法错误,添加,然后在本地提交:

host:nagios erik$ vi nagios.cfg
host:nagios erik$ git add nagios.cfg
host:nagios erik$ git commit -m "syntax error"
[master da71aed] syntax error
 1 files changed, 1 insertions(+), …
Run Code Online (Sandbox Code Playgroud)

git

13
推荐指数
1
解决办法
1370
查看次数

使用 puppet 修复 /etc/default/ 中已禁用的服务?

我正在使用 puppet(理论上)让 npcd 在安装时启动,但是在 Ubuntu 上,该服务随 RUN="no" 的 /etc/default/npcd 中的默认设置一起安装:

 $ cat /etc/default/npcd 
 # Default settings for the NPCD init script.

 # Should NPCD be started? ("yes" to enable)
 RUN="no"

 # Additional options that are passed to the daemon.
 DAEMON_OPTS="-d -f /etc/pnp4nagios/npcd.cfg"
Run Code Online (Sandbox Code Playgroud)

我认为这个 puppet 配置块会处理以下事情:

    service { "npcd":
       enable   => true,
       ensure   => "running",
       require  => Package["pnp4nagios"],
    }   
Run Code Online (Sandbox Code Playgroud)

但可惜,它没有,而且没有实际重写 /etc/default 中的文件,我不知道该怎么做。有没有一种直接的方法来启用我没有看到的服务?

作为记录,我使用的是 Ubuntu 12.04.2 和 puppet 版本 3.1.0。

ubuntu service puppet

13
推荐指数
3
解决办法
3952
查看次数

nagios xi 和 cacti 监控有什么区别?

Nagios XI(这是 Nagios 的商业实现)可以根据阈值条件绘制图表并发送警报。我无法理解 Nagios 和 Cacti 之间的区别。关于两者之间的差异有什么想法吗?

我宁愿不重复努力。

monitoring nagios cacti

6
推荐指数
1
解决办法
1万
查看次数

我需要在 linux 中为 nagios 用户创建一个帐户吗

我已经安装NAGIOScentos并且它工作正常。

我想尝试来自 nagios 用户的命令,但是当我这样做时

su nagios 从用户然后得到这个

This account is currently not available.

但网络界面工作正常。所以我想知道是什么问题

linux centos

5
推荐指数
1
解决办法
4808
查看次数

使用 dig axfr 从 Windows Server 2012 DNS 服务器执行区域传输

我正在努力使用 DNS 记录为 Nagios 设置主机自动发现。

然而,当我尝试使用 dig axfr 进行区域传输 (dig axfr local.domain.com) 时,我得到以下输出:

[jwestbury@nagiosv local]# dig AXFR local.domain.com

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6_4.6 <<>> AXFR local.domain.com
;; global options: +cmd
; Transfer failed.
Run Code Online (Sandbox Code Playgroud)

我正在查询的 DNS 服务器在其日志中没有显示此查询的任何内容。如果我将域更改为不存在的域,我在事件查看器的 DNS 服务器日志中看到一个条目,因此我知道查询正常命中 DNS 服务器。

为了允许从 Nagios 机器进行 AXFR 传输,我需要做一些特殊的事情吗?或者我应该在其他地方查找 Nagios 计算机上的日志以指示我尝试执行传输时可能发生的情况?

任何帮助,将不胜感激。谢谢。

domain-name-system dig windows-server-2012

5
推荐指数
1
解决办法
2万
查看次数

Icinga - 分布式环境中非常高的检查延迟

我有一个分布式 Icinga 设置,设置如下:

中央

仅接收被动检查结果

分布式A

227台主机

835服务

分布式B

67台主机

243服务

中央服务器在任何时候都坐落在1秒以下的平均潜伏期检查。分布式 B目前的平均检查延迟约为 10 秒左右,但随着我们添加更多检查,这一数字也在攀升。

分布式 A有一些严重的检查延迟问题(有时长达 700 秒,重新加载后更少,但它会重新建立),我似乎无法确定。这是当前的 icingastats 输出:

Icinga Stats 1.10.3
Copyright (c) 2009 Nagios Core Development Team and Community Contributors
Copyright (c) 1999-2009 Ethan Galstad
Last Modified: 02-11-2014
License: GPL

CURRENT STATUS DATA
------------------------------------------------------
Status File:                            /var/lib/icinga/status.dat
Status File Age:                        0d 0h 0m 3s
Status File Version:                    1.10.3

Program Running Time:                   1d 17h 30m 44s
Icinga PID:                             1160
Used/High/Total Command Buffers: …
Run Code Online (Sandbox Code Playgroud)

ubuntu monitoring icinga

5
推荐指数
1
解决办法
1135
查看次数

启动 nagios.service 失败:单元 nagios.service 加载失败:没有这样的文件或目录

我一直在关注本教程

$ sudo systemctl start nagios
Failed to start nagios.service: Unit nagios.service failed to load: No such file or directory.
Run Code Online (Sandbox Code Playgroud)

问题的原因是什么?

我有:

$ sudo /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

Nagios Core 4.0.8
Copyright (c) 2009-present Nagios Core Development Team and Community Contributors
Copyright (c) 1999-2009 Ethan Galstad
Last Modified: 08-12-2014
License: GPL

Website: http://www.nagios.org
Reading configuration data...
   Read main config file okay...
   Read object config files okay...

Running pre-flight check on configuration data...

Checking objects...
    Checked 8 services.
    Checked 1 …
Run Code Online (Sandbox Code Playgroud)

httpd centos systemctl

5
推荐指数
1
解决办法
4万
查看次数

CentOS“-bash:a2enmod:未找到命令”

当我配置 pnp4nagios 时,发生了以下问题。

PHP GD 扩展?PHP GD 扩展不可用

PHP zlib 扩展?PHP zlib 扩展不可用

PHP套接字扩展?PHP 套接字扩展不可用

Apache 重写模块?Apache mod_rewrite 未启用

谷歌告诉我也许我的 php 在安装过程中坏了。另外,我得到了这个页面启用-mod-rewrite-on-ubuntu

但是,我的服务器是 CentOS,我执行了命令“a2enmod rewrite”,结果是“-bash: a2enmod: command not found”……

我能做什么?谢谢。

php centos apache-2.2

4
推荐指数
2
解决办法
7万
查看次数

Bash 在变量中转换字符

我正在用 bash 编写一个 collectd nagios 自定义检查脚本。我遇到的问题是 nagios 将主机名显示为 host.name.domain 但 collectd 将 WSP 文件保存为 host_name_domain。我的问题是如何使变量将从 nagios (host.name.domain) 获取的主机名转换为 collectd 格式 (host_name_domain)。

这是必须发生转换的部分。所以 WSP_PATH 会在变量 $NHOST 中给出主机名的 collectd 格式

WSP_PATH=/var/lib/carbon/whisper/ctd/$NHOST/uptime/uptime.wsp
Run Code Online (Sandbox Code Playgroud)

bash collectd

3
推荐指数
1
解决办法
301
查看次数