大同Talk

Cacti 1.1.13安装教程

talkman 2017年11月07日 运维监控 76 0
安装好系统后,安装vim  与wget
yum install  vim  wget
mkdir /root/cacti
cd /root/cacti
安装环境  http  php  snmp 还有mysql或者mariadb
yum install  httpd php php-mysql php-snmp net-snmp
然后配置PHP
php -m  看一下可用的php 模块
编辑/etc/php.ini文件
找到extension_dir = /etc/php.d (我的centos7.2版本,修改成了extension_dir = /usr/lib/php/modules可用)
extension_dir = "/usr/lib64/php/modules"
/timezone搜索时区设置
增加一行 date.timezong = Asia/Shanghai
/session.auto 搜索这个
把session.auto_start=0 改为 =1
/file_uploads搜索这个
查看file_uploads = On 是否为on状态
编辑/etc/php.d/mysql.ini
; Enable mysql extension module
extension=mysql.so
编辑/etc/php.d/snmp.ini
; Enable snmp extension module
extension=snmp.so
新版cacti需要mysql5.6以上,centos7是使用的mariadb的,默认是5.5的,所以加个源
/etc/yum.repos.d/mariadb
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.0/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
安装时看一下mariadb的版本是不是10的
yum install MariaDB-client MariaDB-common MariaDB-shared MariaDB-server mariadb-devel
编辑apche的httpd.conf文件
vi /etc/httpd/conf/httpd.conf
官方文档上是 Include conf.d/*.conf
我的系统上是IncludeOptional conf.d/*.conf,没有修改他
编辑vi /etc/httpd/conf.d/php.conf
在AddType text/html .php 这一行上   加上AddHandler php-script .php
设置跟随系统启动而启动    systemctl enable httpd
启动httpd      systemctl  start httpd
接下来配置mariadb  这个安装好慢,主要是下载太慢,后期可以考虑自己制作本地源
mariadb 10版本的。。
启动mariadb的命令     service  mysql start   不是mysqld   也不是mariadb
或者systemctl start   mysql
设置跟随系统启动而启动     systemctl enable mysql
设置root的密码为qq123456   刚安装完的是空密码
mysqladmin -u root password
输入两次设置的密码
mysql -u root -p 这个命令用来登录
下面根据cacti官网文档设置数据库
我已经把下载的cacti解压了,然后移动到了/var/www/html了
切换到/var/www/html/cacti下
创建数据    mysqladmin -u root -p create cacti   提示输入密码
导入数据到cacti数据库中    mysql -u root -p cacti < cacti.sql    提示输入密码
登录数据库并使用mysql数据库  mysql -u root -p mysql   提示输入密码
登录后的提示符MariaDB [mysql]>
创建用户cacti 密码为qq123456    授权用户cacti拥有数据库cacti的所有权限
MariaDB [mysql]> GRANT ALL ON cacti.* TO cacti@localhost IDENTIFIED BY 'qq123456';
Query OK, 0 rows affected (0.00 sec)
MariaDB [mysql]> GRANT SELECT ON mysql.time_zone_name TO cacti@localhost;
Query OK, 0 rows affected (0.00 sec)
MariaDB [mysql]> flush privileges;
Query OK, 0 rows affected (0.00 sec)
vi include/config.php
image.png
改成这样的
添加系统用户cacti
[root@localhost cacti]# useradd cacti
改变下面两个文件夹的所有者
[root@localhost cacti]# chown -R cacti rra/ log/
编辑计划任务配置文件,每五分钟执行相应的命令
[root@localhost cacti]# vi /etc/crontab
*/5 * * * * cacti php /var/www/html/cacti/poller.php > /dev/null 2>&1
关闭selinux
关闭防火墙或者放行相应端口
之前未设置好的,设置完之后重启下系统
然后http://IP/cacti 打开
image.png
安装过程中出现以下报错:
ERROR: Your MySQL TimeZone database is not populated. Please populate this database before proceeding.
解决办法是将系统时区导入mysql数据库中:
[root@localhost ~]# mysql_tzinfo_to_sql /usr/share/zoneinfo/ | mysql -u root -p mysql
会提示输入密码
原来的是这样的show variables like "%time_zone%"
image.png
导入后的

image.png

image.png

[root@localhost ~]# yum search posix
然后去结果页面选择需要安装的
[root@localhost ~]# yum install pax.x86_64
干脆点直接这样  yum  install  php*
但是由于有mariadb的有点冲突   所以要这样   yum --skip-broken   install  php*
安装完后,重启下httpd
刷新下网页之后,php modules 部分都变成确定了
image.png
后面还有好多不行的。。,数据库部分这里咋办。。
image.png
红色,直接在/etc/my.conf.d/server.cnf中,找到[mysqld]
然后根据网页上面,左边的项variable   然后参考需要的值
max_heap_table_size = 50M
max_allowed_packet = 16777216
tmp_table_size = 64M
join_buffer_size = 64M
innodb_buffer_pool_size = 240M
innodb_doublewrite = OFF
innodb_additional_mem_pool_size = 80M
innodb_flush_log_at_timeout = 3
innodb_read_io_threads = 32
innodb_write_io_threads = 16
把他弄上去
image.png
关于这两个的问题
image.png
编辑/etc/my.conf.d/server.cnf中,找到[mariadb-10.0]
在后面加入
character-set-client-handshake = FALSE
character_set_server = utf8mb4
character_set_filesystem = utf8mb4
character_set_client = utf8mb4
character-set-client-handshake = 0
collation_server = utf8mb4_unicode_ci
image.png
然后重启mysql
image.png
这里就搞定了
SHOW VARIABLES LIKE 'character%';
SHOW VARIABLES LIKE 'collation%';
image.png
下一步之后
image.png
还是有很多东西没有安装到的
下面我们安装
yum install rrdtool*
yum install net-snmp*
刷新下之后
image.png
还有个spine
加压spine,然后复制到cacti网站目录下
进入spine目录
然后执行
aclocal
autoheader
autoconf
automake
./configure 报错
安装gcc yum install gcc*
nfigure: error: Cannot find MySQL headers.  Use --with-mysql= to specify non-default path.
[root@localhost spine]# yum install mariadb-devel
这个应该要在安装数据库的时候就给安装好,调到前面加上得了
这下./configure没报错了
make 编译
编译报错
false // No help2man // --output=spine.1 --name='Data Collector for Cacti' --no-info --version-option='--ver
sion' ./spine
make: *** [spine.1] Error 1
安装yum install  help2man
重新配置,指定安装路径  ./configure --prefix=/usr/local/spine
/usr/bin/help2man --output=spine.1 --name='Data Collector for Cacti' --no-info --version-option='--version'
./spine
执行了下libtool  用完整路径,是spine下的路径,比如我在/root/cacti/cactispine
/root/cacti/cactispine/libtool   但是报错了,奇怪的是再make又没报错了。。。
然后执行make install
安装完成
image.png
chown -R apache.apache /var/www/html/cacti/resource/
chown -R apache.apache /var/www/html/cacti/scripts/
[root@localhost cactispine]# chown -R apache.apache /var/www/html/cacti/log/
[root@localhost cactispine]# chown -R apache.apache /var/www/html/cacti/cache/boost/
[root@localhost cactispine]# chown -R apache.apache /var/www/html/cacti/cache/mibcache/
[root@localhost cactispine]# chown -R apache.apache /var/www/html/cacti/cache/realtime/
[root@localhost cactispine]# chown -R apache.apache /var/www/html/cacti/cache/spikekill/
点击下一步,有选择安装模版的,勾上也可以,点击下一步,就安装完了,到登录界面了


发布评论

分享到:

大同Talk

我的微信号:xxx (左侧二维码扫一扫)欢迎添加!

VMware VSAN 搭建,简单实验
你是第一个吃螃蟹的人
发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。