- 论坛徽章:
- 0
|
cacti 安装手记
1.软件清单
/opt/software/
cacti-0.8.6j.tar.gz
php-5.2.2.tar.bz2
rrdtool-1.0.50.tar.gz
net-snmp-5.4.tar.gz
httpd-2.2.2.tar.gz
mysql-standard-5.0.27-linux-i686-glibc23
net-snmp-utils-5.1.2-11.EL4.7.i386.rpm
2.apache 安装
tar zxvf httpd-2.2.2.tar.gz
cd httpd-2.2.2
./configure --prefix=/usr/local/apache --with-mpm=worker --enable-so
make
make install
cp /usr/local/apache/bin/apachectl /etc/init.d/httpd
vi /etc/rc.d/rc.local
#apache start
/usr/local/apache/bin/apachectl start ---添加apache自启动
这样就可以实现service httpd restart 了
3.mysql 安装
tar -zvxf mysql-standard-5.0.27-linux-i686-glibc23.tar.gz
mv mysql-standard-5.0.27-linux-i686-glibc23 /usr/local/mysql
cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf
cd /usr/local/mysql
添加mysql用户及用户组
groupadd mysql
useradd -g mysql mysql
生成mysql系统数据库
/usr/local/mysql/scripts/mysql_install_db --user=mysql&
修改mysql目录权限
chown -R root /usr/local/mysql
chgrp -R mysql /usr/local/mysql
chown -R mysql /usr/local/mysql/data
启动mysql服务
/usr/local/mysql/bin/mysqld_safe --user=mysql&
如果没出现错,代表正常启动mysql服务了, 按Ctrl + C 跳出
# /usr/local/mysql/bin/mysqladmin -uroot password cactipw //修改密码
/usr/local/mysql/bin/mysqladmin -uroot -pcactipw shutdown //关闭MySQL
cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld 加在启动
service mysqld restart
chkconfig --add mysqld 加自启动
配置Mysql:
mysql/bin/mysqladmin -uroot password '你的密码' (给初始登陆mysql的用户root设置密码,当然不设置也能登陆)
/usr/local/mysql/bin/mysql -u root -p
mysql> set password for
[email=root@localhost=password('cactipw']root@localhost=password('cactipw'[/email]
);
mysql> Query OK, 0 rows affected (0.00 sec)
mysql> create database cactidb;
mysql> grant all on cactidb.* to root;
mysql> grant all on cactidb.* to
[email=root@localhost]root@localhost[/email]
;
mysql> grant all on cactidb.* to cactiuser;
mysql> grant all on cactidb.* to
[email=cactiuser@localhost]cactiuser@localhost[/email]
;
mysql> set password for
[email=cactiuser@localhost=password('cactipw']cactiuser@localhost=password('cactipw'[/email]
);
mysql> flush privileges; (See cacti docs/INSTALL)
mysql> exit
//select * from user;
//查询帐号是否添加成功
4.php 安装
tar jxvf php-5.2.2.tar.bz2
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql --enable-sockets --enable-snmp
开启php对snmp的支持
make
make install
cp php.ini-dist /usr/local/php/lib/php.ini
配置apache:
vi /usr/local/apache/conf/httpd.conf
按 I 键添加
修改
或者DocumentRoot "/opt/cacti/"
AddType application/x-tar .tgz
AddType application/x-httpd-php .php
AddType image/x-icon .ico
DirectoryIndex index.php index.html index.html.var
保存退出 :x
service httpd restart
5、检查apache+php+mysql
[root@script opt]# cd /opt/cacti/
[root@script htdocs]# touch test.php
[root@script htdocs]# vi test.php
保存退出 :wq
[root@script htdocs]# touch mysqltest.php
[root@script htdocs]# vi mysqltest.php
Host
User
Password
保存退出 :x 重启mysql + apache 服务
[root@script htdocs]# service mysql restart
[root@script htdocs]# service httpd restart
进入浏览器检查
http://localhost/test.php
和
http://localhost/mysqltest.php
6.rrtool 安装
注意:rrdtool1.2的版本由于已经不再自带外部的lib库(如cgilib,zlib等),所以需要从
http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/pub/libs/
下载这些库來安装。建议还是使用1.0的版本,比较方便。
tar zxvf rrdtool-1.0.50.tar.gz
cd rrdtool-1.0.50
./configure --prefix=/usr/local/rrdtool
make
make install
7.net-snmp 安装
rpm -qa | grep net-snmp
net-snmp-libs-5.1.2-11.EL4.7
net-snmp-5.1.2-11.EL4.7
net-snmp-devel-5.1.2-11.EL4.7
net-snmp-utils-5.1.2-11.EL4.7
保证安装了net-snmp、snmpwalk和snmpget命令。在/usr/bin/目录下
rpm -ivh net-snmp-utils-5.1.2-11.EL4.7.i386.rpm
cd /opt/software/
tar zxvf net-snmp-5.4.tar.gz
cd net-snmp-5.4
./configure --prefix=/usr/local/net-snmp --enable-developer
make
make install
安装过程中它会问你默认版本、用户名、perl模块和路径之类的问题,不理,一路回车。
编辑本地snmpd:
vi /etc/snmp/snmpd.conf
更改 1、com2sec notConfigUser default public
改为:com2sec notConfigUser 127.0.0.1 public
2、access notConfigGroup "" any noauth exact systemview none none
改为:access notConfigGroup "" any noauth exact all none none
3、#view all included .1 80
将前面的 # 注释 去掉。
保存退出 :x
service snmpd restart
注:如果你机器内没有snmpwalk和snmpge命令,请到安装盘里查找 net-snmp-utils 包,rpm -ivh net-snmp-utils-*.rpm 只后这两个命令就在系统里了。其他包也都在安装盘里 确保安装这四个包就OK
8.cacti 安装
http://www.cacti.net/downloads/cacti-0.8.6j.tar.gz
tar zxvf cacti-0.8.6j.tar.gz
mv cacti-0.8.6g /opt/cacti
cd cacti
useradd cactiuser
passwd cactiuser (pwd:cactipw)
/usr/local/mysql/bin/mysql –u root –p cactidb /dev/null 2>&1
保存退出:x
/etc/init.d/crond restart
9.cacti 配置
http://localhost/
默认账号密码都是admin
配置路径:
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: /opt/cacti/log/cacti.log
Cactid Poller File Path: /opt/cacti/poller.php
snmpwalk -Os -c public -v 1 172.16.100.28|grep mysql
排错
1. 首先检查一下rra/下面,有没有数据
2. snmpwalk -v 2c -c public localhost if 用来测试被控对象(serverIP)是否开启了SNMP服务
3. snmpwalk -v 2c localhost -c public .1.3.6.1.4.1.2021.10.1.3 查看被控端是否有CPU负载的数据返回
4. /usr/local/php/bin/php /opt/cacti/poller.php 用来测试PHP是否可以采集到数据。如果上面的都正确,但这步出错,很有可能是PHP配置的问题,或开启了SuLinux。
5. 如果按第2步snmpwalk能采集到数据,但第3步无法采集,可能是PHP设置的问题,修改PHP.ini,很有可能是PHP权限问题。
Cacti的使用
一. 监控远程Linux主机
a. 按如上方法开启远程主机的SNMPD服务
b. 在Cacti里,进行如下操作,步骤的过程:添加Devices->Graphs->Tree
1. Console->Management->Devices->add
Description:主机描述,可随便写
Hostname:主机IP地址
Host Template:主机模板,可以选UCD/Net snmp Host,也可以选None
SNMP Community:主机中的Community字段值,默认是public
SNMP Version:一般选Version1或Version2
2. Console->Management->Devices 选中刚才添加的主机,进入编辑界面
Associated Graph Templates:加入
1) ucd/net - CPU Usage
2) ucd/net - Load Average
3) ucd/net - Memory Usage
如果是本机,可以加入以下模板:
1) Linux - Memory Usage
2) Unix - Ping Latency
3) Unix - Load Average
4) Unix - Logged in Users
5) Unix - Processes
Associated Data Queries:加入
1) SNMP - Interface Statistics
3. Console->Create ->New Graphs
在列表框中选中刚添加的主机,再选中所有Graph Templates和Data Query,再Create。
4. Console->Management->Graph Trees->Default Tree->Add
Parent Item:父节点,默认是根
Tree Item Type:节点类型,Host
Host:选择主机
Sorting Type:排序方式[Create]
5. Graphs->Default Tree->HostName量看监控结果
二. 监控本地机
默认Cacti自动安装了监控本地机的模板,也可以自己重建,可按上面的方式,在第一步的Host Template中,选Local Linux Host就可,或者直接用IP,不用本地方式。
三. 日志
日志设置:Console -> Settings -> General -> Poller Logging Level,一般选Low既可,可以选Medium查看SNMPWALK的输出,Debug调试。
日志查看:Console -> Utilities -> View Log File
日志清除:Console -> Utilities -> Clear Log File
四. 图表删除
直接在Devices里删除主机,将删除相关所有数据。
在Console -> Graph Management里的Graph Management可单独删除一个图表,在Data Sources可删除一个查询。
五. 树的管理
Console -> Graph Trees,可以很方便的管理多台主机,将多台主机组成一个树形结构,并且,可以为树指定用户权限.
六. 权限的管理
Console -> User Management,可以管理用户,并指定权限.
七. 其他事项:
◎如果有图没文字的话,请到Configuration → Settings → paths下的
RRDTool Default Font Path 后面加入 C:\WINDOWS\Fonts\ARIAL.TTF -》SAVE
◎如果无法显示出图形请到Configuration → Settings → General下的
RRDTool Utility Version 将它改成RRDTool 1.2x
Cacti是一款免费的监控软件平台,可以通过安装不同的template来监控不同的设备或者软件.
这里介绍一下通过他监控Mysql的性能的步骤.
首先安装Mysql的template,下载那个teMysqlcache-XXXX.tar.gz的文件
.按照readme里面的安装:
1.复制mysql_stats.php和dumpMemcachedStats.php到cacti/scripts/目录
2.确认你的cacti抓取时间是1分钟一次,否则就要改xml文件中的周期.在它这个包里面自带了
1分钟的和5分钟的
3.在cacti的界面里面importxml文件cacti_host_template_temysql_host.xml,如果一切正常
,那么mysql的支持模板就加入了cacti.
之后就可以创建Mysql监控图形了.
首先给mysql加入一个能监控的帐号,需要有Process权限.如果监控innoDB的话,需要由Super权限.
可以用phpmyadmin或者mysql命令行方式加入:
GRANT PROCESS ON * TO
[email=cacti@'cactimachine']cacti@'cactimachine'[/email]
IDENTIFIEDby 'cactipasswd';
GRANT SUPER ON * TO
[email=cacti@%'cactimachine']cacti@%'cactimachine'[/email]
IDENTIFIEDBY 'cactipasswd';
登陆到cacti管理界面,在Management的Device下面选择Adda new Device,加入设备之后创建对应
的graph即可
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/27383/showart_479502.html |
|