在CentOS6.3上搭建nagios+cacti+ntop+pnp

本文详细介绍了如何在CentOS环境下配置并安装Nagios、Cacti、Ntop等监控软件,包括yum源配置、包安装、服务配置、权限设置等步骤。

CentOS版本: centos-x64 2.6.32-279.el6.x86_64 

nagios版本:Nagios  Core 3.4.2

Cacti版本: cacti-0.8.8a

Ntop:ntop-5.0.1

pnp:pnp4nagios-0.6.19


一、配置yum, 更换为163的源

 

1. 首先备份/etc/yum.repos.d/CentOS-Base.repo

         #mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

 

2. 下载对应版本repo文件, 放入/etc/yum.repos.d/(操作前请做好相应备份)

         #http://mirrors.163.com/.help/CentOS6-Base-163.repo

 

3. 修改repo文件名称

         #mv /etc/yum.repos.d/CentOS6-Base-163.repo /etc/yum.repos.d/CentOS-Base.repo       

 

4. 运行yum makecache生成缓存

 

5. 安装rpmforge

         #rpm -ivh rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm


二、安装包及相关软件

1. 每个人机器的环境不一样,我是用最小安装模式安装的centos,需要安装以上的包,如果还安装过程中提示缺少依赖包,请自行安装吧。

yum install httpd -y

yum install php php-mysql php-snmp php-gd -y

yum install mysql mysql-server mysql-devel -y

yum install net-snmp-utils -y

yum install rrdtool* -y

yum install gcc* -y

yum install gd gd-devel -y

yum install glibc* -y

yum install make.x86_64 automake -y

yum install openssl* -y

yum install perl-devel -y

yum install GeoIP GeoIP-devel -y

yum install ettercap  -y

yum install libpcap libpcap-devel -y

yum install gdbm gdbm-devel -y

yum install python python-libspython-devel -y

yum install wget  -y

yum install automake* -y

yum install libtool -y

yum install subversion -y

yum install libdbi libdbi-devel -y

yum install libdbi-dbd-mysql –y


2. 配置apache

  #vi/etc/httpd/conf/httpd.conf,确保有“LoadModule status_module modules/mod_status.so”这行并没有被注释,标示已经支持检测模块,然后启动apache:

         #servicehttpd start

    #chkconfig --level 35 httpd on  开机启动

 

3. 配置php

         #vi/var/www/html/index.php

         <?php

                   phpinfo();

         ?>

    访问http://localhost,验证php能够正常工作

 

4. 配置mysql

         #servicemysqld start    启动mysql

         #chkconfig--level 35 mysqld on    设置mysql开机启动

         #mysqladmin-u root password 'password'    设置root账号登陆密码

        

    #mysql-u root -p  使用root账号登陆

         mysql>create database cactidb;             创建数据库cactidb,并创建管理账号cactier

         mysql>GRANT all Privileges ON cactidb.* TO cactier@localhost IDENTIFIED BY 'password';        

         mysql>GRANT all Privileges ON cactidb.* TO cactier@127.0.0.1 IDENTIFIED BY 'password';

         mysql>flush privileges;                               更新权限设置

 

         创建mysql.php验证mysql数据库连接

         <?php

                   $link=mysql_connect("localhost","root","password");

                   if(!$link) echo"FAILD!";

                   else echo "OK!";

         ?>

         页面显示OK!表示连接正常。

 

5. 配置SNMP

    #vi/etc/snmp/snmpd.conf   编辑SNMP的配置文件,其中

         # First, map the community name "public"into a "security name"

         #      sec.name  source          community

         com2sec notConfigUser  default      public#默认的密码为“public”, 可以改为需要的密码

 

        #service snmpd start      启动SNMP服务

       #chkconfig--level 35 snmpd on        设置snmp服务开机启动


三、安装nagios

1. 设置nagios用户和组

         #/usr/sbin/useradd-m nagios

         #passwdnagios

         #/usr/sbin/groupaddnagios

         #/usr/sbin/usermod-a -G nagios nagios

 

2. 安装配置nagios

         #tarzxf nagios-3.4.2.tar.gz

         #cd nagios

         #./configure --with-gd-lib=/usr/lib64  --with-gd-inc=/usr/include --with-command-group=nagios--with-httpd-conf=/etc/httpd/conf/

         #makeall

         #makeinstall

         #makeinstall-init

         #makeinstall-config

         #makeinstall-commandmode

         #makeinstall-webconf

         #vi/usr/local/nagios/etc/objects/contacts.cfg

         #htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

        

         vi/etc/httpd/conf/httpd.conf

         添加:

         #nagios default settings

            Include /etc/httpd/conf/nagios.conf

         #service httpd restart

         访问http://IP/nagios

 

3. 安装nagios-plugins

         #tar zxf nagios-plugins-1.4.16.tar.gz

         #cd nagios-plugins-1.4.16

         #./configure--with-nagios-user=nagios --with-nagios-group=nagios

         #make

         #makeinstall

 

4. 安装 nagios-snmp

         #tar zxf CPAN-1.9800.tar.gz

         #cd CPAN-1.9800

         #perl Makefile.PL

         #make

         #make install

         #yuminstall perl-Time-HiRes -y

         #perl -MCPAN -e shell (ftp://freesoft.cgi.gov.cn/pub/languages/perl/CPAN )

         cpan>installNet::SNMP

        

         #tar zxf nagios-snmp-plugins.1.1.1.tgz

         #cd nagios_plugins

        

         #chkconfig --add nagios

          #chkconfig nagios on

         #/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

         #chcon -R -t httpd_sys_content_t /usr/local/nagios/sbin

         #chcon -R -t httpd_sys_content_t /usr/local/nagios/share

         #servicenagios start


四、安装cacti

1. 安装

         #tar zxvf /root/cacti-0.8.8a.tar.gz

         #mv /root/cacti-0.8.8a /usr/local/cacti

         #mysql -u root -p cactidb < /usr/local/cacti/cacti.sql

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

         $database_type = "mysql";

         $database_default ="cactidb";

         $database_hostname ="localhost";

         $database_username ="cactier";

         $database_password ="password";

         $database_port = "3306";

           $database_ssl = false;

 

         #adduser -s /sbin/nologin cactier

         #cd /usr/local/cacti

         #chown -R cactier rra/ log/

         #vi/etc/crontab

                  */5* * * * cactier php /usr/local/cacti/poller.php > /dev/null &

 

         #vi /etc/httpd/conf/cacti.conf

         Alias /cacti "/usr/local/cacti"

         <Directory"/usr/local/cacti">

               OptionsFollowSymLinks MultiViews

               AllowOverrideNone

               Orderallow,deny

               Allowfrom all

         </Directory>

 

2. 配置

         #/usr/bin/php -q /usr/local/cacti/poller.php --force --debug

验证php是否有错误,如有:PHP Warning:  strtotime()或PHPWarning:  date()的警告信息,则 vi/etc/php.ini,修改“;date.timezone=”为“date.timezone= PRC”,然后重启httpd服务。

 

打开http://IP/cacti/install 进行cacti的安装


五、安装ntop

         #useradd -M -s /sbin/nologin -r ntop

         #tarzxvf ntop-5.0.1.tar.gz

         #cd  ntop-5.0.1

         #./autogen.sh

         #make

         #makeinstall

         #chown-R ntop.ntop /usr/local/share/ntop

         #chown-R ntop:root /usr/local/share/ntop

         #ntop -A

         #ntop -i eth0 -d -L -u ntop

         #echo 'ntop -i eth0 -d -L -u ntop &> /dev/null' >>/etc/rc.d/rc.local

         访问http://IP:3000


六、整合cacti和ntop

         #tar zxvf ntop-v0.2-1.tgz

         #mv ntop /usr/local/cacti/plugins/

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

         添加“$plugins[] = 'ntop';”


七、整合cacti和nagios

1. 安装ndoutils

         #tar zxf ndoutils-1.5.2.tar.gz

         #cd ndoutils-1.5.2

         #./configure --with-mysql-lib=/usr/lib64/mysql

    #make

         #cd /root/ndoutils-1.5.2/db

         #./installdb -ucactier -p 123#abc -h localhost -d cactidb

         #cd /root/ndoutils-1.5.2/src

         cp -v src/{ndomod-3x.o,ndo2db-3x,file2sock,log2ndo} /var/www/html/nagios/bin

 

         #cp -v ndomod-3x.o /usr/local/nagios/bin/

         #mv/usr/local/nagios/bin/ndomod-3x.o /usr/local/nagios/bin/ndomod.o

 

         #cp -v ndo2db-3x /usr/local/nagios/bin/

         #mv/usr/local/nagios/bin/ndo2db-3x /usr/local/nagios/bin/ndo2db

 

         #cp -v file2sock /usr/local/nagios/bin/

         #cp -v log2ndo /usr/local/nagios/bin/

 

         #cd /root/ndoutils-1.5.2/config

         #cp -v ndo2db.cfg-sample /usr/local/nagios/etc/

         #mv/usr/local/nagios/etc/ndo2db.cfg-sample /usr/local/nagios/etc/ndo2db.cfg

 

         #cp -v ndomod.cfg-sample /usr/local/nagios/etc/

         #mv/usr/local/nagios/etc/ndomod.cfg-sample /usr/local/nagios/etc/ndomod.cfg

         #chmod 644 /usr/local/nagios/etc/ndo*

        

         #chown nagios:nagios /usr/local/nagios/etc/*

         #chown nagios:nagios /usr/local/nagios/bin/*

 

#vi /usr/local/nagios/etc/nagios.cfg  

broker_module=/usr/local/nagios/bin/ndomod.o config_file=/usr/local/nagios/etc/ndomod.cfg   # 在文件中添加: 

event_broker_options=-1# 检查  

         

#vi/usr/local/nagios/etc/ndo2db.cfg

socket_type=tcp  

  db_servertype=mysql  

db_host=localhost  

db_port=3306  

db_name=cactidb  

db_prefix=npc_  

db_user=cactier 

db_pass=password 

 

#/usr/local/nagios/etc/ndomod.cfg

output_type=tcpsocket  

  output=127.0.0.1

 

        为ndo2db添加启动进程

#cp ./daemon-init /etc/init.d/ndo2db  

#vi /etc/init.d/ndo2db 

  # 检查里面的路径确保不会出现“//",并将Ndo2dbBin修改成下面的值:  

      Ndo2dbBin=/usr/local/nagios/bin/ndo2db

#chmod +x /etc/init.d/ndo2db

 

         #servicendo2db start

         #tail-20 /var/log/messages    ## 查看其中是否有错误出现。如无报错请继续

         #/usr/local/nagios/bin/nagios-v /usr/local/nagios/etc/nagios.cfg    检查nagios配置没有问题

#service nagios restart

 

2. 安装npc

         #tar zxf /root/npc-2.0.4.tar.gz

         #mv /root/npc/ /usr/local/cacti/plugins/

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

         添加 $plugins[] = 'npc';

 

3. 为apche添加php支持

         #vi /etc/httpd/conf/httpd.conf

# 添加一行:  

                   AddType application/x-httpd-php .php .phtml  

         # 修改原DirectoryIndex内容为:  

                   DirectoryIndex index.html index.html.var index.php  

  

#usermod -G cactier apache  

#service httpd restart    ## 重启apache以让php生效  

#php -m   ## 查看是否有json被加载

 

 

4. 修改mysql中的表结构:

use cactidb;

alter table npc_eventhandlers addlong_output TEXT NOT NULL default '' after output;

alter table npc_eventhandlers add long_outputTEXT NOT NULL default '' after output;

alter table npc_hostchecks add long_outputTEXT NOT NULL default '' after output; 

alter table npc_hoststatus add long_outputTEXT NOT NULL default '' after output; 

alter table npc_notifications add long_outputTEXT NOT NULL default '' after output; 

alter table npc_servicechecks addlong_output TEXT NOT NULL default '' after output; 

alter table npc_servicestatus addlong_output TEXT NOT NULL default '' after output; 

alter table npc_statehistory add long_outputTEXT NOT NULL default '' after output; 

alter table npc_systemcommands addlong_output TEXT NOT NULL default '' after output;

 

#service ndo2db restart 

#service nagios restart



八、安装pnp4nagios

1. 安装pnp

#tar pnp4nagios-0.6.19.tar.gz

        #cdpnp4nagios-0.6.19

# ./configure --with-nagios-user=nagios--with-nagios-group=nagios

#make all

#make install

#make install-webconf

#make install-config

#make install-init

 

         部署配置文件

#chown –R nagios.nagios /usr/local/pnp4nagios

#su - nagios

$cd /usr/local/pnp4nagios/etc

$mv misccommands.cfg-sample misccommands.cfg

$mv nagios.cfg-sample  nagios.cfg

$mv process_perfdata.cfg-sample process_perfdata.cfg

$mv rra.cfg-sample rra.cfg

 

$cd /usr/local/pnp4nagios/etc/pages

$mv web_traffic.cfg-sample web_traffic.cfg

 

$cd /usr/local/pnp4nagios/etc/check_commands

$mv check_all_local_disks.cfg-sample check_all_local_disks.cfg

$mv check_nrpe.cfg-sample check_nrpe.cfg

$mv check_nwstat.cfg-sample check_nwstat.cfg

 

         设置npcd开机启动

         #chkconfig–add /etc/init.d/npcd

         启动npcd

#service npcd start

 

2. 修改nagios配置文件

         配置nagios.cfg,修改:

         #vi/usr/local/nagios/etc/nagios.cfg

process_performance_data=1

                 host_perfdata_command=process-host-perfdata

service_perfdata_command=process-service-perfdata

 

         配置commands.cfg,修改:

#vi /usr/local/nagios/etc/objects/etc/objects/commands.cfg

# 'process-host-perfdata' command definition

define command{

                      command_name    process-host-perfdata

                      command_line   /usr/local/pnp4nagios/libexec/process_perfdata.pl

        }

 

           # 'process-service-perfdata'command definition

                define command{

                       command_name    process-service-perfdata

                      command_line   /usr/local/pnp4nagios/libexec/process_perfdata.pl

        }

 

         配置templates.cfg,添加:

         #vi/usr/local/nagios/etc/objects/etc/objects/templates.cfg

# Pnp4nagios host definition template

                define host {

                                name       host-pnp

                                action_url/pnp4nagios/graph?host=$HOSTNAME$

                                register   0

                  }

 

# Pnp4nagioshost definition template

define service {

                  name       srv-pnp

                  action_url/pnp4nagios/graph?host=$HOSTNAME$&srv=$SERVICEDESC$

                  register   0

         }

 

         配置主机监控文件:

         #vi/usr/local/nagios/etc/objects/etc/objects/192.168.8.80-NSClient.cfg

                define service{

                                use                                          generic-service,srv-pnp

                                host_name                            192.168.8.80-NSClient

                                service_description            check_ping

                                check_command                 check_ping!100.0,20%!500.0,60%

                  }

 

3. 重启服务

#/usr/local/nagios/bin/nagios-v /usr/local/nagios/etc/nagios.cfg    检查nagios配置

#service nagios restart   没有错误重启nagios服务

        #service npcd restart      重启npcd服务




先简单记录一下,以后有时间再完善吧。


成都市作为中国西部地区具有战略地位的核心都市,其人口的空间分布状况对于城市规划、社会经济发展及公共资源配置等研究具有基础性数据价值。本文聚焦于2019年度成都市人口分布的空间数据集,该数据以矢量格式存储,属于地理信息系统中常用的数据交换形式。以下将对数据集内容及其相关技术要点进行系统阐述。 Shapefile 是一种由 Esri 公司提出的开放型地理空间数据格式,用于记录点、线、面等几何要素。该格式通常由一组相互关联的文件构成,主要包括存储几何信息的 SHP 文件、记录属性信息的 DBF 文件、定义坐标系统的 PRJ 文件以及提供快速检索功能的 SHX 文件。 1. **DBF 文件**:该文件以 dBase 表格形式保存与各地理要素相关联的属性信息,例如各区域的人口统计数值、行政区划名称及编码等。这类表格结构便于在各类 GIS 平台中进行查询与编辑。 2. **PRJ 文件**:此文件明确了数据所采用的空间参考系统。本数据集基于 WGS84 地理坐标系,该坐标系在全球范围内广泛应用于定位与空间分析,有助于实现跨区域数据的准确整合。 3. **SHP 文件**:该文件存储成都市各区(县)的几何边界,以多边形要素表示。每个多边形均配有唯一标识符,可与属性表中的相应记录关联,实现空间数据与统计数据的联结。 4. **SHX 文件**:作为形状索引文件,它提升了在大型数据集中定位特定几何对象的效率,支持快速读取与显示。 基于上述数据,可开展以下几类空间分析: - **人口密度评估**:结合各区域面积与对应人口数,计算并比较人口密度,识别高密度与低密度区域。 - **空间集聚识别**:运用热点分析(如 Getis-Ord Gi* 统计)或聚类算法(如 DBSCAN),探测人口在空间上的聚集特征。 - **空间相关性检验**:通过莫兰指数等空间自相关方法,分析人口分布是否呈现显著的空间关联模式。 - **多要素叠加分析**:将人口分布数据与地形、交通网络、环境指标等其他地理图层进行叠加,探究自然与人文因素对人口布局的影响机制。 2019 年成都市人口空间数据集为深入解析城市人口格局、优化国土空间规划及完善公共服务体系提供了重要的数据基础。借助地理信息系统工具,可开展多尺度、多维度的定量分析,从而为城市管理与学术研究提供科学依据。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值