Centos配置Cacti

CentOS6.5搭建Cacti

 
一、首先要安装Apache、PHP、MySQL、Net-SNMP和RRDTool,运用yum命令(在线安装)安装所有cacti依赖软件。过程如下:
 
    #yum install mysql mysql-server php-mysql httpd php php-pdo lm_sensors net-snmp php-snmp net-snmp-utils perl-Net-Daemon perl-PlRPC perl-DBI rrdtool perl-rrdtool perl-DBD-MySQL net-snmp-libs
 
注:yum安装rrdtool中,由于rrdtool依赖的包比较多,所以请首先增加源,方式如下:
    #vi /etc/yum.repos.d/CentOS-Base.repo
文件末尾增加如下链接:
    [dag]
    name=Dag RPM Repository for Red Hat Enterprise Linux
    baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag
    gpgcheck=1
    gpgkey=http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
enabled=1
(退出vi编辑器命令  :q!(退出不保存), :wq(保存并退出)
    #rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
 
安装完成以后,可以查看以下httpd和mysqld服务的状态
    #service httpd status
#service mysqld status
 
二、配置SNMP
    #vi /etc/snmp/snmpd.conf
--将下边这行中的default
    com2sec notConfigUser default public
--改为127.0.0.1
    com2sec notConfigUser 127.0.0.1 public  (注意:如果以后往cacti里添加其他设备,只要在被监控的设备上把127.0.0.1改为cacti服务器的地址就行了,其实这个地址就是cacti服务器地址)
--将下边这行中的systemview
    access notConfigGroup "" any noauth exact systemview none none
--改为all
    access notConfigGroup "" any noauth exact all none none
--将下边这行的注释"#"号去掉
    #view all included .1 80
--启动snmpd服务
    #service snmpd start  (查看服务状态的命令:service 服务名称 status,如service snmpd status)
--启动httpd/mysql服务
    #service httpd start
#service mysqld start
查看Apache是否运行正常的方法,浏览器输入127.0.0.1,看是否出现Apache的测试页面。
   
设置服务开机自启的命令:
  #chkconfig xxx(需要自启服务的名称) on  如下例:
  #chkconfig httpd on
可以将httpd、mysqld、snmpd服务设置成开机自启
 
三、安装cacti
 
1、下载cacti:
    #wget http://www.cacti.net/downloads/cacti-0.8.8d.tar.gz
    #tar -zvxf cacti-0.8.8d.tar.gz
    #mv cacti-0.8.8d /var/www/html/cacti  --将其放到/var/www/html目录下并改名
     
 
2、在数据库中建库、授权、导入数据库结构
 
请记得给数据库root设置一个密码,以保护安全。可以使用如下的命令来设置数据库root的密码:
#mysqladmin --user=root password somepassword
#mysqladmin --user=root --password reload  --为用户root设置数据库密码
#mysql -u root   --使用root身份登陆mysql,如 mysql -u root –p
    mysql> create database cacti;  --创建一个名为cacti的数据库
mysql> grant all privileges on cacti.* to cacti@localhost(Linux用户主机名) identified by 'cacti'(该用户登录数据库的密码)with grant option;
例如:mysql> grant all privileges on cacti.* to root@localhost identified by 'root' with grant option;  --授权用户root的(远程)连接权限
mysql> grant all privileges on cacti.* to [email protected] identified by 'cacti' with grant option;
mysql> grant all on cacti.* to root;
mysql> grant all on cacti.* to root@localhost;
mysql> grant all on cacti.* to cacti;
mysql> grant all on cacti.* to cacti@localhost;
     
    mysql> use cacti;  --启用cacti数据库
    mysql> source /var/www/html/cacti/cacti.sql;  --导入数据库结构
mysql> quit  --退出数据库
退出数据库后,可以尝试root是否还可以重新登录mysql。
 
--配置cacti以连接数据库
    #vi /var/www/html/cacti/include/config.php
     
    $database_type = "mysql";
    $database_default = "cacti";
    $database_hostname = "localhost";
    $database_username = "root";
    $database_password = "刚才设置的mysql数据库root的密码";
    $database_port = "3306";
     
 
3、添加cacti用户,否则cacti不能写入rrd和log目录,将会无法生成图片(如果使用root用户,则可以不用添加,跳过该步骤)
 
    #useradd cacti -d /var/www/html/cacti -s /bin/false
    #chown -R cacti /var/www/html/cacti/rra /var/www/html/cacti/log
 
4、增加入一个计划任务,使得 cacti 每五分钟生成一个监控图表。
 
    #crontab -e
 
--加入如下内容。注意poller.php的路径
 
    */5 * * * * php /var/www/html/cacti/poller.php > /dev/null 2>&1
 
有可能存在crontab命令没有安装的情况,具体安装方法如下:
1. 确认crontab是否安装:
执行 crontab 命令如果报 command not found,就表明没有安装
2. 安装 crontab
执行 yum install -y vixie-cron
3. 确认是否安装成功:
执行 crontab -l
4. 看是否设置了开机自动启动
chkconfig --list crond
5. 启动crontab
service crond start
 
--如果暂时未看到图表,可以手工执行,生成图表
#php /var/www/html/cacti/poller.php > /dev/null 2>&1
 
5、到处完成cacti最后的配置,在浏览器输入:http://localhost/cacti,将进入cacti登录页面,第一次登录用户名和密码都是admin,它会要求你立即设置新密码。
6、完成设置后,通过http://localhost/cacti/,添加要监控的服务器、交换机等等。
 
四、错误处理:
 
1、字体在图形中显示不正常的解决方法:下载并安装cjkuni-fonts中文字体,字体名ukai.ttf;
 
    #wget http://ftp.tw.debian.org/debian/pool/main/t/ttf-arphic-ukai/ttf-arphic-ukai_0.1.20060928.orig.tar.gz
    #tar zxvf ttf-arphic-ukai_0.1.20060928.orig.tar.gz
    #cd ttf-arphic-ukai-0.1.20060928/
    #cp ukai.ttf /usr/share/fonts/ukai.ttf
     
 
2、cacti无法显示监控图表的解决方法:
 
1)    查看/var/www/html/cacti/rra目录是否可写,设置用户权限;
2)    系统时间设置问题;
3)    RRDTool版本设置是否正确(查看RRDTool版本命令:#rrdtool -v),设置方法:Console -> Cacti Settings -> Genera -> RRDTool Utility Version -> RRDTool 1.3.X;(根据自己安装的rrdtool选择,查看rrdtool版本的方法:rrdtool -v)
 
3、登陆http://localhost/cacti访问cacti管理页面,提示如下:
You don't have permission to access /cacti on this server.
原因是SeLinux的设置导致权限问题,因此,我们需要关闭 Selinux
 
1).查看SELinux状态:
# /usr/sbin/sestatus -v      // 如果SELinux status参数为enabled即为开启状态
SELinux status:  enabled
# getenforce                      //也可以用这个命令检查
 
2).关闭SELinux:
a、临时关闭(不用重启机器):
# setenforce 0                       // 设置SELinux 成为permissive模式  (关闭SELinux)
# setenforce 1                       // 设置SELinux 成为enforcing模式     (开启SELinux)
 
b、修改配置文件需要重启机器:
# vi /etc/selinux/config
将SELINUX=enforcing 改为SELINUX=disabled
重启机器即可
 
 
附注:
在CentOS下添加和删除用户命令:
添加用户 test:adduser test
修改test密码:passwd test
删除用户test: userdel test
删除用户以及用户目录: userdel -f test
 
Service httpd start
Service mysqld start
Service snmpd start
Service crond start
Setenforce 0
Iptables –F
 
设置IP地址、网关、DNS
 
约定:
第一块网卡为外网
第二块网卡为内网(没有外网的机器也要将内网配置在第二块网卡上)
 
说明:CentOS 6.5默认安装好之后是没有自动开启网络连接的!
输入账号root
再输入安装过程中设置的密码,登录到系统
 
vi  /etc/sysconfig/network-scripts/ifcfg-eth0   #编辑配置文件,添加修改以下内容
 
BOOTPROTO=static   #启用静态IP地址
ONBOOT=yes  #开启自动启用网络连接
IPADDR=192.168.21.129  #设置IP地址
NETMASK=255.255.255.0  #设置子网掩码
GATEWAY=192.168.21.2   #设置网关
DNS1=8.8.8.8 #设置主DNS
DNS2=8.8.4.4 #设置备DNS
IPV6INIT=no  #禁止IPV6
:wq!  #保存退出
 
service ip6tables stop   #停止IPV6服务
chkconfig ip6tables off  #禁止IPV6开机启动
service yum-updatesd stop   #关闭系统自动更新
chkconfig yum-updatesd off  #禁止开启启动
service network restart  #重启网络连接
ifconfig  #查看IP地址
 
设置主机名
 
约定:
主机名命名规范:业务.机房.主备.域名
这里设置主机名为:bbs.hz.m.osyunwei.com
 
1、hostname “bbs.hz.m.osyunwei.com”
#设置主机名为bbs.hz.m.osyunwei.com
2、vi /etc/sysconfig/network  #编辑配置文件
HOSTNAME= bbs.hz.m.osyunwei.com
#修改localhost.localdomain为bbs.hz.m.osyunwei.com
:wq!  #保存退出
3、vi /etc/hosts #编辑配置文件
127.0.0.1  bbs.hz.m.osyunwei.com localhost
#修改localhost.localdomain为bbs.hz.m.osyunwei.com
:wq!  #保存退出
shutdown -r now  #重启系统
 
Linux修改主机名
 
1.临时修改主机名
显示主机名:
spark@master:~$ hostname
master
修改主机名:
spark@master:~$ sudo hostname hadoop
spark@master:~$ hostname
hadoop
PS:以上的修改只是临时修改,重启后就恢复原样了。

2.永久修改主机名
redhat/centos上永久修改
 
[root@localhost ~]# cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=localhost.localdomain
GATEWAY=192.168.10.1
修改network的HOSTNAME项。点前面是主机名,点后面是域名。没有点就是主机名。
[root@localhost ~]# vi /etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=master
这个是永久修改,重启后生效。目前不知道怎么立即生效。
想立即生效,可以同时采用第一种方法。
 
还有一个修改是:
/etc/hosts
127.0.0.1              localhost.localdomain
127.0.0.1后面的那一部分。
 
deb/ubuntu上修改:
 
hostname
localhost.localdomain
sudo vi /etc/hostname
在/etc/hostname里面直接填上hostname为master
spark@localhost:~$ cat /etc/hostname
localhost
重启后,提示符变成了。
spark@master:~$
如果不想重启,则用hostname名令。
 
3. 其他修改方式
 
用sysctl 修改kernel.hostname
查看:
spark@master:~$ sysctl kernel.hostname
kernel.hostname = master
修改:
spark@master:~$ sudo sysctl kernel.hostname=hadoop
kernel.hostname = hadoop
 
重新打开shell就变成如下hostname了hadoop
 
spark@master:~$
 
centos彻底删除mysql
 
yum remove mysql mysql-server mysql-libs compat-mysql51
rm -rf /var/lib/mysql
rm /etc/my.cnf
查看是否还有mysql软件:
rpm –qa | grep mysql
有的话继续删除


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章