<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>GzV8.com &#187; Cacti</title>
	<atom:link href="http://www.gzv8.com/archives/tag/cacti/feed" rel="self" type="application/rss+xml" />
	<link>http://www.gzv8.com</link>
	<description>互联网引擎</description>
	<lastBuildDate>Thu, 06 Jan 2011 04:08:28 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>让 Cacti 为的 Mysql 提供专业的性能监控支持。</title>
		<link>http://www.gzv8.com/archives/235</link>
		<comments>http://www.gzv8.com/archives/235#comments</comments>
		<pubDate>Thu, 11 Mar 2010 07:38:38 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Cacti]]></category>
		<category><![CDATA[Mysql]]></category>
		<category><![CDATA[Better Cacti Templates]]></category>
		<category><![CDATA[图表]]></category>
		<category><![CDATA[监控]]></category>

		<guid isPermaLink="false">http://www.gzv8.com/?p=235</guid>
		<description><![CDATA[如果说 Mysql Enterprise 跟普通“民用”版有啥不一样？
细节的可能也会有一堆，但最明显的，莫过于其内置有专门性能监控页面。
让你洞悉每次调整后对性能的影响，或者当前数据库的压力情况。
“民用”版本一直都无法享受到这番待遇。直到 Better Cacti Templates 的出现。
呼，我写了好几篇关于 Cacti 的文章，也有好多朋友为此资讯了我很多问题。
第一次看到本文的朋友们可能对 Cacti 还不大了解。它是一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具。它通过snmpget来获取数据，并使用 RRDtool绘画图形。详细可参阅：http://www.oschina.net/p/cacti
但其运行的环境依赖 Apache + php + Mysql + Snmp 所以如果如果单是为了这个监控工具来搭建运行环境的话可有点心理准备。Linux 下 LAMP 环境的搭建可真会难道不少新手。而且如果是纯粹为了Cacti而搭建php环境，也有点浪费系统资源，不大合乎实际。
但当然了，如果你使用 Cacti 来监控数十数百计的服务器。这点操劳可完全值得！
下边入正题，在已经正常运作的 Cacti 系统上增加《Better Cacti Templates》包含的Mysql 监控模块。
可让Cacti立即变成一个专业的Mysql监控器。让“民用”版本的Mysql也能有完整的性能数值图表系统。
安装方法如下：
1，首先到该地址下载最新版：http://code.google.com/p/mysql-cacti-templates/downloads/list 
2，下载到服务器后解压：# tar zxvf better-cacti-templates-1.1.6.tar.gz
3，解压后进入目录：# cd better-cacti-templates-1.1.6
4，复制 # better-cacti-templates-1.1.6/scripts 目录中所有文件到Cacti安装目录中的scripts 下(举例)：
# cp ./scripts/* /data/web_server/admin/cacti/scripts/
5，复制完毕后，再进入 # better-cacti-templates-1.1.6/templates 目录，把里边的
# cacti_host_template_x_mysql_server_ht_0.8.6i-sver1.1.6.xml 下载到本地。
6，打开并登陆 cacti 管理界面 ，然后在理面板中导入刚才下载的xml文件。
当出现以下信息时代表模板导入已经建造成功：
Cacti has imported the following [...]]]></description>
			<content:encoded><![CDATA[<p>如果说 Mysql Enterprise 跟普通“民用”版有啥不一样？<br />
细节的可能也会有一堆，但最明显的，莫过于其内置有专门性能监控页面。<br />
让你洞悉每次调整后对性能的影响，或者当前数据库的压力情况。<br />
“民用”版本一直都无法享受到这番待遇。直到 Better Cacti Templates 的出现。</p>
<p>呼，我写了好几篇关于 Cacti 的文章，也有好多朋友为此资讯了我很多问题。<br />
第一次看到本文的朋友们可能对 Cacti 还不大了解。它是一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具。它通过snmpget来获取数据，并使用 RRDtool绘画图形。详细可参阅：<a href="http://www.oschina.net/p/cacti">http://www.oschina.net/p/cacti</a><br />
但其运行的环境依赖 Apache + php + Mysql + Snmp 所以如果如果单是为了这个监控工具来搭建运行环境的话可有点心理准备。Linux 下 LAMP 环境的搭建可真会难道不少新手。而且如果是纯粹为了Cacti而搭建php环境，也有点浪费系统资源，不大合乎实际。</p>
<p>但当然了，如果你使用 Cacti 来监控数十数百计的服务器。这点操劳可完全值得！</p>
<p>下边入正题，在已经正常运作的 Cacti 系统上增加《Better Cacti Templates》包含的Mysql 监控模块。<br />
可让Cacti立即变成一个专业的Mysql监控器。让“民用”版本的Mysql也能有完整的性能数值图表系统。</p>
<p>安装方法如下：</p>
<p>1，首先到该地址下载最新版：<a href="http://code.google.com/p/mysql-cacti-templates/downloads/list">http://code.google.com/p/mysql-cacti-templates/downloads/list</a> <br />
2，下载到服务器后解压：# tar zxvf better-cacti-templates-1.1.6.tar.gz<br />
3，解压后进入目录：# cd better-cacti-templates-1.1.6<br />
4，复制 # better-cacti-templates-1.1.6/scripts 目录中所有文件到Cacti安装目录中的scripts 下(举例)：<br />
# cp ./scripts/* /data/web_server/admin/cacti/scripts/</p>
<p>5，复制完毕后，再进入 # better-cacti-templates-1.1.6/templates 目录，把里边的<br />
# cacti_host_template_x_mysql_server_ht_0.8.6i-sver1.1.6.xml 下载到本地。</p>
<p>6，打开并登陆 cacti 管理界面 ，然后在理面板中导入刚才下载的xml文件。<br />
当出现以下信息时代表模板导入已经建造成功：</p>
<p>Cacti has imported the following items: <br />
 <br />
CDEF <br />
[success] X Negate CDEF [new] <br />
 <br />
GPRINT Preset <br />
[success] X MySQL Server Version t1.1.4:s1.1.4 [new] <br />
[success] X Normal [new] <br />
 <br />
Data Input Method <br />
[success] X Get MySQL Stats/MyISAM Indexes IM [new] <br />
&#8230; snip &#8230; <br />
 <br />
Data Template <br />
[success] X MyISAM Indexes DT [new] <br />
&#8230; snip &#8230; <br />
 <br />
Graph Template <br />
[success] X MyISAM Indexes GT [new] <br />
&#8230; snip &#8230; <br />
 <br />
Host Template <br />
[success] X MySQL Server HT [new]</p>
<p>然后就可以到Cacti中所需监控 Mysql 备中添加 Mysql 计量模板</p>
<p>步骤跟之前写的一篇关于 Cacti 增加 <strong>NginxStatus</strong>  监控的方式差不多。这里我就不周章篇幅了。<br />
大家可以参阅：<a href="http://www.oschina.net/bbs/thread/279">http://www.oschina.net/bbs/thread/279</a><br />
而且还有好几十个数据计量模板可供选择。</p>
<p>图形效果：</p>
<p> <img src="http://www.oschina.net/uploads/bbs/2010/0305/123025_QyKe_0.jpg" alt="" /></p>
<p><img src="http://www.oschina.net/uploads/bbs/2010/0305/123041_ySWX_0.jpg" alt="" /></p>
<p><img src="http://www.oschina.net/uploads/bbs/2010/0305/123053_rGWD_0.jpg" alt="" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.gzv8.com/archives/235/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>使用 cacti 批量监控服务器以及其 PHP 运作环境配置</title>
		<link>http://www.gzv8.com/archives/89</link>
		<comments>http://www.gzv8.com/archives/89#comments</comments>
		<pubDate>Thu, 11 Mar 2010 04:24:52 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Cacti]]></category>
		<category><![CDATA[Linux & Unix]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.gzv8.com/?p=89</guid>
		<description><![CDATA[本文转载自：http://www.ibm.com/developerworks/cn/linux/l-cn-cacti/index.html?ca=drs-cn-0430
级别： 初级
范 绰耘 (qbanke@163.com), 系统管理员, 广州市摩网信息技术有限公司
2009 年 4 月 30 日
本文主要介绍说明用于支持 Cacti 运作的 PHP+RRDtool 环境的详细配置方法。使其能集中式监控多台，不同平台类型的服务器。以及支持 SNMP 网络设备运作状态。前言
Cacti 功能类似于我们所熟悉的 MRTG 。 MRTG 确实是非常好的老牌系统监控工具，但由于他历史实在很久了，使得许多功能以及配置等方面都比较落后。实现得比较费劲，管理起来很麻烦。比如我有几百个被监测点，分布在不同的机房，而且我需要将这些服务器和网络设备分类，这样的话我就要将这些被监测点放在不同的 mrtg 配置文件中，运行多个 crontab，而且还要自己写了一些 html 页面对其进行管理。
Cacti 其实是一套 php 程序，一个 rrdtool 工具。它运用 snmpget 采集数据，使用 rrdtool 绘图。界面非常漂亮，它提供了强大的数据管理和用户管理功能，一张图是属于一个 host 的，每一个 host 又可以挂载到一个树状的结构上。
用户的管理上，作为一个开源软件，它做到为指定一个用户能查看的“树”、host、甚至每一张图，还可以与 LDAP 结合进行用户的验证。 Cacti 还提供自己增加模板的功能，让你添加自己的 snmp_query 和 script 。功能相当强大！
本文前半部分是教程，主要介绍了 Cacti 以及其 PHP 运行环境的安装配置。后半部分将实际举例如何使用 Cacti 监控诸如 Linux，Windows [...]]]></description>
			<content:encoded><![CDATA[<p>本文转载自：<a href="http://www.ibm.com/developerworks/cn/linux/l-cn-cacti/index.html?ca=drs-cn-0430">http://www.ibm.com/developerworks/cn/linux/l-cn-cacti/index.html?ca=drs-cn-0430</a></p>
<p>级别： 初级</p>
<p><a href="http://www.oschina.net/bbs/thread/432?lp=5#author">范 绰耘</a> (<a href="mailto:qbanke@163.com?subject=使用 cacti 批量监控服务器以及其 PHP 运作环境配置">qbanke@163.com</a>), 系统管理员, 广州市摩网信息技术有限公司</p>
<p>2009 年 4 月 30 日</p>
<blockquote><p>本文主要介绍说明用于支持 Cacti 运作的 PHP+RRDtool 环境的详细配置方法。使其能集中式监控多台，不同平台类型的服务器。以及支持 SNMP 网络设备运作状态。<a name="1.前言|outline">前言</a></p></blockquote>
<p>Cacti 功能类似于我们所熟悉的 MRTG 。 MRTG 确实是非常好的老牌系统监控工具，但由于他历史实在很久了，使得许多功能以及配置等方面都比较落后。实现得比较费劲，管理起来很麻烦。比如我有几百个被监测点，分布在不同的机房，而且我需要将这些服务器和网络设备分类，这样的话我就要将这些被监测点放在不同的 mrtg 配置文件中，运行多个 crontab，而且还要自己写了一些 html 页面对其进行管理。</p>
<p>Cacti 其实是一套 php 程序，一个 rrdtool 工具。它运用 snmpget 采集数据，使用 rrdtool 绘图。界面非常漂亮，它提供了强大的数据管理和用户管理功能，一张图是属于一个 host 的，每一个 host 又可以挂载到一个树状的结构上。</p>
<p>用户的管理上，作为一个开源软件，它做到为指定一个用户能查看的“树”、host、甚至每一张图，还可以与 LDAP 结合进行用户的验证。 Cacti 还提供自己增加模板的功能，让你添加自己的 snmp_query 和 script 。功能相当强大！</p>
<p>本文前半部分是教程，主要介绍了 Cacti 以及其 PHP 运行环境的安装配置。后半部分将实际举例如何使用 Cacti 监控诸如 Linux，Windows 。以及支持 SNMP 管理协议的路由器等网络设备。</p>
<p> Cacit 运行环境需要 PHP + Mysql + rrdtool 以及 snmp 工具的支持。</p>
<p>下边是本次配置需要用到的软件。</p>
<p><strong>Catci:</strong></p>
<ol type="1">
<li>cacti-0.8.6j.tar.gz</li>
<li>rrdtool-1.2.27.tar</li>
<li>net-snmp-5.0.9-2.30E.15</li>
<li>net-snmp-devel-5.0.9-2.30E.15</li>
<li>net-snmp-libs-5.0.9-2.30E.15</li>
<li>net-snmp-utils-5.0.9-2.30E.15</li>
</ol>
<p><strong>PHP:</strong></p>
<ol type="1">
<li>php-5.2.6.tar.gz</li>
<li>curl-7.15.0.tar.gz</li>
<li>freetype-2.1.9.tar.gz</li>
<li>gettext-0.16.1.tar.gz</li>
<li>gd-2.0.35.tar.gz</li>
<li>jpegsrc.v6b.tar.gz</li>
<li>libart_lgpl-2.3.17.tar.gz</li>
<li>libpng-1.2.18.tar.gz</li>
<li>libxml2-2.6.32.tar.gz</li>
<li>ZendOptimizer-3.3.0a-linux-glibc21-i386.tar.gz</li>
<li>zlib-1.2.3.tar.gz</li>
<li>libxml2-2.6.32.tar.gz</li>
</ol>
<p><strong>Apache：</strong></p>
<p>httpd-2.2.6.tar.gz</p>
<p><strong>Mysql:</strong></p>
<p>mysql-5.1.24-rc.tar.gz</p>
<p>开始构建完整的 PHP 运行的环境，我们以全新安装的 RedHatAs4 updata4 操作系统环境为例。</p>
<p><strong>首先编译安装</strong><strong>Apache httpd server</strong></p>
<ol type="1">
<li># tar zxvf httpd-2.2.6.tar.gz</li>
<li># cd httpd-2.2.6</li>
<li># ./configure &#8211;prefix=/usr/local/apache26 &#8211;enable-module=so &#8211;with-mpm=worker &#8211;enable-module=rewrite</li>
<li># make &amp;&amp; make install</li>
</ol>
<p><strong>第二步安装 PHP+GD 等所需的支持插件</strong></p>
<p><strong>编译安装</strong><strong>libxml</strong></p>
<ol type="1">
<li># tar zxvf libxml2-2.6.32.tar.gz</li>
<li># cd libxml2-2.6.32.tar.gz</li>
<li># ./configure &#8211;prefix=/usr/local/libxml2/</li>
<li># make &amp;&amp; make install</li>
</ol>
<p><strong>编译安装</strong><strong>zlib</strong></p>
<ol type="1">
<li># tar zxvf zlib-1.2.3.tar.gz</li>
<li># cd zlib-1.2.3</li>
<li>#./configure &#8211;prefix=/usr/local/zlib2/</li>
<li># make &amp;&amp; make install</li>
</ol>
<p><strong>编译安装</strong><strong>jpeg</strong><strong>支持</strong></p>
<ol type="1">
<li># tar -zxf jpegsrc.v6b.tar.gz</li>
<li># cd jpeg-6b/</li>
<li># ./configure &#8211;prefix=/usr/local/jpeg6</li>
<li># make</li>
<li># make install-lib</li>
<li># make install</li>
</ol>
<p>( 该版本的 jpeg 在实际安装过程中，make install 的时候会出现好几个找不到目录，或目录不存在的 error 。只需按照提示人手创建缺失目录，然后再令其 make install 直到无任何错误提示且顺利完成为止。 )</p>
<p><strong>编译安装 libpng</strong></p>
<ol type="1">
<li># tar zxvf libpng-1.2.18.tar.gz</li>
<li># cd libpng-1.2.18.tar.gz</li>
<li>#cp scripts/makefile.gcmmx makefile</li>
<li>#./configure &#8211;disable-shared &#8211;prefix=/usr/local/libpng2/</li>
<li># make &amp;&amp; make install</li>
</ol>
<p><strong>编译安装 freetype</strong></p>
<ol type="1">
<li># tar zxvf freetype-2.1.9.tar.gz</li>
<li># cd freetype-2.1.9</li>
<li>#./configure &#8211;disable-shared &#8211;prefix=/usr/local/freetype2/</li>
<li># make &amp;&amp; make install</li>
</ol>
<p><strong>编译安装 libart_lgpl</strong></p>
<ol type="1">
<li># tar zxvf libart_lgpl-2.3.17.tar.gz</li>
<li># cd ibart_lgpl-2.3.17</li>
<li>#./configure &#8211;disable-shared &#8211;prefix=/usr/local/libart/</li>
<li># make &amp;&amp; make install</li>
</ol>
<p><strong>编译安装 gettext</strong></p>
<ol type="1">
<li># tar zxvf gettext-0.16.1.tar.gz</li>
<li># cd gettext-0.16.1</li>
<li># ./configure &#8211;prefix=/usr/local/gettext/</li>
<li># make &amp;&amp; make install</li>
</ol>
<p><strong>编译安装 gd 库 :</strong></p>
<ol type="1">
<li># tar zxvf gd-2.0.35.tar.gz</li>
<li># cd gd-2.0.35</li>
<li># ./configure &#8211;prefix=/usr/local/gd2 &#8211;with-zlib=/usr/local/zlib2/ &#8211;with-png=/usr/local/libpng2/ &#8211;with-jpeg=/usr/local/jpeg6/ &#8211;with-freetype=/usr/local/freetype2/ &#8211;with-libart=/usr/local/libart/ &#8211;with-gettext=/usr/local/gettext/ &#8211;with-libxml=/usr/local/libxml2</li>
<li># make &amp;&amp; make install</li>
</ol>
<p><strong>编译安装 Curl 支持</strong></p>
<ol type="1">
<li># tar zxvf curl-7.15.0.tar.gz</li>
<li># cd curl-7.15.0</li>
<li># ./configure &#8211;prefix=/usr/local/curl</li>
<li># make &amp;&amp; make install</li>
</ol>
<p><strong>编译安装 PHP</strong></p>
<ol type="1">
<li># tar zxvf php-5.2.6.tar.gz</li>
<li># cd php-5.2.6</li>
<li># ./configure &#8211;prefix=/usr/local/php &#8211;with-apxs2=/usr/local/apache26/bin/apxs &#8211;with-jpeg-dir=/usr/local/jpeg6/ &#8211;with-png-dir=/usr/local/libpng2/ &#8211;with-gd=/usr/local/gd2/ &#8211;with-freetype-dir=/usr/local/freetype2/ &#8211;with-zlib-dir=/usr/local/zlib2/ &#8211;with-mysql=/usr/local/mysql &#8211;with-curl=/usr/local/curl &#8211;with-gettext=/usr/local/gettext</li>
<li># make &amp;&amp; make install</li>
<li># cp php.ini-dist /usr/local/php/lib/php.ini ( 拷贝 PHP 配置文件至安装目录 )</li>
<li># vi /usr/local/apach26/conf/httpd.conf ( 修改 apache 配置文件并加载 PHP 支持 )</li>
</ol>
<p>要改的有如下几处</p>
<ol type="1">
<li>一般都在 #AddType application/x-tar .tgz 下加一行 :<br />
#LoadModule php5_module modules/libphp5.so    AddType application/x-httpd-php .php</li>
<li>如果你搜索其它地方没有以下这行 :<br />
LoadModule php5_module modules/libphp5.so</li>
</ol>
<p>请把上面的 # 号去掉，还有找到<br />
DirectoryIndex index.html index.html.var<br />
在后面加 index.php 让它把 index.php 做为默认页</p>
<ol type="1">
<li>保存 httpd.conf 文件 .<br />
启动 apache<br />
# /usr/local/apache2/bin/apachectl start<br />
如果没有出错 , 写一个测试页放到你网页目录下 . 访问就应该可以看到 php 的版本等信息了 !</li>
</ol>
<p><strong>用</strong> <strong>ZendOptimizer</strong> <strong>加速</strong> <strong>PHP</strong></p>
<ol type="1">
<li>#tar zxvf ZendOptimizer-2.5.3-linux-glibc21-i386.tar.gz</li>
<li>#cd ZendOptimizer-2.5.3-linux-glibc21-i386</li>
<li>#./install.sh</li>
</ol>
<p>安装的时候注意输入正确的安装 apache 的路径等内容 !<br />
安装完毕 , 再看看 phpinfo 页面的 zend 选项就发现了 !!</p>
<p> 安装MYSQL<br />
# groupadd mysql   <br />
# useradd -g mysql mysql   <br />
# tar zxvf mysql-5.1.24-rc.tar.gz   <br />
# cd mysql-5.1.24-rc   <br />
# ./configure &#8211;prefix=/usr/local/mysql    &#8211;localstatedir=/data/mysql ( 指定数据文件目录 )    &#8211;without-innodb &#8211;without-debug &#8211;with-extra-charsets=gbk    &#8211;with-extra-charsets=all &#8211;enable-assembler &#8211;with-pthread    &#8211;enable-thread-safe-client  &#8211;with-client-ldflags=-all-static   <br />
# make &amp;&amp; make install     <br />
# cp ./support-files/mysql.server /etc/init.d/mysql ( 复制 Mysql 启动服务至系统 )    # chmod 777 /etc/init.d/mysql ( 赐予可执行权限 )    # chown mysql:mysql /data/mysql  ( 设置数据文件目录属性 )</p>
<p>设置数据文件目录属性这一步相当重要，许多朋友第一次使用 tar 包安装 Mysql 的时候就因该目录权限问题导致 Mysql 无法启动。相当头大 . </p>
<pre># /usr/local/mysql/bin/mysql_install_db 	 ( 初始化数据库 )
# service mysql start 				 ( 启动 Mysql)
# /usr/local/mysql/bin/mysqladmin -u root -p password 'xxxxx' ( 设置管理员密码 xxx 默认值为空 )</pre>
<p>好了，至此 mysql 安装完毕 .</p>
<p>这样构建 Cacit 运行的 PHP+Mysql 环境就基本上完成了。</p>
<p>下边开始安装 Cacit 所需要的 rrdtools 图形工具以及 snmp 工具</p>
<p><strong>编译安装 rrdtools</strong></p>
<table border="0" cellspacing="0" cellpadding="0" width="100%">
<tbody>
<tr>
<td>
<pre># tar zxvf rrdtool-1.2.27.tar    # cd rrdtool-1.2.27
# ./configure --prefix=/usr/local/rrdtool
# make &amp;&amp; make install</pre>
</td>
</tr>
</tbody>
</table>
<p> </p>
<p>如果 ./configure 时出现下面这个错误</p>
<table border="0" cellspacing="0" cellpadding="0" width="100%">
<tbody>
<tr>
<td>
<pre>configure: error: Please fix the library issues listed above and try again.</pre>
</td>
</tr>
</tbody>
</table>
<p> </p>
<p>表明系统有功能缺失，需安装 libart_lgpl-devel.rpm 这个包</p>
<p>如果还是提示听样的错误，有可能是找不到 FreeType</p>
<p>把 /usr/local/freetype2/lib/pkgconfig 下的 .pc 文件拷贝到 /usr/lib/pkgconfig 下即可</p>
<p>如果 make install 时出现 [tclrrd.o] 错误</p>
<p>就安装 tcl-8.4.7-2.i386.rpm 以及 tcl-devel-8.4.7-2.i386.rpm 这 2 个包</p>
<p>安装 net-snmp、snmpwalk 和 snmpget 命令  <br />
# rpm -qa | grep net-snmp<br />
( 查看系统中有否已经装有所需的软件 )   <br />
net-snmp-5.0.9-2.30E.15   <br />
net-snmp-devel-5.0.9-2.30E.15   <br />
net-snmp-libs-5.0.9-2.30E.15   <br />
net-snmp-utils-5.0.9-2.30E.15</p>
<p>没有或者缺少的话都需要逐一安装上。</p>
<p>而且还很有可能会因 rpm 的依存关系无法顺利安装，须使用 &#8211; - nodeps 参数。</p>
<p>以上所需的 rpm 安装包都能在 RedHatAs4 安装光盘上找到 .</p>
<p> 至此，Cacti 所需的运行环境都已经准备好了，接下来开始进行安装以及配置。</p>
<p>稍微修改系统中 snmp 的配置</p>
<p># vi /etc/snmp/snmpd.conf</p>
<ol type="1">
<li>com2secnotConfigUser default public<br />
改为：com2secnotConfigUser 127.0.0.1 public</li>
<li>access  notConfigGroup &#8221;"  any   noauth    exact  systemview  none none<br />
改为：accessnotConfigGroup&#8221;"anynoauthexact all none none</li>
<li>#view all    included  .1         80<br />
将前面的 # 注释 去掉。<br />
保存退出 :wq</li>
<li>重新启动 snmp 服务<br />
# service snmpd restart</li>
</ol>
<p><strong>安装 / 配置 cacti</strong></p>
<ol type="1">
<li># tar zxvf cacti-0.8.6j.tar.gz</li>
<li># mv cacti-0.8.6j /data/web_server/admin/cacti<br />
( 把 cacit 剪切到自定的 web 目录下 )</li>
<li># chmod 777 – Rf /data/web_server/admin/cacti<br />
( 设置目录权限 , 避免因权限问题而导致目录无法写入 )</li>
<li># cd /data/web_server/admin/cacti<br />
在Mysql中创建一个新的库，并导入cacti 目录中cacti.sql 并设置好该表的用户权限，然后编辑 cacti 的数据库配置文件。</li>
<li># vi /data/web_server/admin/cacti/include/config.php
<pre>$database_type= “ mysql ” ;
$database_default = “数据库名称” ;
$database_hostname = “默认是 localhost ” ;
$database_username = “用户名” ;
$database_password = “密码” ;</pre>
<p>更改用户、密码等项与上面给出的对应保存退出</li>
<li># crontab – e （加入自动执行规则，每 5 分钟执行。）
<pre>*/5 * * * * /usr/local/php/bin/php /data/web_server/admin/cacti/poller.php  \         &gt; /dev/null 2&gt;&amp;1
（其中 /usr/local/php/bin/php 这个为 php 的安装目录）</pre>
</li>
<li>保存退出：wq</li>
<li>在 apache 上设置好 cacti 所在 web 目录</li>
<li>打开浏览器 <a href="http://youhostname/cacti">http://</a><a href="http://youhostname/cacti">youhostname/cacti</a></li>
<li>进入 cacti 的初始设置页面<br />
第一次默认登陆账号：admin 密码 admin<br />
登陆后它就会让你立即修改新密码</li>
</ol>
<p><strong>说一下 cacti 设置页中各项“零件”的路径。</strong></p>
<p>当修改好新密码进入，第一个显示出的页面就是让你设置 rrdtool，snmp 等工具的路径。这是个很重要的环节，必须无误，要不然 cacti 将无法生成出统计图。</p>
<pre>snmpwalk Binary Path ： /usr/bin/snmpwalk
snmpget Binary Path： /usr/bin/snmpget
RRDTool Binary Path： /usr/local/rrdtool/bin/rrdtool
PHP Binary Path： /usr/local/php/bin/php
Cacti Log File Path： /data/web_server/admin/cacti/log/cacti.log
Cactid Poller File Path： /data/web_server/admin/cacti/poller.php</pre>
<p>默认的配置中会出现许多“ NotFound ”</p>
<p>按照上边的路径把“ NotFound ”的项都重新填上。</p>
<p>手动运行一次</p>
<p>/usr/local/php/bin/php /data/web_server/admin/cacti/poller.php &gt; /dev/null 2&gt;&amp;1</p>
<p>你就能在顶上 graphs 中 localhost 里头看到本机的内存，CPU，登陆用户等的统计图 .<br />
<a name="N10391"><strong>图 1. Cacti 统计图</strong></a><br />
<img src="http://www.ibm.com/developerworks/cn/linux/l-cn-cacti/images/image001.jpg" alt="Cacti 统计图" width="515" height="356" /></p>
<p>但默认 Cacti 是没有创建网卡流量的监控图的。要我们自己来加。</p>
<p>回到 console 菜单</p>
<p>选择 Devices 监控设备。<br />
<a name="N103A9"><strong>图 2. 设备监控</strong></a><br />
<img src="http://www.ibm.com/developerworks/cn/linux/l-cn-cacti/images/image002.jpg" alt="设备监控" width="515" height="356" /></p>
<p><a name="N103B8"><strong>图 3. 添加设备</strong></a><br />
<img src="http://www.ibm.com/developerworks/cn/linux/l-cn-cacti/images/image003.jpg" alt="添加设备" width="515" height="356" /></p>
<p>然后点击右上角的 Add 进行添加</p>
<p><strong>Description</strong> 设备名称 ( 可随意输入 )</p>
<p><strong>Hostname</strong> 设备地址 ( 如果是本机就填 127.0.0.1 )</p>
<p><strong>Host Template</strong> 设备的类型 ( 选择 ucd/net SNMP Host )</p>
<p>然后其他按照默认即可，如下图<br />
<a name="N103DB"><strong>图 4. 添加的新设备</strong></a><br />
<img src="http://www.ibm.com/developerworks/cn/linux/l-cn-cacti/images/image004.jpg" alt="添加的新设备" width="515" height="313" /></p>
<p>点 create 创建。</p>
<p>如果刚才填写的地址无误，创建成功后，会在该页面左上方出现所新建设备的 <strong>SNMP Information</strong></p>
<p>然后点击隔壁醒目的 <strong>* Create Graphs for this Host</strong> 即开始创建监控图表<br />
<a name="N103F7"><strong>图 5. 创建图表-1</strong></a><br />
<img src="http://www.ibm.com/developerworks/cn/linux/l-cn-cacti/images/image005.jpg" alt="创建图表-1" width="515" height="356" /></p>
<p><a name="N10406"><strong>图 6. 创建图表-2</strong></a><br />
<img src="http://www.ibm.com/developerworks/cn/linux/l-cn-cacti/images/image006.jpg" alt="创建图表-2" width="515" height="343" /></p>
<p>如图 6，沟选你所要监控的网卡以及 IP，点 create 。</p>
<p>这样就完成了你所指定设备统计图的创建。</p>
<p><a name="N1041A"><strong>图 7. 添加的设备统计图</strong></a><br />
<img src="http://www.ibm.com/developerworks/cn/linux/l-cn-cacti/images/image007.jpg" alt="添加的设备统计图" width="515" height="356" /></p>
<p>点击菜单中的 <a href="http://s1.someqone.com/cacti/graphs.php">Graph Management</a> 即可浏览到你刚才所创建的图表，如图 7 箭头所示。<br />
<a name="N10432"><strong>图 8. 统计图表</strong></a><br />
<img src="http://www.ibm.com/developerworks/cn/linux/l-cn-cacti/images/image008.jpg" alt="统计图表" width="515" height="334" /></p>
<p>有一个小技巧，初次要求 cacti 创建指定设备的统计图表，通过 <a href="http://s1.someqone.com/cacti/graphs.php">Graph Management</a> 进入图 8 所示页面时，统计表图片会是一个 X ( 叉 ) 。这是因为在配置初期指定系统中每 5 分钟执所行的 php 语句还没到点运作。要么你就等 5 分钟，要么你就直接进入系统手动执行：</p>
<p> /usr/local/php/bin/php /data/web_server/admin/cacti/poller.php &gt; /dev/null 2&gt;&amp; </p>
<p>然后曲线表中就能出现第一个峰值，每 5 分钟自动更新。 24 小时后，曲线图就能完整地出现在你眼前。</p>
<p>回到图 7 <a href="http://s1.someqone.com/cacti/graphs.php">Graph Management</a> 的界面勾选新建的图表项，然后在下边</p>
<p>Choose an action 框中选择 Place on a Tree(default Tree)</p>
<p>就能把该图表类似快捷方式的样子张贴到本文图 1 所示的 Graphs，Default tree 栏目中。然而你也能自己在菜单栏的 <a href="http://s1.someqone.com/cacti/tree.php">Graph Trees</a>中新建定制栏目，然后用相同的方法把新建的统计图往你所定制的栏目中放。</p>
<p>Cacti 的强大功能不单止可以通过 snmp 获取装有 Linux，Unix 操作系统服务器的运行状态，还能监控 Windows 系统服务器。跟诸如 Cisco，Linksys， 路由器，交换机，无线 AP 。或者其他支持 snmp 管理协议的网络设备。</p>
<p><a name="4.实际应用|outline">实际应用</a></p>
<p>下边我们举出实应用的例子。<br />
设备结构：</p>
<ol type="1">
<li><strong>网络入口路由器 Linksys RV042</strong>。<br />
Linksys 的一款路由器，主要负责，外网接入路由，防火墙，以及端口映射。</li>
<li><strong>server1 WEB 应用服务器</strong><br />
操作系统： Linux RedHat As4<br />
Eth0，Eth1 双网卡工作。前者接入路由器映射至外网。后者直连至 server2<br />
进行反向代理 ( proxy ) 以及数据备份以及同步等功能。<br />
IP 分别为 192.168.3.2 以及 192.168.10.2</li>
<li><strong>server2</strong><strong>储存，</strong><strong>FTP</strong><strong>与</strong><strong>WEB</strong> <strong>应用服务器</strong><br />
操作系统： Windows2003 r2<br />
与 server1 网络环境相仿，双网卡工作。<br />
IP 分别为 192.168.3.3 以及 192.168.10.3</li>
</ol>
<p>Cacti 已经配置完成，安装在 server1 上。第一台添加到监控表里边的是路由器 RV042 。打开路由器的 WEB 设置页面，勾选并启用 SNMP 功能。如图 9</p>
<p>Send SNMP Trap to： 192.168.3.2（ server1 的 IP ）</p>
<p>然后其他输入框按照默认留空即可，但需留意 Get Community Name: 所填写的组名： public 。保存设置。<br />
<a name="N104A4"><strong>图 9. 保存设置</strong></a><br />
<img src="http://www.ibm.com/developerworks/cn/linux/l-cn-cacti/images/image009.jpg" alt="保存设置" width="512" height="331" /></p>
<p>登陆 Cacti ，console 菜单栏中点击 <a href="http://s1.someqone.com/cacti/host.php">Devices</a>。跟前边图 1 至 8 添加新设备以及创建统计图表的步骤相同</p>
<p><strong>Description</strong> 设备名称 ( 我们这里自定为 Linksys RV042)</p>
<p><strong>Hostname</strong> 设备地址 ( 路由器的地址 192.168.3.1 )</p>
<p><strong>Host Template</strong> 设备的类型 ( 选择 ucd/net SNMP Host 或者是 Cisco Router )</p>
<p>然后其他按照默认即可。</p>
<p>创建成功后，也会在该页面左上方出现所新建设备的 Linksys RV042 SNMP Information</p>
<p>点击隔壁 <strong>*Create Graphs for this Host</strong> 创建监控图表<br />
<a name="N104D4"><strong>图 10. 创建监控图表</strong></a><br />
<img src="http://www.ibm.com/developerworks/cn/linux/l-cn-cacti/images/image010.jpg" alt="创建监控图表" width="512" height="296" /></p>
<p>路由器 RV042 的端口以及 IP 等数据都取出来了。</p>
<p>勾选好所要监控的端口，点击 create 就能完成路由器监控图表的建立。</p>
<p>Cacti 运行在 Server1 上，所以配置方式跟前边所介绍是一样的，这里就掠过了。但顺带说一下，如果环境中还存在 Server3，而且跟 Server1 一样都是 Linux 系统，需要添加到 cacti 里头。哪么只需在该服务器上修改 snmp 配置，修改的内容也跟 server1 上几乎一样，不同的是。</p>
<p>编辑 /etc/snmp/snmpd.conf 的时候，原来填 127.0.0.1 ( 本机地址 ) 的地方换成 Cacti 所在运行的服务器 IP，即 server1: 192.168.3.2</p>
<ol type="1">
<li>com2secnotConfigUser default public<br />
改为：com2secnotConfigUser 192.168.3.2（server1 地址） public</li>
</ol>
<ol type="1">
<li>access  notConfigGroup &#8221;"  any   noauth    exact  systemview  none none</li>
</ol>
<p>改为：accessnotConfigGroup&#8221;"anynoauthexact all none none</p>
<ol type="1">
<li>#view all    included  .1         80<br />
将前面的 # 注释 去掉。</li>
</ol>
<ol type="1">
<li>保存退出 :wq</li>
</ol>
<p>重新启动 snmp 服务</p>
<p># service snmpd restart</p>
<p>在 Cacti ，<a href="http://s1.someqone.com/cacti/host.php">Devices</a>中创建新设备，</p>
<p>填写 Server3 IP 地址，设备类型： ucd/net SNMP Host , 创建图表 , 完成。</p>
<p>到 Server2 的 win2003 系统了。</p>
<ol>
<li><strong>给 Windows 安装 SNMP 协议支持</strong>通常由于 SNMP 是一个建议关闭的协议 ( 因为有安全漏洞 )，所以 Windows 2003 不是缺省安装的。但 Cacti 用的就是 SNMP 协议，而且服务器处于内网中，有路由器防火墙对外隔着，所以装吧。
<p>控制面板– &gt; 添加或删除程序– &gt; 添加 / 删除 Windows 组件– &gt; 管理和监视工具– &gt; 简单网络管理协议 (SNMP)</li>
<li><strong>修改 SNMP 的安全设置</strong> 这台服务是被监控方，所以需要像刚才举例的 Server3 那样修改 SNMP 的配置。否则在 server 1 里头的 Cacti 则永远也收不到 SNMP 的消息。打开 Services 窗口并找到 SNMP 服务，打开右键菜单，选择属性。在打开的窗口中找到“安全”选项页。在选项页中有两部分设置，上半部分是指 SNMP 服务接受哪种 Community 指示字，缺省情况下 Windows 2003 不对任何指示字反馈，我一般都添加设置为。
<p>团体名称：public， 权限：只读</p>
<p>下半部分添加可信任的主机名、IP 或是 IPX 名称。这里就也是添加 server1 的 IP 192.168.3.2 如图 11<br />
<a name="N10571"><strong>图 11. 修改 SNMP 的安全设置 </strong></a><br />
<img src="http://www.ibm.com/developerworks/cn/linux/l-cn-cacti/images/image011.jpg" alt="修改 SNMP 的安全设置" width="456" height="425" /></li>
<li><strong>修改防火墙</strong>如果你安装了防火墙，还要记得打开 UDP 161 端口。
<p>完成后重新启动 SNMP server 服务</p>
<p>登陆 Cacti 点 <a href="http://s1.someqone.com/cacti/host.php">Devices</a> 创建新设备。</p>
<p>填写 Server2 IP 地址，设备类型：Windows 2000/XP hosts</p>
<p>从 Windows 上获取到的 SNMP 信息也挺多，CPU，内存，虚拟内存，硬盘空间使用，网卡流量，一应俱全。最后创建图表 , 完成。<br />
<a name="N105A7"><strong>图 12. 修改防火墙</strong></a><br />
<img src="http://www.ibm.com/developerworks/cn/linux/l-cn-cacti/images/image012.jpg" alt="修改防火墙" width="515" height="352" /></li>
</ol>
<p> Cacti 真是一个世界。在正式使用 Cacti 接管原来的 MRTG 负责服务器状态监控的这段时间， 我所能最深刻感受到的，不止是它漂亮的界面跟图表。而且是对监控设备的创建，跟管理，都有着史无前例地简单，高效。作为系统管理员，我真相当感激 Cacti 的作者能开发出这一套如此拔尖的监控程序。</p>
<p>虽然它所运行的 PHP 环境以及 RRDtool 在前期配置的时候要花好多的时间跟功夫，</p>
<p>但也未尝不是一个新的选择。试想一下，你只需一阵子的功夫在一台服务器上把环境配好，Cacti 装好。以后，无论你要再添更多的服务器，要了解他们的”情绪”，就只需简单地在浏览器上登陆 Cacti – &gt; 新建设备 – &gt; 新建图表。区区几步，整整有条的服务器列表，CPU，硬盘，网卡等等读数的曲线都能一清二楚地显示在你面前。</p>
<p>当然！ Cacti 带来的强大功能以及方便还远不止这些，就交由大家之后去使用，去体验了。</p>
<p><a name="resources">参考资料 </a></p>
<ul>
<li>开源中国社区：<a href="http://www.oschina.net/">http://www.oschina.net</a></li>
<li>Cacti 中文站点：<a href="http://www.cacti.com.cn/">http://www.cacti.com.cn/</a></li>
<li>Cacti 英文站点：<a href="http://www.cacti.net/">http://www.cacti.net/</a></li>
<li>RRDtool 下载：<a href="http://oss.oetiker.ch/rrdtool/">http://oss.oetiker.ch/rrdtool/</a></li>
<li>PHP 官方站点：<a href="http://www.php.net/">http://www.php.net/</a></li>
<li>在 <a href="http://www.ibm.com/developerworks/cn/linux/">developerWorks Linux 专区</a> 寻找为 Linux 开发人员（包括 <a href="http://www.ibm.com/developerworks/cn/linux/newto/">Linux 新手入门</a>）准备的更多参考资料，查阅我们 <a href="http://www.ibm.com/developerworks/cn/linux/top10/index.html">最受欢迎的文章和教程</a>。</li>
<li>在 developerWorks 上查阅所有 <a href="http://www.ibm.com/developerworks/cn/views/linux/libraryview.jsp?search_by=Linux+%E6%8A%80%E5%B7%A7">Linux 技巧</a> 和 <a href="http://www.ibm.com/developerworks/cn/views/linux/libraryview.jsp?type_by=%E6%95%99%E7%A8%8B">Linux 教程</a>。</li>
</ul>
<p> </p>
<p>范绰耘，服务器软硬件技术架构、开源软件的热衷者，现任职广州市摩网信息技术有限公司系统管理员，您可以通过开源中国社区网站 http://www.oschina.net 来联系我。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gzv8.com/archives/89/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>为 Cacti 添加 Nginx status 监控。</title>
		<link>http://www.gzv8.com/archives/80</link>
		<comments>http://www.gzv8.com/archives/80#comments</comments>
		<pubDate>Thu, 11 Mar 2010 04:15:07 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Cacti]]></category>
		<category><![CDATA[Nginx]]></category>
		<category><![CDATA[nginx status]]></category>

		<guid isPermaLink="false">http://www.gzv8.com/?p=80</guid>
		<description><![CDATA[关于这一内容，在google上一搜就大把.内容如下：
nginx编译时允许http_stub_status_module
然后在 nginx.conf 中 添加如下(粗体字部分)
    server {
        listen       80;
        server_name  localhost;
        #charset koi8-r;
        #access_log  logs/host.access.log  main;
        location / {
            root   /data/web_server/index;
            index  index.html index.htm;
        }
       location /NginxStatus {
         stub_status on;
         access_log off;
       }
}
#killall -s HUP nginx  (令Nginx配置生效)
然后就通过 http://localhost/NginxStatus 来访问到Nginx的运行状态页面
下载cacti for nginx 插件包： http://www.oschina.net/uploads/code/cacti-nginx.tar.gz
解压后一共有5个文件，首先把 get_nginx_socket_status.pl 以及 get_nginx_clients_status.pl 上传至服务器cacti 目录下scripts 并设置可执行权限跟755读写权限
检测插件(举例)
# /data/cacti/scripts/get_nginx_clients_status.pl http://192.168.1.100/NginxStatus
显示的内容跟 NginxStatus 状态页内容相当即可。
然后在cacti管理面板导入
导入的方式是 Import Templates  &#62;  Import Template from [...]]]></description>
			<content:encoded><![CDATA[<p>关于这一内容，在google上一搜就大把.内容如下：</p>
<p>nginx编译时允许http_stub_status_module</p>
<p>然后在 nginx.conf 中 添加如下(粗体字部分)</p>
<p>    server {<br />
        listen       80;<br />
        server_name  localhost;<br />
        #charset koi8-r;<br />
        #access_log  logs/host.access.log  main;<br />
        location / {<br />
            root   /data/web_server/index;<br />
            index  index.html index.htm;<br />
        }</p>
<p><strong>       location /NginxStatus {<br />
         stub_status on;<br />
         access_log off;<br />
       }</strong></p>
<p>}</p>
<p>#killall -s HUP nginx  (令Nginx配置生效)<br />
然后就通过 http://localhost/NginxStatus 来访问到Nginx的运行状态页面<br />
下载cacti for nginx 插件包： <a href="http://www.oschina.net/uploads/code/cacti-nginx.tar.gz">http://www.oschina.net/uploads/code/cacti-nginx.tar.gz</a></p>
<p>解压后一共有5个文件，首先把 get_nginx_socket_status.pl 以及 get_nginx_clients_status.pl 上传至服务器cacti 目录下scripts 并设置可执行权限跟755读写权限</p>
<p>检测插件(举例)</p>
<p># /data/cacti/scripts/get_nginx_clients_status.pl <a href="http://192.168.1.100/NginxStatus">http://192.168.1.100/NginxStatus</a><br />
显示的内容跟 NginxStatus 状态页内容相当即可。</p>
<p>然后在cacti管理面板导入</p>
<p>导入的方式是 <strong>Import Templates</strong>  &gt;  Import Template from Local File (浏览导入插件包另外2个文件)</p>
<p>cacti_graph_template_nginx_clients_stat.xml<br />
cacti_graph_template_nginx_sockets_stat.xml</p>
<p>但详细操作起来可能会有个麻烦！</p>
<p>导入 cacti_graph_template_nginx_clients_stat.xml 跟 cacti_graph_template_nginx_sockets_stat.xml  的时候，cacti 出现红字提醒：</p>
<p>Error: XML: Hash version does not exist.</p>
<p>解决：因为你的 cacti 版本太旧了，去Cacti 下个最新版吧：<a href="http://www.cacti.net/download_cacti.php">http://www.cacti.net/download_cacti.php</a></p>
<p>导入成功后会显示：</p>
<table border="0" cellspacing="0" cellpadding="3" width="100%" bgcolor="#e1e1e1">
<tbody>
<tr>
<td colspan="100" bgcolor="#aaaaaa">
<table border="0" cellspacing="0" cellpadding="0" width="100%">
<tbody>
<tr>
<td bgcolor="#aaaaaa"><strong>Import Results</strong></td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr bgcolor="#f5f5f5">
<td>Cacti has imported the following items:<strong>GPRINT Preset</strong></p>
<p>[success] Normal [update]<br />
<strong>Data Input Method</strong></p>
<p>[success] nginx clients stat [update]<br />
<strong>Data Template</strong></p>
<p>[success] Nginx Clients Stat [update]<br />
<strong>Graph Template</strong></p>
<p>[success] Nginx Clients Stat [update]</td>
</tr>
</tbody>
</table>
<p>然后你就能在 <a href="http://www.oschina.net/p/cacti/graph_templates.php"><strong>Graph Templates</strong></a> 中看到你刚所导入 Xml 后所产生的模板</p>
<p><img src="http://www.oschina.net/uploads/bbs/2009/0410/114039_AyCp_565.jpg" alt="" /></p>
<p>接着进入<a href="http://www.oschina.net/p/cacti/graphs_new.php"><strong>New Graphs</strong></a> 选择任意一台已经创建好图标的监控服务器。</p>
<p><img src="http://www.oschina.net/uploads/bbs/2009/0410/114136_Z4Ud_565.jpg" alt="" /></p>
<p>呵&#8230;然后接下来的步骤不用说了吧？ 就跟创建网卡，CPU等之类的图表方式一样。</p>
<p><img src="http://www.oschina.net/uploads/bbs/2009/0410/114706_Slej_0.jpg" alt="" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.gzv8.com/archives/80/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

