CentOS7下cacti服务的搭建与配置

CentOS7下cacti服务的搭建与配置

1、准备工作

因为对mysql或mariadb版本有要求,在本次实验是采用的是msyql5.7
1.1安装辅助工具
#yum install yum-utils

1.2获取mysql80-community-release-el7-1.noarch.rpm数据包:
#wget https://repo.mysql.com//mysql80-community-release-el7-1.noarch.rpm

1.3安装mysql80-community-release-el7-1.noarch.rpm数据包:
#rpm -ivh mysql80-community-release-el7-1.noarch.rpm

1.4为yum的配置信息添加规则:
#yum-config-manager --disable mysql80-community
#yum-config-manager --enable mysql57-community

2、LAMP环境部署

2.1安装所需工具:
#yum install mysql-community-server mysql-community-devel httpd php php-mysql php-gd libjpeg* php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-bcmath php-mhash libxml2-devel libevent-devel curl-devel net-snmp* php-snmp

2.2为系统建立自启动进程:
#systemctl enable mysqld && systemctl enable httpd

2.3初始化mysql
#/usr/bin/mysql_install_db
当执行这个语句的时候会出现以下的错误:在这里插入图片描述
主要的原因是在mysql-5.7版本之后,就不能再使用该语句进行初始化,要换成一下语句:

#/usr/bin/mysqld –initialize –basedir=/usr/share/mysql –datadir=/var/lib/mysql/data/

#/usr/bin/mysql –initialize –basedir=/usr/share/mysql –datadir=/var/lib/mysql/data/
(basedir和datadir的路径分别是指软件根目录和数据目录)

2.4启动mysql
#systemctl start mysqld

2.5初始化密码
2.5.1修改my.cnf配置文件
#vim /etc/my.cnf

在末尾添加一行规则:
…………
…………
skip-grant-tables
在这里插入图片描述
保存并退出
(该规则是跳过mysql服务登录页面的密码验证)

2.5.2重启mysql服务
#systemctl restart mysqld

2.5.3打开mysql服务的登录页面
输入一下语句进入登录在输入密码的时候直接回车即可
#mysql -uroot -p
在这里插入图片描述
进入mysql表
mysql>use mysql;
在这里插入图片描述
最后执行更新密码的语句:
mysql>update user set authentication_string=password(‘123456’) where user=‘root’;
在这里插入图片描述
出现这个结果说明密码更新成功。

2.6修改php.ini配置文件
编辑php.ini配置文件
#vim /etc/php.ini
增加中文时区
date.timezone = “Asia/Shanghai”(可以通过搜索功能搜索“date.timezone”这个关键词,可以缩短一点查找的时间)
在这里插入图片描述
2.7启动httpd服务
#systemctl start httpd

测试LAMP环境,测试脚本如下:
#vi /var/www/html/phpinfo.php

输入的内容为:

<?php phpinfo(); ?>

保存并退出

然后在浏览器上访问ip/ phpinfo.php会出现以下页面,说明LAMP环境搭建成功:
在这里插入图片描述

3.安装配置cacti

A. 配置cacti库

编辑my.cnf配置文件
#vim /etc/my.cnf

添加一下内容:
[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci

重启mysql服务
#systemctl restart mysqld

再进入mysql服务
#mysql -uroot -p

在mysql服务的操作终端输入以下命令:
1、mysql> create database cacti character set utf8 ;
在这里插入图片描述
2、mysql> ALTER DATABASE cacti CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
在这里插入图片描述
3、mysql> grant all privileges on cacti.* to cacti@localhost identified by ‘1qaz@WSX’ ;
在这里插入图片描述
在这一步可能会出现以下的问题:
问题一:
在这里插入图片描述
解决办法是:进入my.cnf配置文件进行修改
把一下内容注释即可:
#skip-grant-tables

然后重启mysql服务

问题二:ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

在这里插入图片描述
解决方法:
使用alter user 语句来重置密码:
mysql>alter user ‘root’@‘localhost’ identified by ‘123456’;

此时也会出现以下问题:
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

解决方法:
(1)首先需要设置密码的验证强度等级,设置 validate_password_policy 的全局参数为 LOW 即可,输入设值语句:
mysql>set global validate_password_policy=LOW;
(2)设置为 6 位的密码,设置 validate_password_length 的全局参数为 6 即可,输入设值语句
mysql> set global validate_password_length=6;
在这里插入图片描述
4、mysql> grant select on mysql.time_zone_name to cacti@localhost identified by ‘1qaz@WSX’ ;
在这里插入图片描述
5、mysql> flush privileges ;
在这里插入图片描述

B. 导入cacti数据库脚本

首先退出mysql服务
mysql>exit

把cacti-1.2.1的压缩包进行解压(本人解压包在/root目录下)
#tar -zxf cacti-1.2.1.tar.gz

再进入mysql服务
mysql -uroot -p123456

执行以下语句:
mysql>use cacti ;
mysql > source /root/cacti-1.2.1/cacti.sql ;

执行完成之后再退出mysql服务

C. cacti前端文件

首先在/var/www/ html/下创建一个cacti目录
#mkdir cacti

然后再执行下面的命令,把cacti-1.2.1文件的内容复制到apache服务下的根路径:
#cp -r /root/cacti-1.2.1/* /var/www/html/cacti

D. 编辑//var/www/html/cacti/include/config.php

#vi /var/www/html/cacti/include/config.php

把原来的配置信息修改成以下信息:
$database_type = ‘mysql’;
$database_default = ‘cacti’;
$database_hostname = ‘localhost’;
$database_username = ‘cacti’;
$database_password = ‘1qaz@WSX’;
$database_port = ‘3306’;
$database_ssl = false;

E. 设置文件权限(增加cacti用户)

#useradd -s /sbin/nologin cacti
#mkdir /var/www/html/cacti/rra/log
#chown -R cacti /var/www/html/cacti/rra/log/

F. 配置定时任务/etc/crontab

执行以下语句:
#crontab –e

添加以下信息
*/5 * * * * /usr/bin/php /var/www/html/cacti/poller.php > /dev/null 2>&1

输入以下语句进行查看:
#crontab -l
出现以下结果说明是正确的
在这里插入图片描述
#systemctl enable crond
#systemctl start crond

G、安装其他相关组件:

下载https://oss.oetiker.ch/rrdtool/pub/rrdtool-1.7.0.tar.gz
下载https://www.cacti.net/downloads/spine/cacti-spine-1.2.1.tar.gz
(本人已把这两个解压包放在/root目录下)

编译时可能需要你安装如下软件包:
#yum install glib2-devel cairo-devel libxml2-devel pango pango-devel help2man

(1)安装rrdtool-1.7.0工具

解压
#tar zxvf rrdtool-1.7.0.tar.gz

切换目录
#cd rrdtool-1.7.0

#./configure --prefix=/usr/local/rrdtool

#make
#make install

(2)安装cacti-spine-1.2.1工具

#tar zxvf cacti-spine-1.2.1.tar.gz
#cd cacti-spine-1.2.1
#./configure --prefix=/usr/local/spine
#make
#make install

编辑/usr/local/spine/etc/spine.conf
#vi /usr/local/spine/etc/spine.conf
把一下信息修改为自己配置的信息:
DB_Host localhost
DB_Database cacti
DB_User cacti
DB_Pass password
DB_Port 3306

H、5.cacti安装向导

#setenforce 0
#用于关闭seLinux防火墙

(1)在 浏览器 访问:http://ip/cacti 可能会出现一下问题:

问题一:

在这里插入图片描述
根据三个提示:
1、查看mysql服务是否有启动;
2、config.php配置文件的配置信息是否有错误;
3、如果以上两个错误都没有,可能是php与mysql的服务整合出问题,具体辨别方法可以在通过在浏览器访问http://ip/phpinfo(参照前面验证php与apache服务是否安装成功的路径访问),查看php版本信息里面是否存在mysql的相关模块,如果没有,可以重新通过yum安装的方式卸载之前下载的好的mysql和php,再重新下载即可。

问题二:

在这里插入图片描述
解决方法:
#cd /var/www/html/cacti/log
#ls
如果发现没有cacti.log文件时,可以执行一下命令:
#touch cacti.log
#chmod 777 cacti.log

然后再刷新页面即可。
(2)当出现以下页面时,说明cacti安装服务启动成功。(默认密码admin/admin)
在这里插入图片描述
然后再根据安装向导,把那些 红色字体的错误 找出来,并且根据错误提示进行修改即可:

在安装的时候遇到一个特别的错误:
ERROR: Your MySQL TimeZone database is not populated. Please populate this database before proceeding.
解决方法为:
#mysql_tzinfo_to_sql /usr/share/zoneinfo/Asia/Shanghai Shanghai | mysql -u root -p mysql
输入密码回车即可。

(3)安装cacti服务完成

在这里插入图片描述

(4)左上角的图形,并且进入local Linux Machine这个页面等待十分钟左右就会出现相应的一些曲线图。
在这里插入图片描述
部署完成!

  • 3
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值