无侵入进行SDK的初始化
Posted 王二狗的人生
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了无侵入进行SDK的初始化相关的知识,希望对你有一定的参考价值。
话不多说,下面开始,nagios具体的介绍,可以搜一下,这篇文章为作者在实际操作中整理出来,写出来的都是负责人的内容~
环境准备
此文档共用2台服务器的配置,操作系统均为centOS6.7,安装用户都为nagios用户,所有的安装都必须基于nagios,当权限不足时,采用sudo的方式,具体信息如下:
IP地址 角色 安装用户
192.168.1.10 Nagios服务端 nagios
192.168.1.11 被监控主机 nagios
nagios服务端安装步骤
编译安装nagios软件
安装需要192.168.1.10服务器预装cc,glibc,glibc-common,gd,gd-devel,xinetd,openssl-devel等,执行命令:
[[email protected] ~]$ rpm -qa | grep **
#依次检查是否安装以上软件,如果没有安装则执行命令:
[[email protected] ~]$ sudo yum install -y **
1
2
3
1
2
3
依赖部分处理好之后,下面进行nagios的编译安装,nagios的下载地址为:nagios官网下载 ,下载好之后,进入防止安装包的目录,解压压缩包:
[[email protected] ~]$ tar zxvf nagios-3.5.0.tar.gz
1
1
进入解压后的目录: cd /home/nagios/nagios依次执行:
./configure --prefix=/usr/local/nagios
make all
sudo make install
sudo make install-init
make install-commandmode
make install-config
sudo chkconfig --add nagios
sudo chkconfig duoying99.cn --level 35 nagios on
1
2
3
4
5
6
7
8
1
2
3
4
5
6
7
8
最后执行
sudo chkconfig --list nagios
1
1
显示如下结果:
这里写图片描述
下面来验证nagios是否被安装:
切换到目录/usr/local/nagios/下,查看目录结构如下:
这里写图片描述
如果以上目录都存在,说明程序已经被安装到服务器中,各个目录的作用为:
目录 作用
bin 可执行程序所在目录
etc 配置文件所在目录
libexec 外部插件所存放的目录
sbin Nagios CGI文件所在目录,也就是执行外部命令所需文件所在的目录
share 网页文件存放目录
var 日志,lock文件目录
安装nagios插件
nagios插件下载地址为:官网下载解压安装包:
tar zxvf nagios-plugins-2.0.1.tar.gz
1
1
进入解压目录:
[[email protected] ~]$ cd nagios-plugins-2.0.1
[[email protected] nagios-plugins-2.0.1]$ pwd
/home/nagios/nagios-plugins-2.0.1 #解压路径
分别执行命令:
./configure --prefix=/usr/local/nagios
make
sudo make install
安装apache和php
安装apache
nagios提供了web页面,可以观看被监控的资源状态,所以需安装apache与PHP来支持此项功能,那么首,查看操作系统是否自带了apache,如果有就删除掉:
[[email protected] nagios-plugins-2.0.1]$ rpm -qa | grep httpd
httpd-tools-2.2.15-45.el6. www.longboshyl.cn centos.x86_64
httpd-2.2.15-45.el6.centos.x86_64
#删除自带的apache
[[email protected] nagios-plugins-2.0.1]$ sudo rpm -e --nodeps httpd
下载apache安装包 官网下载 解压下载的安装包并安装:
#创建文件夹,存到执行脚本配置文件等
sudo mkdir /usr/local/apache2
#解压安装包
tar zxvf httpd-2.2.23.tar.gz
#进入安装路径
cd httpd-2.2.23
#配置值向目录,通第一条命令的目录
./configure --prefix=/usr/local/apache2
#编译
make
#安装
sudo make install
安装php
php安装包下载地址:官网下载,下载后执行以下命令:
#解压安装包
tar zxvf php-5.4.10.tar.gz
#创建文件夹,存到执行脚本配置文件等
sudo mkdir /usr/local/php
#进入解压之后的目录
cd php-5.4.10
#配置指向目录
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs
5
6
7
8
执行最后一条语句时,出现如下错误:
这里写图片描述
说明没有安装libxml2和libxml2-devel,安装即可:
#已经存在libxml2,说明只安装libxml2-devel即可
[[email protected] php-5.4.10]$ rpm -qa libxml2
libxml2-2.7.6-20.el6.x86_64
#安装libxml2-devel
sudo yum install -y www.yisijueyl.cn/ libxml2-devel
执行成功,接续执行:
#编译
make
#安装
make install
4
最后将安装目录下的php.ini-production文件,拷贝至/usr/local/php/lib/下并命名为php.ini
sudo cp php.ini-production /usr/local/php/lib/php.ini
1
1
配置apache
编辑apache的配置文件httpd.conf
sudo vim /usr/local/apache2/conf/httpd.conf
1
1
找到:
User daemon
Group daemon
修改为:
Group nagios
1
1
找到:
<IfModule dir_module>
DirectoryIndex index.html
</IfModule>
3
修改为:
<IfModule dir_module>
DirectoryIndex index.html index.php
AddType application/x-httpd-php .php
</IfModule>
为了增加用户的访问权限,在此文件中增加以下配置:
#setting for magion
ScriptAlias /nagios/cgi-bin "/usr/local/nagios/sbin"
<Directory "/usr/local/nagios/sbin">
AuthType Basic
Options ExecCGI
AllowOverride None
Order allow,deny
Allow from all
AuthName "Nagios Access"
AuthUserFile /usr/ www.wmyl88.com local/nagios/etc/htpasswd
Require valid-user
</Directory>
Alias /nagios "/usr/local/nagios/share"
<Directory "/usr/local/ www.lieqibiji.com nagios/share">
AuthType Basic
Options None
AllowOverride None
Order allow,deny
Allow from all
AuthName "nagios Access"
AuthUserFile www.wanmeiyuele.cn /usr/local/nagios/etc/htpasswd
Require valid-user
创建apache目录验证文件
在上面的配置中,指定了权限验证文件/usr/local/nagios/etc/htpasswd,下面来创建这个文件,最后的nagios是用户名,输入命令后,需要手工输入密码:
/usr/local/apache2/bin/htpasswd -c /usr/local/nagios/etc/htpasswd nagios
1
1
最后启动apache服务:
sudo /usr/local/apache2/bin/apachectl start
1
1
访问地址http://yourserver/ www.yongshiyule178.com nagios
这里写图片描述
输入用户名密码
这里写图片描述
出现上述页面,即apache安装成功
配置nagios server
默认情况下,nagios没有做任何配置,那么下面介绍一些主要配置文件和如何配置服务,配置文件主要在目录: /usr/local/nagios/etc/
这里写图片描述
nagios的配置文件,是相互联系的,搞清楚具体的配置,就可以弄清楚他们之间的依赖:
templates.cfg
nagios主要用于监控主机资源以及服务,在nagios配置中称为对象,为了不必重复定义一些监控对象,nagios引入了一个模板配置文件,将一些共性的属性定义成模板,以便于多次引用,这就是templates.cfg的作用,具体的含义如下:
#一般的通用配置,下面具体的某种类型配置中,可以引用次配置
define contact{
name generic-contact ; 别名
service_notification_period 24x7 当服务出现异常时,发送通知的时间段,这个时间段"24x7"在timeperiods.cfg文件中定义
host_notification_period 24x7 ;当主机出现异常时,发送通知的时间段,这个时间段"24x7"在timeperiods.cfg文件中定义
service_notification_options w,u,c,r,f,s ; 什么级别的通知(针对主机),会被发送出去(w:warn|u:unknow|c:criticle紧急状态|r:recover恢复状态|d:宕机),f,s含义还没查到
host_notification_options d,u,r,f,s ;什么级别的警告(针对服务)会被通知出去
service_notification_commands notify-service-by-email ; 服务故障时,发送通知的方式,可以是邮件和短信,这里发送的方式是邮件; 其中“notify-service-by-email”在commands.cfg文件中定义
host_notification_commands notify-host-by-email ; 主机故障时,发送通知的方式,可以是邮件和短信,这里发送的方式是邮件; 其中“notify-host-by-email”在commands.cfg文件中定义
register 0 ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL CONTACT, JUST A TEMPLATE!
}
以上是关于无侵入进行SDK的初始化的主要内容,如果未能解决你的问题,请参考以下文章