自动化安装Cacti 0.8.8h脚本

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 自动化安装Cacti 0.8.8h脚本一、目的1.1 监控目的目前我们已经有zabbix监控系统,但是有客户需求需要流量报表,因此应此类客户的需求,部署Cacti流量监控系统,来监控客户服务器或交换机端口,为客户提供流量报表截图。

自动化安装Cacti 0.8.8h脚本

一、目的

1.1 监控目的

目前我们已经有zabbix监控系统,但是有客户需求需要流量报表,因此应此类客户的需求,部署Cacti流量监控系统,来监控客户服务器或交换机端口,为客户提供流量报表截图。

1.2 本文目的

快速部署Cacti流量监控系统,为后期相关工程师部署此系统提供借鉴与参考。

二、理论基础

2.1 相关理论

Cacti是用php语言实现一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具snmp服务获取数据,然后用rrdtool储存和更新数据,当用户需要查看数据的时候用rrdtool生成图表呈现给用户。

2.2 拓扑架构

wKiom1ikUQjyLu8kAAHmsN1J2i8325.png

三、自动安装脚本

#!/bin/bash
#date 2016/8/8
#mail xuel@51idc.com
#############
echo "##########################################"
echo "Auto Install Cacti                      ##"
echo "Press Ctrl + C to cancel                ##"
echo "Any key to continue                     ##"
echo "##########################################"
read -n 1
############################################
#init config
/etc/init.d/iptables status >/dev/null 2>&1
if [ $? -eq 0 ]
then
iptables -I INPUT -p tcp --dport 80 -j ACCEPT &&
iptables -I INPUT -p udp --dport 161 -j ACCEPT &&
iptables-save >/dev/null 2>&1
else
    echo -e "\033[32m iptables is stopd\033[0m"
fi
sed -i "s/SELINUX=enforcing/SELINUX=disabled/"  /etc/selinux/config
setenforce 0
yum -y install ntpdate wget vim 
ntpdate -s time1.aliyun.com
echo "*/5 * * * * ntpdate -s time1.aliyun.com">>/var/spool/cron/root
###########################################
yum -y install httpd mysql-server php php-mysql php-snmp mysql-devel httpd-devel net-snmp net-snmp-devel net-snmp-utils rrdtool

SNMPFILE=/etc/snmp/snmpd.conf
if [ -f "$SNMPFILE" ]
        then
        cp $SNMPFILE /etc/snmp/snmpd.conf.bak
fi
cat > $SNMPFILE << EOF
com2sec notConfigUser  default       public
group   notConfigGroup v1           notConfigUser
group   notConfigGroup v2c           notConfigUser
view    systemview    included   .1
view    systemview    included   .1.3.6.1.2.1.1
view    systemview    included   .1.3.6.1.2.1.25.1.1
access  notConfigGroup ""      any       noauth    exact  all  none none
view all    included  .1                               80
syslocation Unknown (edit /etc/snmp/snmpd.conf)
syscontact Root <root@localhost> (configure /etc/snmp/snmp.local.conf)
dontLogTCPWrappersConnects yes
proc mountd
proc ntalkd 4
nstall httpd mysql-server php php-mysql php-snmp mysql-devel httpd-devel net-snmp net-snmp-devel
 net-snmp-utils rrdtoolproc senmail 10 1
exec echotest /bin/echo hello world
disk / 10000
EOF
/etc/init.d/httpd start
chkconfig httpd on
/etc/init.d/mysqld start
chkconfig mysqld on
/etc/init.d/snmpd start
chkconfig snmpd on
#############################################
if [ -d /var/www/html ];then
    cd /var/www/html
else
    mkdir -p /var/www/html && cd /var/www/html
fi
wget -c -O /var/www/html/cacti-0.8.8h.tar.gz  http://www.cacti.net/downloads/cacti-0.8.8h.tar.gz
tar -zxvf cacti-0.8.8h.tar.gz
mv cacti-0.8.8h cacti
cd cacti
chown -R root.root *
useradd cacti
echo "cacti" | passwd --stdin cacti
echo "*/1 * * * * php /var/www/html/cacti/poller.php >/dev/null 2>&1">>/var/spool/cron/root
mysqladmin -uroot password "mysqladmin"
mysql -uroot -pmysqladmin -e "create database cacti character set utf8;" 
mysql -uroot -pmysqladmin cacti </var/www/html/cacti/cacti.sql
mysql -uroot -pmysqladmin -e "CREATE USER 'cacti'@'localhost' IDENTIFIED BY 'cacti';"
mysql -uroot -pmysqladmin -e "grant all privileges on cacti.* to cacti@'localhost' identified by 'cacti';"
mysql -uroot -pmysqladmin -e "flush privileges;"
CONF=/var/www/html/cacti/include/config.php
cat >$CONF<<EOF
<?php
\$database_type = "mysql";
\$database_default = "cacti";
\$database_hostname = "localhost";
\$database_username = "cacti";
\$database_password = "cacti";
\$database_port = "3306";
?>
EOF


##################################################
DIR=/var/www/html/cacti/plugins
if [ -d $DIR ];then
    cd $DIR
else
    mkdir -p $DIR  && cd DIR
fi
wget -c -O $DIR/monitor.tgz http://docs.cacti.net/_media/plugin:monitor-v1.3-1.tgz
tar -zxvf monitor.tgz

wget -c -O $DIR/flowview.tgz http://docs.cacti.net/_media/plugin:flowview-v1.1-1.tgz
tar -zxvf flowview.tgz

wget -c -O $DIR/ntop.tgz http://docs.cacti.net/_media/plugin:ntop-v0.2-1.tgz
tar -zxvf ntop.tgz

wget -c -O $DIR/thold.tgz http://docs.cacti.net/_media/plugin:thold-v0.5.0.tgz
tar -zxvf thold.tgz

wget -c -O $DIR/mobile.tgz http://docs.cacti.net/_media/plugin:mobile-latest.tgz
tar -zxvf mobile.tgz

wget -c -O $DIR/syslog.tgz http://docs.cacti.net/_media/plugin:syslog-v1.22-2.tgz
tar -zxvf syslog.tgz
wget -c -O $DIR/settings.tgz http://docs.cacti.net/_media/plugin:settings-v0.71-1.tgz
tar -zxvf settings.tgz
wget -c -O $DIR/discovery.tgz http://docs.cacti.net/_media/plugin:discovery-v1.5-1.tgz
tar -zxvf discovery.tgz
echo -e "\033[32m Cacti install success!\033[0m"
echo -e "\033[32m Mysql user:root  passwd:mysqladmin\033[0m"
echo -e "\033[32m Mysql user:cacti  passwd:cacti\033[0m"
echo -e "\033[32m Cacti Web Login user:admin  Passwd:admin\033[0m"
echo -e "\033[32m URL:http://IP/cacti\033[0m"



相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
监控 数据安全/隐私保护
zabbix 5.0 一键部署脚本
zabbix 5.0 一键部署脚本
456 0
|
运维 监控
一键部署zabbix监控平台脚本
应一位网友的要求,让我帮忙写个关于一键部署zabbix监控平台的脚本。这个脚本的思路,与我前面写的一个脚本是很相似的,所以用下班时间匆忙写了一个,算是能跑起来吧。
193 0
一键部署zabbix监控平台脚本
|
Web App开发 监控 关系型数据库
|
监控 关系型数据库 MySQL
|
Web App开发 监控 关系型数据库
|
监控 应用服务中间件 PHP
|
Web App开发 关系型数据库 测试技术