教你如何监控 Apache?

标签: 技术分享 Cloud Insight | 发表时间:2016-01-28 15:24 | 作者:张璐
出处:http://news.oneapm.com/

什么是 Apache?

Apache 是一款 HTTP 服务器软件,现在更名为 "http",而 Apache 则成了一个(包含httpd的项目)巨大的 基金组织,根据习惯后文都用 Apache 特指 Apache HTTP Server(httpd)。Apache 诞生于1995年,且从 96 年 4 月起就一直是全球最流行的 web 服务器。该项目的定位是一个开源且跨平台(支持类 UNIX 系统和 Windows 系统)的 HTTP 服务器,旨在提供与当前 HTTP 标准同步,安全、高效、可拓展的服务。

监控Apache的参数

Apache提供哪些监控参数

现在主要使用的 Apache 版本是 Version 2.0,Version 2.2 和 Version 2.4。提供的监控参数基本没有变化,下表是 Apache2.2 提供的主要监控参数(相对实用的)。

参数名称 参数描述
Total Accesses 服务器自启动来接收到的请求连接数
Total kBytes 传输的总数据量,单位是KB
CPULoad NCPU负荷
Uptime 运行时间,单位秒
ReqPerSec 每秒请求数
BytesPerSec 每秒传输数据量,单位B/s
BytesPerReq 平均每个请求的数据传输量(事实上就是BytesPerSec/BytesPerSec)
BusyWorkers 在跑的进程数
IdleWorkers 空闲的进程数

此外,还有其他监控参数如当前使用的 Apache 版本号、每个进程状态,以及 Apache2.4 提供的新参数如当前的系统时间、Apache 安装时间等等。这些数据犹如鸡肋,有用却并不是我们想在监控页需要看到的。

简单说明一下

Total Accesses 就是服务器启动后,总访问数,Total kBytes 对应于这些访问共用了多少数据传输量,单位是 KB。

CPULoad 是指当前服务器占用 CPU 的负荷值。值的一提的是,在 2.4 版本里还有 Server Load1,Server Load5 和 Server Load15 三个参数,分别表示前 1、5 和 15 分钟内 cpu 的平均负荷。

Uptime 就是从启动到你看到不间断的运行时间,单位秒。在 2.4 版里也多了个 ServerUptime 参数,表示结果也人性化一点,会分开显示天时分秒,然而这也改变不了它没有什么用命运。

ReqPerSec,BytesPerSec 和 BytesPerReq,这个就不用解释了就是字面上的意思,前两个分别是每秒请求数、每秒传输的数据量。第三个参数是前两个参数计算来的,计算公式是 BytesPerReq=BytesPerSec/ReqPerSec

BusyWorkers,IdleWorkers 分别是在跑的进程和空闲的进程数。IdleWorkers 就是负责等待新的访问(连接请求),而 BusyWorkers 就是在读请求和发送回应。监控参数 Scoreboard 里面的'_'对应于 IdleWorkers,'W' 和 'R' 对应于 BusyWorkers。

具体参数可看示例 官网状态页,另外 这个页面是为了方便抓取数据而设置的。

下图是通过定时抓取这些参数值制作的图表。

apache折线图

如何获取Apache监控参数

Apache 的监控参数会在一个监控页面上显示,这个监控页需要开启 Apache 的 mod_status 模块。这就要求在 Apache 的配置文件 httpd.conf 里添加一段 Location。在版本 2.0 和 2.2 里面,添加如下

  <Location /server-status>
    SetHandler server-status

    Order Deny,Allow
    Deny from all
    Allow from example.com
</Location>

在版本 2.4 里面添加如下

  <Location "/server-status">
    SetHandler server-status
    Require host example.com
</Location>

在版本 2.3.6 之后指令 ExtendedStatus 默认处于 On 的状态。所以,在版本 2.3.6 之前,想要看到全部的监控参数,需要在 httpd.conf 中添加如下:

  ExtendedStatus On  

官网上也说了,把这个打开的话会影响到 Apache 的速度。请根据自身情况和实际需求,酌情使用。

配置完了需要重起一下 Apache,然后就会在你 your.server.name/server-status上看到监控页面,大概是这个样子:

Apache-example

如果需要定时刷新的话,只需要把网址改为 your.server.name/server-status?refresh=N,每 N 秒自动刷新一次。如果需要采集数据的话,这个 your.server.name/server-status?auto对你帮助会大一些。

顺便安利一下,装一个 Ci,就能看到前面关于 Apache 基于时间的运行状态的图了。免费注册免费使用,还能设置报警策略。具体,戳 这里

Cloud Insight 集监控、管理、计算、协作、可视化于一身,帮助所有 IT 公司,减少在系统监控上的人力和时间成本投入,让运维工作更加高效、简单。

相关 [监控 apache] 推荐:

教你如何监控 Apache?

- - OneAPM 博客
Apache 是一款 HTTP 服务器软件,现在更名为 "http",而 Apache 则成了一个(包含httpd的项目)巨大的 基金组织,根据习惯后文都用 Apache 特指 Apache HTTP Server(httpd). Apache 诞生于1995年,且从 96 年 4 月起就一直是全球最流行的 web 服务器.

Apache Shiro 介绍

- - CSDN博客推荐文章
什么是Apache Shiro?. Apache shiro 是一个强大而灵活的开源安全框架,可清晰地处理身份认证、授权、会话(session)和加密. Apache Shiro最主要的初衷是为了易用和易理解,处理安全问题可能非常复杂甚至非常痛苦,但并非一定要如此. 一个框架应该尽可能地将复杂的问题隐藏起来,提供清晰直观的API使开发者可以很轻松地开发自己的程序安全代码.

Apache Derby Papers

- -
Derby Type System (Note: if your browser shows HTML source for this page instead of displaying it, save the file locally with . It will prompt you to click on "Grant license to ASF for inclusion in ASF works", and this is the permission we need in place to host your contribution on the Derby web site..

Apache防止攻击

- - 小彰
为了防止恶意用户对Apache进行攻击,我们需要安装mod_security这个安全模块. mod_security 1.9.x模块的下载与安装. 下载地址: http://www.modsecurity.org/download/index.html. 建议使用1.9.x,因为2.x的配置指令与1.x完全不同,解压后进入解压目录,执行:.

Apache OpenOffice 3.4发布

- - Solidot
Apache OpenOffice的第一个版本v3.4正式发布. 主要新特性包括:改进ODF支持,包括ODF 1.2加密选项和新电子表格功能;改进Calc组件的数据透视表(Pivot Table)支持;原生支持SVG,增强图形如线帽和剪切变形;简体和繁体中文等原生语言支持;改进性能等. 在甲骨文将OpenOffice.org捐给Apache软件基金会后,OOo的命运曾存在许多争议.

Apache PDFBox 1.8.0 发布

- - 开源中国社区最新新闻
Apache PDFBox 1.8.0 发布了,该版本除了修复大量 bug 之外,还包含如下新特性:. PDFBox是Java实现的PDF文档协作类库,提供PDF文档的创建、处理以及文档内容提取功能,也包含了一些命令行实用工具. PDF 文档加密与解密. 与 Lucene搜索引擎的集成. 填充PDF/XFDF表单数据.

Apache Log4j 2.0介绍

- - CSDN博客推荐文章
Apache Log4j 2.0介绍. 作者:chszs,转载需注明. 作者博客主页:http://blog.csdn.net/chszs. Apache Log4j是著名的Java日志框架之一,在早些年应用最广. 但近两年来,随着SLF4J和LogBack的兴起,很多流行的开源框架在日志模块方面逐步转移到SLF4J+LogBack上,Log4j日渐衰落.

Apache 的 MaxClients 與 MaxRequestsPerChild

- - SSORC.tw
對於 Apache 架設的伺服器,在遇到連線數問題上,以下參數是會考慮微調的. 不過遇到多個 VirtualHost 與連線變多時,需要適時調整. ServerLimit 與 MaxClients 是針對同時間最大連線數為多少,也等於是 Apache 程序數量,ps 一下就會有多少個 /usr/sbin/httpd 等.

apache 工作模式

- - 互联网 - ITeye博客
如果httpd -l列出prefork.c. 则表示是 prefork 工作方式. 这表明当前apache2的工作方式是 prefork. prefork的工作原理是,控制进程在最初建立“StartServers”个子进程后,为了满足MinSpareServers设置的需要创建一个进程,等待一秒钟,继续创建两个,再等待一秒钟,继续创建四个……如此按指数级增加创建的进程数,最多达到每秒32个,直到满足MinSpareServers设置的值为止.

Apache投票接受OpenOffice.org

- 灰灰 - Solidot
甲骨文已宣布将开源办公软件项目OpenOffice.org捐赠给Apache基金会. 6月13日,Apache基金会进行了投票表决,以压倒性多数同意接受OpenOffice.org成为Apache的一个孵化器项目. OpenOffice.org将转交给Apache基金会管理,它可能需要数个月时间才能变成Apache的新顶级项目.