Chinaunix首页 | 论坛 | 博客
  • 博客访问: 391393
  • 博文数量: 146
  • 博客积分: 7142
  • 博客等级: 少将
  • 技术积分: 975
  • 用 户 组: 普通用户
  • 注册时间: 2009-12-03 09:43
文章分类

全部博文(146)

文章存档

2012年(1)

2011年(5)

2010年(24)

2009年(116)

我的朋友

分类: LINUX

2009-12-08 22:51:50

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

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
        #rpm –Uvh rpmforge-release-0.3.4-1.el4.rf.i386.rpm
        #rpm -Uvh
   #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
# 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
# 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**********这个文件不导入的话,将来会看不到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
# wget
# wget ... 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
# 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 主页:
nagios 当前版本:nagios-3.0.6
nagios 插件当前版本:nagios-plugins-1.4.6
fruity:图形化配置nagios的工具,需要php5.x版本才能运行



将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/

        AllowOverride AuthConfig
        Options ExecCGI
        Order allow,deny
        Allow from all


Alias /nagios/ /usr/local/nagios/share/

        Options None
        AllowOverride AuthConfig
        Order allow,deny
        Allow from all

然后重启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里的插件,这个是集成的关键
到中下载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
阅读(891) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~