由于cacti 1.1.x系列发布后,变化比较大,集成了很多插件,自带自动发现功能,所以记录下来,比较适合复制粘贴。
创新互联建站是由多位在大型网络公司、广告设计公司的优秀设计人员和策划人员组成的一个具有丰富经验的团队,其中包括网站策划、网页美工、网站程序员、网页设计师、平面广告设计师、网络营销人员及形象策划。承接:网站设计、成都网站设计、网站改版、网页设计制作、网站建设与维护、网络推广、数据库开发,以高性价比制作企业网站、行业门户平台等全方位的服务。
环境:CentOS 7.4
安装前提
a、安装系统补丁
yum update -y
b、开启ntp,保证时间正确
yum install chrony -y systemctl enable chronyd systemctl start chronyd
c、禁用selinux,重启生效
sed -i 's/SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config reboot
1、安装mariadb 10.1
cacti 1.1.0 需要MySQL >= 5.6 ,所以这里选择mariadb 10.1
yum install centos-release-openstack-ocata -y yum install mariadb-server -y
2、mariadb参数调整(参考配置)
[mysqld] ...... character-set-server = utf8mb4 collation-server = utf8mb4_unicode_ci max_heap_table_size = 128M max_allowed_packet = 32M tmp_table_size = 64M join_buffer_size = 64M innodb_buffer_pool_size = 1024M innodb_doublewrite = off innodb_flush_log_at_timeout = 3
重启mariadb让配置生效
systemctl enable mariadb systemctl start mariadb
导入时区信息
mysql_tzinfo_to_sql /usr/share/zoneinfo/ | mysql -u root mysql
3、安装lamp
yum install httpd php php-mysqlnd php-mbstring php-ldap php-process php-gd php-snmp php-pecl-zendopcache php-xml wget net-snmp-utils rrdtool -y echo "ServerTokens Prod" >> /etc/httpd/conf/httpd.conf echo "ServerSignature Off" >> /etc/httpd/conf/httpd.conf sed -i 's/;date.timezone.*/date.timezone = PRC/g' /etc/php.ini mkdir -p /var/lib/php/session chown -R apache:apache /var/lib/php/session systemctl enable httpd systemctl start httpd
4、下载cacti
cd /var/wwww/html wget http://www.cacti.net/downloads/cacti-1.1.0.tar.gz tar zxvf cacti-1.1.0.tar.gz mv cacti-1.1.0 cacti cd cacti chown -R apache:apache resource scripts log cache
5、给cacti建库
mysql -u root -e "drop database if exists cacti" mysql -u root -e "delete from mysql.user where Host = 'localhost' and User = 'cactiuser'" mysql -u root -e "create database `cacti` default character set utf8mb4 collate utf8mb4_unicode_ci" mysql -u root -e "grant all on cacti.* to 'cactiuser'@'localhost' identified by 'cactiuser'" mysql -u root -e "grant select on mysql.time_zone_name to 'cactiuser'@'localhost'" mysql -u root -e "flush privileges" mysql -u root cacti < /var/www/html/cacti/cacti.sql
6、安装向导
访问http://ip/cacti 进入安装向导
7、修改密码
默认用户密码admin/admin,首次登陆要求改密码,密码长度和复杂度都比较严格,点赞。
8、定时任务
设置定时任务,在/etc/crontab 文件中添加一行
*/5 * * * * root /usr/bin/php -q /var/www/html/cacti/poller.php >/dev/null
9、配置自动发现(可选)
功能有点类似zabbix
a、定义snmp选项,比如snmp v2,community 为abc b、定义扫描网段,比如192.168.0.0/24,定时扫描,发现snmp端口存活的机器自动添加到cacti, c、定义规则,将扫描到的机器,按照操作系统分类,放入不同的tree,划不同的图
10、安装spine(可选)
spine是一个c写的程序,性能比默认的poller.php要高很多。
yum install gcc libtool make autoconf mysql-devel net-snmp-devel help2man wget -y wget tar zxvf cacti-spine-1.1.0.tar.gz cd cacti-spine-1.1.0 ./bootstrap ./configure --with-mysql make cp spine /usr/local/bin/ cp spine.conf.dist /etc/spine.conf
/etc/spine.conf文件里记得根据需要修改。
重装
如果需要重装,简单的删除数据库,重新初始化即可(第5-7步)
汉化
cacti 1.1.x 支持中文,但是汉化不彻底,手痒的同学可以按照下面的办法汉化:
1、安装
yum install gettext -y
2、反编译mo文件为po文件
cd /var/www/html/cacti/locales/LC_MESSAGES /usr/bin/msgunfmt chinese_china_simplified.mo -o chinese_china_simplified.po
3、用文本编辑器修改文件
4、编译po文件为mo文件
/usr/bin/msgfmt chinese_china_simplified.po -o chinese_china_simplified.mo