我需要监控在我的网络服务器上运行的几个进程。出于某种原因,清漆目前每天或每两天崩溃一次。我正在使用 monit 据称自动重新启动清漆,但它不起作用。这是我的 Varnish 的 monit.conf 条目。
check process varnish with pidfile /var/run/varnish.pid
start program = "/etc/init.d/varnish start" with timeout 60 seconds
stop program = "/etc/init.d/varnish stop"
if failed host <my server ip> port 80 protocol http
and request "/blank.html" then restart
if 3 restarts within 5 cycles then timeout
group server
Run Code Online (Sandbox Code Playgroud)
日志文件显示,在varnish停止运行后,尝试重新启动之后都失败了。然后最终 monit 停止监视清漆。
有人对我如何解决这个问题有建议吗?或者更好的是,您能否提出其他简单的自动监控和重启崩溃进程的方法?谢谢!
我是一个小型计算机课程的老师。孩子们还年轻,我不能站在每台电脑后面确保他们不在 Itunes 或纸牌上。
从我的电脑屏幕上,有没有办法在一个小盒子里实时获取他们的屏幕信息(想想画中画),这样我就可以快速查看谁没有在执行任务,谁在执行任务?
如何检查solaris进程消耗了多少内存?我想要分配的总地址空间和驻留在 RAM 中的数量。
我尝试用一些 awk 脚本总结 pmap 输出,但这是一个丑陋的黑客。有没有更好的方法来编写它?
我想知道是否有通过每秒执行一次“HTTP GET 请求”来检查服务器是否启动的优势?
任何服务器都可以处理吗?
FreeBSD和MacOSX附带了period (8)实用程序,这是一组组织有序的实用程序,用于定期运行系统功能,例如 ZFS 文件系统检查、安全检查、检查过期端口等。
问题是定期发送过多的电子邮件,其中包含过多的多余信息。这导致人们忽略电子邮件,我们错过了periodic(8) 发现的许多问题。每日电子邮件每天发送一次,安全电子邮件每天发送一次,每周和每月电子邮件也定期发送。这些电子邮件的主题行如下之一:
Subject: $HOSTNAME daily run output
Subject: $HOSTNAME security run output
Subject: $HOSTNAME weekly run output
Subject: $HOSTNAME monthly run output
Run Code Online (Sandbox Code Playgroud)
如何减少定期(8)发送的电子邮件数量?
我会在下面发布我自己的答案,但我想看看其他人做了什么。
注意:我有一个关于 Linux 的类似问题,在Linux:logwatch(8) & cron.daily 太吵了。如何控制噪音水平?
我们最近购买了一台“白盒”服务器来运行 VMware ESXi 5.0(我们计划使用 vSphere 5 Essentials Kit)。根据 VMware 的兼容性指南,服务器的LSI Logic MegaRAID SAS 9260-4i RAID 控制器是兼容的(支持类型列为“收件箱”)。
我已经在主机上安装了 ESXi 5.0,并且还安装了 vCenter Server Appliance。我使用 vSphere Client 连接到 vCenter Server,我可以看到一系列预定义的警报,包括一个应该在“主机存储状态”发生变化时触发的警报,这听起来是我需要的。
我刚刚尝试从 RAID 阵列中拉出一个驱动器(导致 RAID 控制器发出预期的哔哔声),但在 vCenter 中似乎没有发生任何事情。“主机存储状态”警报似乎没有被触发。
我真正需要做的是配置 vCenter 以在 RAID 阵列降级时发送电子邮件,以确保我们知道并可以更换死驱动器。如果警报甚至不会触发,那似乎就没有希望了。
我在这里错过了什么吗?我绝不是 VMware 或服务器硬件方面的专家,所以我什至不知道该向谁询问这个问题。
提前致谢!
我刚刚根据monit 文档安装和配置了 monit。除 Apache 之外的所有服务都列为 Running,但 Apache 表示Not Monitored。
monit 配置中的相关行是:
check process apache with pidfile /var/run/httpd.pid
group www
start program = "/etc/init.d/httpd start"
stop program = "/etc/init.d/httpd stop"
if failed host localhost port 80
protocol http then restart
if 5 restarts within 5 cycles then timeout
Run Code Online (Sandbox Code Playgroud)
我可以从服务器访问http://localhost/server-status和http://localhost。Monit 将 Apache 的监控模式列为active。
服务器正在运行 CentOS 5.4。
PID 文件对于父 httpd 服务器是正确的:
[server ~]$ cat /var/run/httpd.pid
2905
[server ~]$ ps auxc | …Run Code Online (Sandbox Code Playgroud) 我想使用 cron 来安排我的 ZFS 池的定期清理,并在清理完成后的相当短的时间内,通过电子邮件将状态报告发送给我自己。这样做的目的是发现任何问题,而无需手动查找它们(推而不是拉)。
第一部分很简单:只需设置一个 cron 作业,以zpool scrub $POOL在我的特定情况下合理的时间间隔以 root身份运行。
第二部分,我不太确定该怎么做。zpool scrub立即返回,然后系统在后台运行清理(如果清理是由管理员从终端启动的,这当然是理想的行为)。zpool status给我一个状态报告并退出(在擦洗运行时退出代码为 0;它还没有完成,所以我不知道退出状态在完成后是否会改变,但我对此表示怀疑)。为 zpool-s清理记录的唯一参数是“停止清理”。
主要问题是检测从刷洗到完成刷洗的状态变化。鉴于此,其余的应该就位。
理想情况下,我想告诉zpool scrub在擦洗完成之前不要返回,但我看不出有任何方法可以做到这一点。(这会使简单的 cron 变得几乎太容易了zpool scrub --wait-until-done $POOL; zpool status $POOL。)
如果做不到这一点,我想询问系统当前是否正在进行清理,最好以不会因升级或配置更改而中断的方式冒太大风险,以便我可以根据之前是否正在运行擦洗已完成(通过在擦洗状态从擦洗变为未擦洗时执行 zpool 状态)。
这个特殊的设置是针对工作站系统的,所以虽然像 Nagios 这样的监控工具可能有可以解决这个问题的插件,但是仅仅为这个任务安装这样一个工具感觉有点过头了。有人可以建议解决该问题的技术含量较低的解决方案吗?
我是 Zabbix 和企业监控的新手。我刚刚安装完 Zabbix 2.4。
我正在尝试监视我们vhosts在不同服务器上的所有脱位状态。
到目前为止,我想出的唯一解决方案是Web scenario为每个vhost我想要监控的服务器手动添加一个到 Zabbix Server 主机。但它不是那么好用。
四处搜索我发现了一个具有部分功能想法的论坛主题:使用 atemplate从目标服务器读取所有vhosts(通过 a macro)并Web scenario为每个vhost.
编辑:此解决方案(基于 Zabbix 2.2)不起作用,因为无法将 LLD(低级发现)与Web scenarios.
有一个功能请求,因为11月14日开放来实现LLD的Web scenarios。
问题是是否有一些解决方案或建议来说明如何在等待功能实现时进行这种监控,或者我的方法可能完全错误。
monitoring ×10
linux ×3
monit ×2
apache-2.2 ×1
cron ×1
freebsd ×1
graph ×1
hosting ×1
mac-osx ×1
megaraid ×1
memory ×1
process ×1
saltstack ×1
solaris ×1
uptime ×1
varnish ×1
virtualhost ×1
vmware-esxi ×1
web-server ×1
zabbix ×1
zfs ×1