在负载下运行任何类型的服务器时,有一些资源需要监视以确保服务器运行正常。 在负载下测试系统时尤其如此。

这方面的一些示例是CPU利用率,内存使用率以及可能的磁盘空间。 我应该监控哪些其他资源,以及可以使用哪些工具?

===============>>#1 票数:6 已采纳

尽可能多的人,然后可以绘制/理解/查看结果。 监控资源不仅可用于容量规划,还可用于异常检测,异常检测可显着帮助您检测安全事件。

你的基本图表开始不错。 我还想监视线程数,连接数,网络I / O,磁盘I / O,页面错误(可以说这与内存使用有关),上下文切换。

我非常喜欢munin用于绘制与主机相关的内容。

===============>>#2 票数:3

我在生产中广泛使用Zabbix,它带有一堆有用的默认值。 我们已将其配置为要监控的各种事物的一些示例:

  • 网络使用情况
  • CPU使用率(%用户,系统,美好时光)
  • 平均负载(1米,5米,15米)
  • RAM使用率(真实,交换,shm)
  • 光盘吞吐量
  • 活动连接(按端口号)
  • 进程数(按进程类型)
  • 从远程位置Ping时间
  • SSL证书到期的时间
  • MySQL内部(查询缓存使用情况,RAM和光盘上的num临时表等)

你可以使用Zabbix监控的任何东西,你也可以附加触发器 - 所以它可以重启失败的服务; 或打电话给你提醒问题。

在性能成为问题之前,立即收集数据。 当它发生时,你会对历史基线感到高兴,事实上你将能够显示当你需要追捕并严厉惩罚哪个开发者做出了不好的改变时,会发生什么样的日期和时间问题:)

===============>>#3 票数:2

我最终使用dstat,这是vmstat看起来更漂亮的堂兄。

这将显示您需要了解的有关机器健康状况的大部分内容,包括:

  • 中央处理器
  • 磁盘
  • 记忆
  • 网络
  • 交换

===============>>#4 票数:1

“df -h”确保没有分区运行完全可能导致各种时髦的问题,看着系统日志当然也很有用,因为我建议在你的服务器上安装“ logwatch ”( Logwatch网站 )如果奇怪的事情开始出现在你的系统日志中,那就是一封电子邮

===============>>#5 票数:1

Cacti是一个很好的基于Web的监控/绘图解决方案。 非常完整,非常易于使用,具有大型用户群,包括许多大型企业级安装。

如果你想要更多'警报'而不是'图形',请查看nagios

至于“要监控的内容”,您希望在系统和应用程序级别监控系统,所以是:网络/内存/磁盘I / O,中断等等。 应用程序级别更具体,因此Web服务器可能会测量命中/秒,错误/秒(非200响应)等,数据库可能会测量查询/秒,平均查询实现时间等。

===============>>#6 票数:1

小心上面提到的mysql中的slowquerylog。 它只应在试图找出某些查询速度慢的原因时使用。 它具有在启用时使所有查询变慢的副作用。 :P它用于调试,而不是日志记录。

尽可能考虑“被动监控”。 例如,嗅探网络流量而不是从服务器监视它 - 让另一台机器观察数据包来回飞行并记录有关它们的统计信息。

(顺便说一句,这是我的最爱之一 - 如果你看到建立连接并注意它们结束时,你可以找到很多关于慢查询或减慢其他任何内容的数据,而不会对你关心的服务器造成任何负担。 )

===============>>#7 票数:0

除了top和auth.log之外,我经常看看mtop,并启用mysql的slowquerylog并观察mysqldumpslow。

我还使用Nagios来监控CPU,内存和登录用户(在VPS或专用服务器上)。 最后一次让我知道我以外的其他人何时登录。

===============>>#8 票数:0

网络当然:)使用MRTG获得一些不错的带宽图,它们只是大部分时间..直到垃圾邮件发送者发现你的安全漏洞并且它突然增加。

如上所述,Nagios适用于警报,并且易于设置。 然后,您可以使用mrtg插件来获取网络流量的警报。

我还推荐使用ntop,因为它显示了网络流量的来源。

一个很好的链接,让你去Munin和Monit: 链接文本

===============>>#9 票数:-1

我通常会看toptail -f /var/log/auth.log

  ask by oneself translate from so

未解决问题?本站智能推荐:

1回复

显示来自远程Linux服务器的统计信息

我的意图是将统计信息(例如,从远程服务器加载平均和RAM使用情况)显示到LCD面板24/7上。 我希望每1-3秒更新一次信息。 其他线程建议使用SSH命令来检索信息。 使用SSH适合我的目的,我担心的是 由于所有登录尝试,我的日志文件可能会肿 每隔几秒钟建立和断
3回复

如何最大化服务器性能?

我一直在努力了解性能和可伸缩性,并想知道开发人员/系统管理员正在做些什么来为他们的系统做好准备。 为了使答案标准化,如果您能够尽最大努力回应以下任何一项,将会有所帮助: 简介 - 关于Joomla的杂志出版物; JobIgniter + OpenId + AJAX上的Jobs板
5回复

Linux系统管理服务器配置?

我需要一个软件来在一个中央位置管理linux服务器的配置。 它应该能够自动将更改推送到服务器。 版本控制将是一个优势...
8回复

从linux服务器发送短信最简单的系统是什么?

从linux服务器发送短信最简单的系统是什么? 它是一个Debian系统。 短信不会太多。 使用什么硬件和软件? 也许使用一些短信发送服务?
8回复

什么是适用于Windows的良好服务器性能监控软件? [关闭]

我正在寻找一些软件来监控单个服务器的性能警报。 优选地是免费的且具有合理的默认配置。 编辑:为了澄清,我想在Windows机器上运行该软件并监视远程Windows服务器的CPU /内存/等。 使用警报(不是单个应用程序)。 编辑:我认为没有必要远程运行这个软件,我也会满足于在服务
6回复

如何在apache中处理共享服务器上的带宽计费?

您在apache的共享环境中处理vhost的带宽计费有哪些解决方案? 如果您正在使用日志解析,那么当日志变得非常大时,您的解决方案是否可以很好地扩展? 有人使用任何类型的模块吗?
8回复

以不同用户身份运行Linux服务的最佳实践

服务默认在我的RHEL框上以启动时的root身份启动。 如果我没记错的话,对于使用/etc/init.d的init脚本的其他Linux发行版也是如此。 您认为最好的方法是让流程作为我选择的(静态)用户运行? 我到达的唯一方法是使用类似的东西: 但这似乎有点凌乱......
1回复

linux Alternatives命令数据库(查找名称)

我正在使用已安装各种Java版本的系统,并使用“ alternatives”命令在它们之间进行切换。 我知道可以使用以下命令更改Java版本: 其中“ java ”是该替代列表的名称。 我有兴趣查找当前安装的所有替代产品的名称列表。 例如,我知道'alternatives'也管理着
2回复

我如何知道Linux中的下一个设备映射器?

我正在尝试编写一个简单的剧本,以自动扫描新磁盘并将其放入现有的VG中,然后进行扩展。 不幸的是,我无法弄清楚Linux如何知道下一个设备映射器(例如/ dev / sdc),从而无法创建完美的ansible剧本来为我执行此任务。 在线扫描新磁盘: 有人对此有任何想法吗?
1回复

在Linux机器中设置鱿鱼代理客户端

在Linux机器上设置鱿鱼代理客户端的正确设置是什么?我按照文档设置了如下导出变量 squid服务器在端口3128上运行且可访问,并且squid.conf也没有防火墙或acl问题 当我更改yum.conf以在同一服务器和IP上使用代理时,yum配置工作