基于 CentOS 7 的 Cacti 监控平台搭建与配置指南

centOS 7.3.10
cacti 1.2.26 (2023.12.24)
MySQL 5.7:存储所有数据
PHP    7.4:基于PHP语言实现
RRDtool 1.4:存储所获取的信息并生成图表显示
NET-SNMP 5.7:通过SNMP协议获取设备网络信息
Apache 2.4.6:页面访问入口
spine 1.2.26:cacti专用高速数据采集插件,版本与cacti相同

#禁用selinux:
setenforce 0 &&
sed -i '/^SELINUX=/cSELINUX=disabled' /etc/selinux/config &&
getenforce

#更新yum源,安装php7.4
yum install epel-release -y
yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm -y
yum install yum-utils -y
yum-config-manager --enable remi-php74
yum install -y php php-opcache php-gd php-curl php-mysqlnd
php -v
yum install php-fpm -y
systemctl restart php-fpm
systemctl enable php-fpm

#安装Apache-httpd
yum install -y httpd
systemctl restart httpd.service
systemctl enable httpd.service

#设置php时区
vim /etc/php.ini
    date.timezone = Asia/Shanghai
systemctl restart php-fpm
php -i | grep timezone

#配置httpd启用php模块(php7.4)
vim /etc/httpd/conf/httpd.conf
    #末尾添加
    LoadModule php7_module /usr/lib64/httpd/modules/libphp7.so
    AddType application/x-httpd-php .php
    AddHandler php-script .php
systemctl restart httpd.service

#安装Mysql5.7:略
service mysqld stop
#时区信息填充和配置修改
vim /etc/my.cnf

[mysqld]
default-time-zone = 'Asia/Shanghai'
character_set_server=utf8mb4
collation-server=utf8mb4_unicode_ci
max_allowed_packet=16777216
max_heap_table_size=125M
tmp_table_size=125M
join_buffer_size=256k
sort_buffer_size=3M
innodb_file_format=Barracuda
innodb_large_prefix=1
innodb_buffer_pool_size=2000M
innodb_flush_log_at_timeout=3
innodb_read_io_threads=32
innodb_write_io_threads=16
innodb_buffer_pool_instances=4
innodb_io_capacity=5000
innodb_io_capacity_max=10000
[client]
default-character-set=utf8

service mysqld start

# 导入时区表,使上海时区信息生效
mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql

#建库建用户
datebase:cacti
user:cacti password
     use mysql;
     create database cacti;
     CREATE USER 'cacti'@'%' IDENTIFIED BY 'password';
     GRANT ALL PRIVILEGES ON cacti.* TO 'cacti'@'%';
     GRANT SELECT ON mysql.time_zone_name TO 'cacti'@'%';
     flush privileges;

#安装NET-SNMP5.7
yum install –y net-snmp net-snmp-libs net-snmp-utils net-snmp-devel net-snmp-perl
systemctl start snmpd.service
systemctl enable snmpd.service
vim /etc/snmp/snmpd.conf
    com2sec notConfigUser  IP      password
    #IP:本机公网地址,用于监测异地公网设备
    #cacti-idcicp:自定义团体名,仅允许该团体内的用户访问
    access notConfigGroup "" any noauth exact all none none
    view all    included  .1    80
systemctl restart snmpd.service
snmpwalk -v 2c -c password IP

#安装RRDtool 1.4
yum -y install lm_sensors gcc gcc-c++ libart_lgpl-devel zlib-devel libpng-devel freetype-devel gettext-devel glib2-devel pcre-devel pango-devel cairo-devel  libxml2-devel perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker rrdtool
rrdtool -v

#安装spine
tar -zxvf spine-release-1.2.26.tar.gz
cd spine-release-1.2.26/
./bootstrap
yum install mysql-devel -y
yum install help2man -y
./configure
make
make install
vim ~/.bashrc
    export PATH=$PATH:/usr/local/spine/bin
spine -v
mv /usr/local/spine/etc/spine.conf.dist /usr/local/spine/etc/spine.conf
vim /usr/local/spine/etc/spine.conf
    DB_Host       127.0.0.1
    DB_Database   cacti
    DB_User       cacti
    DB_Pass       password
    DB_Port       3306
Cacti的管理界面中,将数据采集器切换为Spine
# 关闭
ps aux | grep spine
kill 进程:spine进程
# 启动
spine -C /usr/local/spine/etc/spine.conf

#安装Cacti
tar -zxvf cacti-release-1.2.26.tar.gz
mv cacti-release-1.2.26 /var/www/html/cacti
mysql -u root -p
    use cacti;
    source /var/www/html/cacti/cacti.sql;
cd /var/www/html/cacti/include/
mv config.php.dist config.php
vim /var/www/html/cacti/include/config.php
    $database_type     = 'mysql';
    $database_default  = 'cacti';
    $database_hostname = '127.0.0.1';
    $database_username = 'cacti';
    $database_password = '123456';
    $database_port     = '3306';
useradd cacti
chown apache.apache /var/www/html/cacti/ -R
chown cacti /var/www/html/cacti/{rra,log}/ -R
chmod 777 /var/www/html/cacti/{rra,log}/ -R
systemctl restart php-fpm && systemctl restart httpd && systemctl restart mysqld  && systemctl restart snmpd
#若80不可用,修改端口为8888:/etc/httpd/conf/httpd.conf

#安装其他依赖
yum install -y php-gmp php-intl php-ldap php-mbstring php-xml php-process
yum install -y php-snmp    #安装该模块的前提是:不需要支持SNMPv3,因为该模块与v3有冲突需特殊配置才能使用
systemctl restart php-fpm httpd

# 设置定时任务
*/1 *  *  *  * root /usr/bin/php /var/www/html/cacti/poller.php

# URL
http://IP:8888/cacti  admin admin 新密码:password  community:cacti-idcicp

2.配置文件
php:/etc/php.ini
httpd:/etc/httpd/conf/httpd.conf
cacti:/var/www/html/cacti/include/config.php
spine:vim /usr/local/spine/etc/spine.conf
mysql:/etc/my.cnf
snmp:vim /etc/snmp/snmpd.conf

1.创建新设备
2.创建新图形(为设备添加图形):In/out Bits(64-bit, BW)
注:图形模版未匹配的需要手动批量创建图形
3.管理-树,将设备移到对应的树中

修改数据源模版poller周期为1min:
管理-数据源-任进一个-编辑数据模板(右上角)

数据源模板修改配置后生效:设备信息中重新加载查询

停止Cacti:
systemctl stop php-fpm && systemctl stop httpd  && systemctl stop snmpd
关闭crontab定时任务

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值