linux下常用监控cacti的安装和配置

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介:

一. cacti 架构

clip_image002

二. cacti工作流程

clip_image004

三. cacti的安装

1. 安装环境:RedHat AS4.8

2. 安装Apache、MySQL、PHP

(1).安装MySQL

//查看系统中是否已经安装了MySQL,如果是卸载所有以mysql 开头的包。

# rpm –qa | grep mysql

# rpm –e mysql-*

//查找/etc/my.cnf(MySQL 的选项配置文件),如果有请删除它,以免影响新

安装版本的启动。

# rm –f /etc/my.cnf

# tar –zxvf mysql-4.1.10.tar.gz

# ./configure --prefix=/usr/local/mysql && make && make install

//添加用于启动MySQL 的用户及用户组(如果以前安装过MySQl,用户及用户

组可能已存在)。

# useradd mysql

# cd /usr/local/mysql

//修改MySQl 目录的所有权

# chown –R mysql.mysql /usr/local/mysql

# bin/mysql_install_db --user=mysql

修改数据库属主

Chown mysql var

Bin/mysqld_safe –user=mysql &

Echo ‘/usr/local/mysql/bin/mysqld_safe --user=mysql &’>>/etc/rc.local

# ln –s /usr/local/mysql/bin/* /usr/local/bin/

(2).安装Apache

下载地址:http://httpd.apache.org/

# tar –zxvf httpd-2.2.4.tar.gz

# cd httpd-2.2.4

# ./configure --prefix=/usr/local/apache --enable-so

//编译时加上加载模块参数--enable-so

# make

# make install

#vi /usr/local/apache/conf/httpd.conf

//修改Apache 配置文件,添加ServerName www.yourdomain.com(或ServerName 本

机ip)

# vi /etc/rc.d/rc.local

// 在rc.local 上加入一行/usr/local/apache/bin/apachectl start, 系统启动时启动

Apache 服务。

(3).安装PHP

先安装zlib,freetype,libpng,jpeg 以便于让PHP 支持GD 库( Cacti 的WeatherMap

插件必须要GD 库的支持)

1).安装zlib

tar zlib-1.2.3.tar.gz

cd zlib-1.2.3

./configure --prefix=/usr/local/zlib

make

make install

2).安装libpng

tar zxvf libpng-1.2.16.tar.tar

cd libpng-1.2.16

cd scripts/

mv makefile.linux ../makefile

cd ..

make

make install

注意,这里的makefile 不是用./configure 生成,而是直接从scripts/里拷一个

3).安装freetype

tar zxvf freetype-2.3.4 .tar.gz

cd freetype-2.3.4

./configure --prefix=/usr/local/freetype

make

make install

4).安装Jpeg

tar -zxf jpegsrc-1.v6b.tar.gz

cd jpeg-6b/

mkdir /usr/local/libjpeg

mkdir /usr/local/libjpeg/include

mkdir /usr/local/libjpeg/bin

mkdir /usr/local/libjpeg/lib

mkdir /usr/local/libjpeg/man

mkdir /usr/local/libjpeg/man/man1

//可以用mkdir -p /usr/local/libjpeg/man/man1 一步创建多层目录

./configure --prefix=/usr/local/libjpeg --enable-shared --enable-static

make && make install

注意,这里configure 一定要带--enable-shared 参数,不然,不会生成共享库

5).安装libxml,RedHat AS 4 默认安装libxml 包,但版本太低,PHP5 需要更高

版本的libxml 包。

# tar –zxvf libxml2-2.6.25.tar.gz libxml2-devel也要装(RPM)

# cd libxml2-2.6.25

# ./configure

# make

# make install

6).安装Fontconfig (用RPM安装,灰字忽略)扩展包和关联包也装上

tar -zxvf fontconfig-2.4.2.tar.gz

cd fontconfig-2.4.2

./configure --prefix=/usr/local/fontconfig --with-freetype-config=/usr/local/freetype/bin/freetype-config

make

make install

7).安装GD

tar -zxvf gd-2.0.34.tar.gz

cd gd-2.0.34

./configure --prefix=/usr/local/libgd --with-png --with-freetype=/usr/local/freetype --with-jpeg=/usr/local/libjpeg

make

make install

编译时显示以下信息:

** Configuration summary for gd 2.0.34:

Support for PNG library: yes

Support for JPEG library: yes

Support for Freetype 2.x library: yes

Support for Fontconfig library: yes

Support for Xpm library: no

Support for pthreads: yes

8).编辑/etc/ld.so.conf,添加以下几行到此文件中。

/usr/local/zlib/lib

/usr/local/freetype/lib

/usr/local/libjpeg/lib

/usr/local/libgd/lib

并执行ldconfig 命令,使用动态装入器装载找到共享库

9).安装PHP

tar -zxvf php-5.2.3.tar.gz

cd php-5.2.3

# ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql --with-gd=/usr/local/libgd --enable-gd-native-ttf --with-ttf --with-freetype-dir=/usr/local/freetype --with-jpeg-dir=/usr/local/libjpeg --with-png-dir=/usr --with-zlib-dir=/usr/local/zlib --enable-xml --enable-mbstring --enable-sockets

#注:如果出现configure: error: cannot find output from lex; giving up,从光盘安装flex包即可解决。-_-!!

# make

# make install

# ln –s /usr/local/php/bin/* /usr/local/bin/

# vi /usr/local/apache/conf/httpd.conf

查找AddType application/x-compress .Z

AddType application/x-gzip .gz .tgz

在其下加入AddType application/x-tar .tgz

AddType application/x-httpd-php .php

AddType image/x-icon .ico

修改DirectoryIndex 行,添加index.php

修改为DirectoryIndex index.php index.html index.html.var

# vi /usr/local/apache/htdocs/test.php

添加以下行:

<?php

Phpinfo();

?>

wq 保存退出。

# /usr/local/apache/bin/apachectl restart

在浏览器中输入:http://www.yourdomain.com/test.php 进行测试。

对php 编译选项的解释:

--prefix=/usr/local/php //指定PHP 的安装目录

--with-apxs2=/usr/local/apache2/bin/apxs //支持Apache 模块

--with-mysql=/usr/local/mysql //支持MySQl

--with-gd=/usr/local/libgd //支持GD 库

--enable-gd-native-ttf //激活对本地TrueType 字符串函数的支持

--with-ttf //激活对FreeType 1.x 的支持

--with-freetype-dir=/usr/local/freetype //激活对FreeType 2.x 的支持

--with-jpeg-dir=/usr/local/libjpeg //激活对jpeg-6b 的支持

--with-png-dir //激活对png 的支持

--with-zlib-dir=/usr/local/zlib//激活对zlib 的支持

--enable-mbstring //激活mbstring 模块

--with-mail //支持Mail 函数

--enable-xml //支持XML

--enable-sockets //支持套接字

3. 安装RRDTool

由于rrdtool-1.2.23 需要一些库文件支持,故需先安装配置支持的环境,然后编译安

装。

需要的包:cgilib-0.5.tar.gz、zlib-1.2.3.tar.gz、libpng-1.2.18.tar.gz、freetype-

2.3.5.tar.gz、libart_lgpl-2.3.17.tar.gz、rrdtool-1.2.23.tar.gz

tar zxf cgilib-0.5.tar.gz

(1)cd cgilib-0.5

对于0.5版本的cgilib源码部分需做一定的修改:

在 cgi.c 里寻找 #include <malloc.h> ,把那行删掉

修改cgitest.c中116行的错误

116行的代码如下:

printf ("<h3>Cookie "Library" set</h3>\n";

应为代码出错,正确的应是

printf ("<h3>Cookie \"Library\" set</h3>\n";

make

make install

mkdir -p /usr/local/rrdtool/lb/include

cp cgi.h /usr/local/rrdtool/lb/include

mkdir -p /usr/local/rrdtool/lb/lib

cp libcgi.a /usr/local/rrdtool/lb/lib

(2)tar zxf zlib-1.2.3.tar.gz

cd zlib-1.2.3

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

make

make install

tar zxvf libpng-1.2.18.tar.gz

(3)cd libpng-1.2.18

./configure --disable-shared --prefix=/usr/local/rrdtool/lb

make

make install

tar zxvf freetype-2.3.5.tar.gz

(4)cd freetype-2.2.5

./configure --disable-shared --prefix=/usr/local/rrdtool/lb

make

make install

(5)tar zxvf libart_lgpl-2.3.17.tar.gz 用RPM把开发包也装上libart_lgpl-devel....

cd libart_lgpl-2.3.17

./configure --disable-shared --

prefix=/usr/local/rrdtool/lb

make;make install

(6)tar xjf intltool-0.40.6.tar.bz2

Cd intltool-0.40.6

./configure

Make;make install

(7)tar zxf rrdtool-1.2.23.tar.gz

cd rrdtool-1.2.23

./configure --prefix=/uar/local/rrdtool --disable-tcl &&

make && make install

//完成后建立符号连接

ln –s /usr/local/rrdtool/bin/* /usr/local/bin/

cp /usr/local/lib/libpng.so.0 /usr/lib/ 这步必须有,否则报错找不到此文件。

//执行rrdtool 看是否安装正确

4. 安装net-snmp

# tar zxvf net-snmp-5.2.4.tar.gz

#cd net-snmp-5.2.4

#./configure --prefix=/usr/local/net-snmp --enable-developer

#make

#make install

# ln –s /usr/local/net-snmp/bin/* /usr/local/bin/

#cp EXAMPLE.conf /usr/local/net-snmp/share/snmp/snmpd.conf

修改/usr/local/net-snmp/share/snmp/snmpd.conf文件的61和62行,设置可以访问改SNMP的网段以及community名称。 
比如设置为 
com2sec local localhost public 
com2sec mynetwork 192.168.100.0/24 public

# /usr/local/net-snmp/sbin/snmpd -c /usr/local/net-snmp/share/snmp/snmpd.conf

启动SNMP 服务

# vi /etc/rc.d/rc.local

//在rc.local 上加入一行/usr/local/net-snmp/sbin/snmpd -c /usr/local/net-snmp/share/snmp/snmpd.conf,系统启动时启动SNMP

服务。

5. 安装Cacti

Cacti 官方网站:www.cacti.net/

# tar –zxvf cacti-0.8.6j.tar.gz

# mv cacti-0.8.6j /usr/loca/apache/htdocs/cacti

# vi /usr/local/apache/htdocs/cacti/include/config.php

$database_type = "mysql";

$database_default = "cacti";

$database_hostname = "localhost";

$database_username = "cacti";

$database_password = "cacti";

//添加cacti 用户

# useradd cacti

//将rra 目录的所有权给cacti 用户

# chown –R cacti /usr/loca/apache/htdocs/cacti/rra

//修改cacti 目录所属组

# chgrp –R cacti /usr/loca/apache/htdocs/cacti

//添加cron 任务

# crontab –e

*/5 * * * * /usr/local/bin/php /usr/local/apache/htdocs/cacti/poller.php

&gt; /dev/null 2&gt;&1

6. 安装Cactid

CACTID 的安装需要以下支持:

net-snmp-devel (需要编译安装net-snmp 时添加--enable-developer 选项)

mysql

mysql-devel (mysql 源文件编译安装后默认支持)

openssl-devel (Redhat 默认安装)

# tar -zxvf cacti-cactid-0.8.6i.tar.gz

# cd cacti-cactid-0.8.6i

# ./configure --with-mysql=/usr/local/mysql --with-snmp=/usr/local/net-snmp

# make;

//这时你将在此目录下看到多出了cactid、cactid.conf 两个文件

# mkdir /usr/local/cactid

# cp cactid cactid.conf /usr/local/cactid

# vi /usr/local/cactid/cactid.conf //修改cactid 配置文件

DB_Host 127.0.0.1

DB_Database cacti

DB_User cacti

DB_Pass cacti

7. 数据库配置

#mysql –uroot –p

Password:

mysql&gt; create database cacti;

Query OK, 1 row affected (0.00 sec)

mysql&gt; grant all on cacti.* to cacti@localhost identified by “cacti”;

Query OK, 1 row affected (0.00 sec)

mysql&gt;exit

# cd /usr/local/apache/htdocs/cacti

# mysql –uroot –p cacti &lt; cacti.sql

Password:

补充:#ln -s /usr/local/mysql/lib/mysql/libmysqlclient.so.15.0.0 /usr/lib/libmysqlclient.so.15

#ldconfig

这两句要加上,否则系统无法找到libmysqlclient.so.15库

Chmod 777 /usr/local/apache/htdocs/cacti/log

Chmod 777 /usr/local/apache/htdocs/cacti/rra

8. 完成cacti 的安装

1).在浏览器中输入:http://ip/cacti/

默认用户名:admin 密码:admin

设置cacti用到的命令路径 
snmpwalk Binary Path       /usr/local/ bin/snmpwalk 
snmpget Binary Path       /usr/local/ bin/snmpget 
RRDTool Binary Path       /usr/local/ bin/rrdtool 
PHP Binary Path             /usr/local/bin/php 
Cacti Log File Path       /usr/local/apache/htdocs/cacti/log/cacti.log 
Cactid Poller File Path    /usr/local/cactid/cactid

clip_image006

clip_image008

clip_image010



本文转自 gehailong 51CTO博客,原文链接:http://blog.51cto.com/gehailong/268464,如需转载请自行联系原作者

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
1天前
|
Linux Python
Linux 安装python3.7.6
本教程介绍在Linux系统上安装Python 3.7.6的步骤。首先使用`yum`安装依赖环境,包括zlib、openssl等开发库。接着通过`wget`下载Python 3.7.6源码包并解压。创建目标文件夹`/usr/local/python3`后,进入解压目录执行配置、编译和安装命令。最后设置软链接,使`python3`和`pip3`命令生效。
|
3天前
|
Ubuntu Linux
Linux 各发行版安装 ping 命令指南
如何在不同 Linux 发行版(Ubuntu/Debian、CentOS/RHEL/Fedora、Arch Linux、openSUSE、Alpine Linux)上安装 `ping` 命令,详细列出各发行版的安装步骤和验证方法,帮助系统管理员和网络工程师快速排查网络问题。
57 20
|
4天前
|
Unix Linux 编译器
UNIX/Linux 上的安装
UNIX/Linux 上的安装。
20 2
|
23天前
|
数据库连接 Linux Shell
Linux下ODBC与 南大通用GBase 8s数据库的无缝连接配置指南
本文详细介绍在Linux系统下配置GBase 8s数据库ODBC的过程,涵盖环境变量设置、ODBC配置文件编辑及连接测试等步骤。首先配置数据库环境变量如GBASEDBTDIR、PATH等,接着修改odbcinst.ini和odbc.ini文件,指定驱动路径、数据库名称等信息,最后通过catalog.c工具或isql命令验证ODBC连接是否成功。
|
1月前
|
NoSQL Linux PHP
如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤
本文介绍了如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤。接着,对比了两种常用的 PHP Redis 客户端扩展:PhpRedis 和 Predis,详细说明了它们的安装方法及优缺点。最后,提供了使用 PhpRedis 和 Predis 在 PHP 中连接 Redis 服务器及进行字符串、列表、集合和哈希等数据类型的基本操作示例。
57 4
|
1月前
|
缓存 资源调度 安全
深入探索Linux操作系统的心脏——内核配置与优化####
本文作为一篇技术性深度解析文章,旨在引领读者踏上一场揭秘Linux内核配置与优化的奇妙之旅。不同于传统的摘要概述,本文将以实战为导向,直接跳入核心内容,探讨如何通过精细调整内核参数来提升系统性能、增强安全性及实现资源高效利用。从基础概念到高级技巧,逐步揭示那些隐藏在命令行背后的强大功能,为系统管理员和高级用户打开一扇通往极致性能与定制化体验的大门。 --- ###
65 9
|
1月前
|
存储 安全 数据管理
如何在 Rocky Linux 8 上安装和配置 Elasticsearch
本文详细介绍了在 Rocky Linux 8 上安装和配置 Elasticsearch 的步骤,包括添加仓库、安装 Elasticsearch、配置文件修改、设置内存和文件描述符、启动和验证 Elasticsearch,以及常见问题的解决方法。通过这些步骤,你可以快速搭建起这个强大的分布式搜索和分析引擎。
43 5
|
1月前
|
存储 缓存 Linux
【Linux】另一种基于rpm安装yum的方式
通过本文的方法,您可以在离线环境中使用RPM包安装YUM并进行必要的配置。这种方法适用于无法直接访问互联网的服务器或需要严格控制软件源的环境。通过配置本地YUM仓库,确保了软件包的安装和更新可以顺利进行。希望本文能够为您在特定环境中部署YUM提供实用的指导。
163 0
|
关系型数据库 MySQL Linux
MySQL 数据库linux系统下修改配置文件设置mysql是否大小写敏感实例演示
MySQL 数据库linux系统下修改配置文件设置mysql是否大小写敏感实例演示
243 0
MySQL 数据库linux系统下修改配置文件设置mysql是否大小写敏感实例演示
|
1月前
|
Linux 网络安全 数据安全/隐私保护
Linux 超级强大的十六进制 dump 工具:XXD 命令,我教你应该如何使用!
在 Linux 系统中,xxd 命令是一个强大的十六进制 dump 工具,可以将文件或数据以十六进制和 ASCII 字符形式显示,帮助用户深入了解和分析数据。本文详细介绍了 xxd 命令的基本用法、高级功能及实际应用案例,包括查看文件内容、指定输出格式、写入文件、数据比较、数据提取、数据转换和数据加密解密等。通过掌握这些技巧,用户可以更高效地处理各种数据问题。
95 8
下一篇
DataWorks