1:cacti监控mysql:

被监控端:
$ sudo apt-get install snmpd
$ sudo vim /etc/snmp/snmd.conf
  #agentAddress  udp:127.0.0.1:161         //注释掉此行
  agentAddress udp:161,udp6:[::1]:161      //启用此行,监听的地址根据自己需要做相应修改
$ sudo /etc/init.d/snmpd restart

$ mysql -uroot -p***** //确保mysql服务正常使用
  mysql> grant all on *.* to cacti@192.168.1.% identified by 'cacti';  
    //创建能让监控端cacti访问获取相关状态的用户,此处的权限,用户 名,ip等可根据自己需求做相应修改

监控端:
$ wget http://mysql-cacti-templates.googlecode.com/files/better-cacti-templates-1.1.8.tar.gz  
$ tar zxvf better-cacti-templates-1.1.8.tar.gz
$ cp ~/better-cacti-templates-1.1.8/scripts/ss_get_mysql_stats.php /usr/local/cacti/scripts/
$ sudo vim /usr/local/cacti/scripts/ss_get_mysql_stats.php   //修改如下
      $mysql_user = 'cacti';
      $mysql_pass = 'cacti'; //此处的用户密码即为被监控端mysql创建的用户cacti
在浏览器上登陆到cacti界面选择Import Templates导入模板cacti_host_template_x_mysql_server_ht_0.8.6i-sver1.1.8.xml即可


2:cacti监控apache
被监控端:
$ sudo apt-get install snmpd
$ sudo vim /etc/snmp/snmd.conf
  #agentAddress  udp:127.0.0.1:161  //注释掉此行
  agentAddress udp:161,udp6:[::1]:161    //启用此行,监听的地址根据自己需要做相应修改
$ sudo /etc/init.d/snmpd restart
  
$ sudo vim /etc/apache2/mods-enabled/status.conf   
        //确保你的apache服务器能正常访问,ubuntu默认是开启status模块的,所以只需简单修改此配置文件
  <Location /server-status>
     SetHandler server-status
     Order deny,allow
     Deny from all
     Allow from 192.168.1.0/24  //此处的访问限制根据自己需要做相应修改
  </Location>
$ sudo /etc/init.d/apache2 restart
测试:浏览器输入http://apache_server_IP/server-status,如能出现状态信息即可

监控端:
apache模板下载地址:http://forums.cacti.net/download/file.php?id=18576
$ unzip ApacheStats_0.8.2.zip 
$ cp ApacheStats_0.8.2/ss_apache_stats.php /usr/local/cacti/scripts/
浏览器上登陆到cacti界面选择Import Templates导入模板cacti_host_template_webserver_-_apache.xml即可


3:cacti监控nginx
被监控端操作:
$ sudo apt-get install snmpd
$ sudo vim /etc/snmp/snmd.conf
  #agentAddress  udp:127.0.0.1:161  //注释掉此行
  agentAddress udp:161,udp6:[::1]:161   //启用此行,监听的地址根据自己需要做相应修改
$ sudo /etc/init.d/snmpd restart

$ sudo vim /etc/nginx/sites-enabled/default   //确保nginx服务并修改nginx配置文件添加如下:
  location /nginx_status {
     stub_status on;
     # disable access_log if requared
     access_log   off;
     #allow XX.YY.AA.ZZ;
     #deny all; //同样,访问控制根据自己需要
  }
$ sudo /etc/init.d/nginx restart  
测试:访问http://nginx_server_IP/nginx_status 来访问到Nginx的运行状态页面

监控端操作:
下载地址:http://forums.cacti.net/download/file.php?id=12676&sid=98a76c5c52e106554396dae69d6eca1a
$ tar zxvf cacti-nginx.tar.gz
$ cd cacti-nginx
$ cp get_nginx_clients_status.pl get_nginx_socket_status.pl /usr/local/cacti/scripts/
$ cd /usr/local/cacti/scripts/
$ chmod 0755 get_nginx_socket_status.pl
$ chmod 0755 get_nginx_clients_status.pl

测试:
$ get_nginx_clients_status.pl http://192.168.1.222/nginx_status
                        //显示的内容跟 nginxstatus 状态页内容相当即可。如出现no (LWP::UserAgent not found) 为perl相关组件不完整 
解决办法:
$ sudo apt-get install libwww.perl

导入模板:
Import to cacti cacti_graph_template_nginx_clients_stat.xml and cacti_graph_template_nginx_sockets_stat.xml


4:cacti监控memcached
被监控端:
$ sudo apt-get install snmpd
$ sudo vim /etc/snmp/snmd.conf
  #agentAddress  udp:127.0.0.1:161  //注释掉此行
  agentAddress udp:161,udp6:[::1]:161    //启用此行,监听的地址根据自己需要做相应修改
$ sudo /etc/init.d/snmpd restart
被监控端的memcache服务无需做特定的配置,只需memcache能够正常提供服务且监听的地址及端口能让监控端访问即可

监控端:
因模板使用了python来获取数据,所以需要安装python环境以及python的memcached客户端
$ wget ftp://ftp.tummy.com/pub/python-memcached/python-memcached-1.48.tar.gz 
$ tar xzvf python-memcached-1.45.tar.gz
$ cd python-memcached-1.48
$ sudo python setup.py install    //如有报如下错误
   Traceback (most recent call last):
      File "setup.py", line 3, in <module>
      from setuptools import setup
   ImportError: No module named setuptool
$ sudo apt-get install python-setuptools //执行此命令
$ sudo python setup.py install //再次执行此命令

$ wget http://content.dealnews.com/dealnews/developers/cacti-memcached-1.0.tar.gz
$ tar zxvf cacti-memcached-1.0.tar.gz
$ cd cacti-memcached-1.0
$ sudo cp memcached /usr/local/cacti/scripts

测试 
/usr/bin/python /usr/local/cacti/scripts/memcached IP  //如不能正常获取数据,检查服务器端memcache监听的地址及端口

导入模板
Import Templates --> Import Template from Local File //导入xml,保存

以上设置只是针对默认端口11211,但是当你的端口不是11211,而是其他的端口,做以下修改:
Console---Data Input Methods--Memcached – Statistics
找到Input String的值python <path_cacti>/scripts/memcached.py <hostname>
更改成:python <path_cacti>/scripts/memcached.py –p 11200 <hostname>    //此处端口改为了11200,根据自己需要更改即可

以上是具体监控端与被监控端的相应配置,配置完成之后,都需要在cacti界面添加相应主机,添加相应模板,创建图像等等,此处不再详述其操作。