Centos 5.2安装Cacti并集成Nagios安装文档

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介:

Centos 5.2安装Cacti并集成Nagios安装文档

本文档并非原创,而是参照网上很多文档,因为不能全部都把参照者列举出来,特在此感谢我参照文档的作者.

一、本文档所用软件说明:
.
二、系统环境部署及调整
1. 检查系统是否正常
   # more /var/log/messages        (检查有无系统级错误信息)
   # dmesg (检查硬件设备是否有错误信息)
   # ifconfig(检查网卡设置是否正确)
   # ping  www.163.com        (检查网络是否正常)

2. 关闭不需要的服务
   # ntsysv
   以下仅列出需要启动的服务,未列出的服务一律推荐关闭:
atd
crond
   irqbalance
   microcode_ctl
   network
   sendmail
   sshd
   syslog
   httpd
   mysqld

3. 重新启动系统
   # init 6

4. 配置 vim
   # vi /root/.bashrc
   在 alias mv='mv -i' 下面添加一行:alias vi='vim' 保存退出。
   # echo 'syntax on' > /root/.vimrc
   # source /root/.bashrc

5. 使用 yum 对系统进行更新并且安装必要软件包
        #wget  http://dag.wieers.com/packages/r ... 4-1.el4.rf.i386.rpm
        #rpm –Uvh rpmforge-release-0.3.4-1.el4.rf.i386.rpm
        #rpm -Uvh  http://download.fedora.redhat.co ... ease-5-2.noarch.rpm
   #yum install php mysql http php-gd php-devel php-mysql mysql-devel
# yum update -y
   # yum install ntp -y



6. 定时校正服务器时钟,定时与中国国家授时中心授时服务器同步
   # crontab -e
加入一行:
1 */6 * * * ntpdate 210.72.145.44 > /dev/null 2>&1
        
三.CACTI的安装
1安装 net-snmp
yum install net-snmp*
注意加个*,把所有的包都装上,否则没有cacti需要的命令.

2安装 php-snmp
yum install php-snmp

3.安装rrdtool
#yum –y install rrdtool
4.下载最新的CACTI
#wget  http://www.cacti.net/downloads/cacti-0.8.7d.tar.gz
# tar -zxf cacti-0.8.7d.tar.gz
# mv cacti-0.8.7d /var/www/html/cact
# cd /var/www/html/cacti/
# mysqladmin -uroot -p create cacti
# mysql -u root -p
mysql> GRANT ALL ON cacti.* TO cactiuser@localhost IDENTIFIED BY 'cactiuser';
mysql> flush privileges;

#mysql -ucactiuser -pcactiuser cacti < /var/www/html/cacti/cacti.sql

crontab -e
插入
*/5 * * * * cactiuser php /var/www/html/cacti/poller.php > /dev/null 2>&1
保存退出。

5.安装安装Cacti Plugins Arch

#wget  http://mirror.cactiusers.org/dow ... -0.8.7d-PA-v2.4.zip
# tar xzf cacti-plugin-arch.tar.gz

plugin arch的安装有两种方法,第一中是运行patch文件修改现有的内容,第二种是使用已经patch好的文件覆盖源文件,我用第二种,直接把files-0.8.7b下面的文件复制到cacti下面
# cd cacti-plugin-arch
#cp  files-0.8.7b/* /var/www/html/cacti/
# mysql -ucactiuser -pcactiuser cacti<pa.sql
**********这个文件不导入的话,将来会看不到plugin management这个页面,对其他的影响不大,但是我们要用npc(nagios plugin),一定要用这个

现在cacti的配置文件global.php
# vi /var/www/html/cacti/include/global.php
找到
$database_username = "cactiuser";
$database_password = "cactiuser"; //设置成自己数据库用户名和密码

如果你的把CACTI放到WEB目录的根目录就不用改下面的设置,我的是放到CACTI目录下所以把下面的参数改成
$config['url_path'] = '/cacti/';

插件安装(这里只介绍一般插件的安装,主要讲NPC的安装)

# cd /soft
#wget  http://cactiusers.org/downloads/settings.tar.gz
# wget  http://cactiusers.org/downloads/thold.tar.gz
# wget  http://www.assembla.com/spaces/n ... c-2.0.0b.166.tar.gz
# mv download\?filename\=npc-2.0.0b.166.tar.gz npc-2.0.0b.166.tar.gz


# tar zxf settings-0.5.tar.gz
# tar zxf thold-0.3.9.tar.gz
# tar zxf npc-2.0.0b.166.tar.gz
# cp -rf settings thold npc /var/www/html/cacti/plugins/

接下来在global.php中加载settings和thold
# vi /var/www/html/cacti/include/global.php
添加下面内容
$plugins[] = 'settings';
$plugins[] = 'thold';
回到网页中,记得要去user managerment里面,给予相应用户的permissions,具体做法是,点页面左边的菜单User Managerment,然后在右边点击某个用户(如admin),然后在Realm Permissions中选中相应的选项即可。

而NPC,直接进入网页,点击左边的Plugin Management,然后在右边的Uninstalled中install NPC,在Installed中enable NPC,就可以了。

安装php-json,在npc中要用到php-json这个组件,如果没有安装在npc中只是一片空白
# wget  http://aurore.net/projects/php-json/php-json-ext-1.2.1.tar.bz2
# tar jxf php-json-ext-1.2.1.tar.bz2
# cd php-json-ext-1.2.1
# ./configure &&make &&make install
因为编译安装的不会加载到php中,所以要手动加个配置文件
# vi /etc/php.d/json.ini
extension=json.so

四,nagios的安装
1. # mkdir /usr/local/nagios
# useradd nagios -d /usr/local/nagios
# passwd nagios
# chmod 755 /usr/local/nagios/
# grep ^User /etc/httpd/conf/httpd.conf 
User apache
查找运行apache的用户

# groupadd nagcmd
# usermod -G nagcmd apache
# usermod -G nagcmd nagios

2下载并安装nagios
nagios 主页: http://www.nagios.org 
nagios 当前版本:nagios-3.0.6 
nagios 插件当前版本:nagios-plugins-1.4.6 
fruity:图形化配置nagios的工具,需要php5.x版本才能运行
http://heanet.dl.sourceforge.net/sourceforge/fruity/
http://pear.php.net/get/HTML_TreeMenu-1.2.1.tgz
http://puzzle.dl.sourceforge.net/sourceforge/adodb/adodb471-1.tgz
将HTML_TreeMenu-1.2.0.tgz和adodb471-1.tgz直接解压复制到fruity 下 分别改名为HTML 和adodb 其他不做修改 修改 fruity/includes下的config.ifg,需要更改的地方有,路径,mysql信息 mysql 添加fruity 数据库和user,password. 这样,就可以用fruity来进行配置了。 注意:在cacti服务器上的mysql版本必须是4.1以上,因为npc是以mysql4.1为基础进行开发的。

# tar zxf nagios-cn-3.0.6.tgz

# cd nagios-cn-3.0.6
#./configure --prefix=/usr/local/nagios --with-gd-lib --with-gd-inc --enable-event-broker
# make all
# make all install
# make install-init   //安装启动脚本到/etc/init.d/
# make install-commandmode
# make install-config                         //安装初始配置文件到/usr/local/nagios


nagios-plugins的安装
#cd /soft
# tar zxf nagios-plugins-1.4.13.tar.gz
# cd nagios-plugins-1.4.13
# ./configure --prefix=/usr/local/nagios-plugins
# make&&make install
安装完成以后在/usr/local/nagios-plugins会产生一个libexec的目录,将该目录全部移动到/usr/local/nagios目录下即可。 如下:
# mv /usr/local/nagios-plugins/libexec /usr/local/nagios/

现在配置apache:
在apache的httpd.conf文件中加入如下内容:
ScriptAlias /nagios/cgi-bin/ /usr/local/nagios/sbin/ 
<Directory "/usr/local/nagios/sbin/"> 
        AllowOverride AuthConfig 
        Options ExecCGI 
        Order allow,deny 
        Allow from all 
</Directory>

Alias /nagios/ /usr/local/nagios/share/ 
<Directory "/usr/local/nagios/share"> 
        Options None 
        AllowOverride AuthConfig 
        Order allow,deny 
        Allow from all 
</Directory>
然后重启apache


配置页面访问权限:
在/usr/local/nagios/share目录下加个.htaccess文件
# cd /usr/local/nagios/share
# vi .htaccess
AuthName "Nagios Access" 
AuthType Basic 
AuthUserFile /usr/local/nagios/etc/.htpasswd 
require valid-user

然后复制此.htaccess文件到/usr/local/nagios/sbin下
# cp .htaccess /usr/local/nagios/sbin
# htpasswd -c /usr/local/nagios/etc/.htpasswd nagiosadmin

这个apache目录根据安装目录的不同而不同,用htpasswd命令生成用户名和密码以控制访问权限。

配置和启动nagios过程 
# cd /usr/local/nagios/etc 
把目录里的.cfg-sample文件全部拷贝成.cfg 
例如: 
# cp nagios.cfg-sample nagios.cfg 
修改cgi.cfg,把use_authentication=1改为use_authentication=0,即不用验证.不然有一些页面不会显示。 
修改后用如下命令检查配置文件是否正常: 
#/usr/local/nagios/bin/nagios –v /usr/local/nagios/etc/nagios.cfg

如果出现如下显示就说明配置没问题
Total Warnings: 0
Total Errors:   0

现在您就可以http://您的IP/nagios/访问nagios了

五集成nagios到cacti
.1.安装NDoutils
NDoutils是把Nagios的数据写到mysql里的插件,这个是集成的关键
http://www.nagios.org/download/addons/中下载ndoutils-1.4b7

#cd /soft
# tar zxf ndoutils-1.4b7.tar.gz
# cd ndoutils-1.4b7
# ./configure
#make
然后直接把我们想要的程序及配置文件复制到nagios中就可以
# cd src
# cp ndomod-3x.o ndo2db-3x log2ndo file2sock /usr/local/nagios/bin
# cd ../config
# cp ndomod.cfg ndo2db.cfg /usr/local/nagios/etc/
修改相关配置文件
# vi /usr/local/nagios/etc/ndo2db.cfg
db_name=cacti
db_prefix=npc_
db_user=cactiuser
db_pass=cactiuser
debug_level=1
这里是用Cacti在mysql中使用的用户和密码以及数据库.

修改nagios的配置文件,使ndoutils可以在nagios中加载
# vi /usr/local/nagios/etc/nagios.cfg
更改
check_external_commands = 1
command_check_interval = -1
event_broker_options = -1
添加
broker_module = /usr/local/nagios/bin/ndomod-3x.o config_file=/usr/local/nagios/etc/ndomod.cfg

然后分别启动NDoutils和Nagios
#/usr/local/nagios/bin/ndo2db-3x –c /usr/local/nagios/etc/ndo2db.cfg
# service nagios restart

让NDoutils开机就启动
# echo “/usr/local/nagios/bin/ndo2db-3x -c /usr/local/nagios/etc/ndo2db.cfg” >>/etc/rc.local

配置到此结束


本文转自holy2009 51CTO博客,原文链接:http://blog.51cto.com/holy2010/325431
相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
2月前
|
存储 安全 Linux
CentOS安装SeaweedFS
通过上述步骤,您应该能够在CentOS系统上成功安装并启动SeaweedFS。记住,根据实际部署规模和需求,可能还需要进一步调整配置参数和优化网络布局。SeaweedFS的灵活性和扩展性意味着随着使用深入,您可能需要探索更多高级配置和管理策略。
110 64
|
2月前
|
存储 安全 Linux
CentOS安装SeaweedFS
通过上述步骤,您应该能够在CentOS系统上成功安装并启动SeaweedFS。记住,根据实际部署规模和需求,可能还需要进一步调整配置参数和优化网络布局。SeaweedFS的灵活性和扩展性意味着随着使用深入,您可能需要探索更多高级配置和管理策略。
119 61
|
26天前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第8天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括系统准备、配置安装源、安装 SQL Server 软件包、运行安装程序、初始化数据库以及配置远程连接。通过这些步骤,您可以顺利地在 CentOS 系统上部署和使用 SQL Server 2019。
|
27天前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第7天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括系统要求检查与准备、配置安装源、安装 SQL Server 2019、配置 SQL Server 以及数据库初始化(可选)。通过这些步骤,你可以成功安装并初步配置 SQL Server 2019,进行简单的数据库操作。
|
2月前
|
Linux 网络安全 数据安全/隐私保护
Linux系统之Centos7安装cockpit图形管理界面
【10月更文挑战第12天】Linux系统之Centos7安装cockpit图形管理界面
97 1
Linux系统之Centos7安装cockpit图形管理界面
|
1月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。通过具体案例,读者可以了解如何准备环境、下载源码、编译安装、配置服务及登录 MySQL。编译源码安装虽然复杂,但提供了更高的定制性和灵活性,适用于需要高度定制的场景。
83 3
|
2月前
|
NoSQL 数据可视化 Linux
redis学习四、可视化操作工具链接 centos redis,付费Redis Desktop Manager和免费Another Redis DeskTop Manager下载、安装
本文介绍了Redis的两个可视化管理工具:付费的Redis Desktop Manager和免费的Another Redis DeskTop Manager,包括它们的下载、安装和使用方法,以及在使用Another Redis DeskTop Manager连接Redis时可能遇到的问题和解决方案。
140 1
redis学习四、可视化操作工具链接 centos redis,付费Redis Desktop Manager和免费Another Redis DeskTop Manager下载、安装
|
1月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。
本文介绍了在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。内容涵盖准备工作、下载源码、编译安装、配置服务、登录设置及实践心得,帮助读者根据需求选择最适合的安装方法。
57 2
|
1月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
100 2
|
2月前
|
Linux 知识图谱
Centos7安装killall,fuser, killall,pstree和pstree.x11
通过上述步骤,您已在CentOS 7系统中成功部署了killall、fuser、pstree以及pstree.x11,为高效管理系统进程打下了坚实基础。更多关于服务器管理与优化的知识,获取全面技术支持与解决方案。
55 1