




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第十二章 监控系统nagios俗话说:工欲善其事,必先利其器。要做好系统管理,使自己的工作更轻松更有效的话,一个好的监控工具是必不可少的了。在2002年早些时候,我有幸承包中国科学院某研究所的整个网络维护。当时网络状况十分糟糕,断网情况比较频繁,造成这种情况的原因大致有两种:内部网络联网混乱。上联到另外一个研究所,那里时不时操作不慎把上连的线路给弄掉了。为了了解网络是否处于一个可用的状态,我上班的第一件事情就是打开网络收音机,根据声音的有无进行判断。再往后两年,有一些用于远程教育的服务器托管在亦庄某机房。这个机房的服务实在是很糟糕,曾有一段时间,网络服务基本处于无法访问的状态,打电话过去,那边
2、敷衍说机房收到攻击,马上就会正常。我们不得不暂时相信他的托词,为了知道何时网络能恢复正常,我就在办公室的电脑执行ping服务器ip地址的操作。2005年秋天,我在一个sp公司做系统管理。这里有数百个服务器对外提供服务,并且要求24小时运营保障。这种网络环境下,再用听在线收音机或者ping来判断网络是否正常,是没有什么效果的。幸好,在我接手的时候,已经有了一个监控系统netsaint(nagios的早期版本名称),后来我把它升级成最新的nagios。通过逐步完善这个监控平台,取得比较理想的运营效果:只需带着手机,有故障会自动发短信报警。12.1 nagios概述Nagios官方网站的描述:Nag
3、ios is an open source host, service and network monitoring program. Who uses it? Lots of people, including many big companies and organizations:Nagios是一个用来监控主机、服务和网络的开放源码软件,很多大的公司和组织都在使用它。首先,我们来看实际工作中需要监控的对象有哪些?在这里我总结出两种类型的监控对象:网络服务监控及主机资源监控。网络服务监控可包括主机存活检查、web服务监控、ftp服务监控、数据库服务监控、自定义服务监控等;主机资源监控可包括
4、系统负载、当前ip链接数、磁盘空间使用情况、当前进程数以及自定义的资源监控等。其次,我们再来看nagios监控的表现形式。监控的主要目的是当监控的对象发生故障或资源紧张时及时通知相关人员,以便问题得到迅速的处理。追求的效果就是“在老板和客户发现问题之前得到及时、有效的通知”。假定故障通知来自老板,我想大家都不会很愉快的。Nagios为了方便我们的管理工作,提供了至少3种表现形式:1、web方式,即通过浏览器观看被监控的对象;如正常状态下,其状态(status)是以蓝色填充并显示一个OK。2、邮件通知,发生故障时,到达设定重试次数和探测间隔时间后发送邮件给管理员或相关人员,报告问题的大致情况。3
5、、手机短信,这是非常有用和及时的功能了;晚上熟睡中,再也没可能看web页面或查阅邮件,可以一旦发生故障,手机短信却能把你随时唤醒。一般情况下,这3者是同时进行的:上班时间开个浏览器看页面显示、打开邮件程序定时收取邮件、手机24小时在线。最后,我们以一个实际场景来展示nagios的强大功能,希望对大家的系统管理工作有所帮助。12.2 nagios监控场景描述为了描述问题方便,我们假定有5个服务器要监控(web服务器、数据库服务器、邮件服务器、nfs文件共享服务器),需要对几个服务器的服务进行监控,同时监控每个服务器的资源使用情况,包括负载情况、磁盘分区使用情况、总进程数、当前ip连接数这个4个项
6、目(当然你也可以自己写脚本监控更多的资源对象)。这些服务器除了系统管理员而外,还有其他用户(如程序员)对各自的服务器进行维护;当发生故障的时候,维护网站的程序员能收到报警邮件和报警短信,而管理数据库管理员则无需收到这些报警,同时维护程序的用户可以以自己的帐号登陆监控服务器,通过web方式察看自己所管服务器的状态(只能看自己的而看不到别人管辖服务器的状态)。通过上面的描述,我们可以整理出表12-1:机器名称角色可查看状态及接受报警信息的用户所需工具Nagios服务器监控端系统管理员(SA)Apache、nagios、nagios plugin、sendmail、perl等邮件服务器被监控端系统管
7、理员、邮件管理员Nrpe、nagios plugin、自定义脚本等数据库服务器被监控端系统管理员、dbaNrpe、nagios plugin、自定义脚本等Web服务器被监控端系统管理员、webmasterNrpe、nagios plugin、自定义脚本等Nfs共享服务器被监控端系统管理员Nrpe、nagios plugin、自定义脚本等缓存服务器(squid)被监控端系统管理员、webmasterNrpe、nagios plugin、自定义脚本等表12-1 监控场景汇总配置好nagios和被监控机器后,其在浏览器里的基本输出与图12-1类似:图12-1 web方式查看nagios监控状态12.
8、3 Nagios服务器的自我监控实现要实现资源和服务两个方面的监控,需要配置服务器端(nagios server)及被监控端(NRPE-nagios remote plugin executor)。为了能顺利地、有条理的部署nagios监控平台,一个好的工作风格是在nagios server自身实现服务和资源的监控,然后再在其他监控端部署nrpe,从nagios server端用check_nrpe测试通过后,再在nagios server配置文件中逐一增加监控项目。当然如果只是监控服务而不监控主机资源,则被监控端不做任何nrpe的安装。为了方便初学者更容易上手和成功,我们就从简单的步骤开始。
9、 配置邮件发送功能因为报警邮件发送给用户邮箱后,监控系统本身没有必要接受别的邮件服务器发送的邮件,因此只需要使用服务器本身自带的sendmail来发送报警信息即可。用sendmail的另外一个目的就是简便。如果系统是redhat 或 centos ,只需执行 service sendmail start 启动守护进程,然后再用dns服务器给它一个合法的域名(即A记录),马上就可以用mail命令来发送测试邮件到你的某个电子邮箱里了。收到测试邮件,就说明邮件系统配置结束,是不是很容易呢?这里给一个发送邮件的例子: mail -s “This is serys nagios test mail” n
10、ew;$md5-add($souce_content);my $result_conent = uc($md5-hexdigest); sery&Password=(-BVG0&Mobile=$mobile&Content=$content&Keyword=$result_conent;my $result = get $url;if($log_control) my $fh; open($fh, /var/log/sms.log) or die cant open log: $!; print $fh join( , time, $result, n); close $fh;(以上脚本由宇捷
11、提供)说明:1、my $key = Ysdbyhd6T 短信服务商给的验证关键字。2、my $url=”.” 短信服务商给的用户名、密码以及短信服务商的访问接口(url)全包括在这里了。我们把这个文件放在目录 /usr/local/bin/ 下面,把它命名为 sms_send.pl ,用命令 chomod +x /usr/local/bin/sms.pl 给与它执行权限。这个脚本在各种各样的unix、linux下都可以正常工作,nagios报警短信发送就是靠它了。如果读者也打算拿这个脚本发送短信的话,只要改一下key值和url值就可以直接使用。 安装apacheApache应该是我们最常用的部
12、署了,它可以被弄得很复杂,但在nagios 这个平台上,我们只需要简单的功能即可,为了验证用户,我们稍微加一点修改就行了。这样做也是为了体现“越简单越容易的思想”。做得简单,以后重新部署或恢复就越迅速、越没压力。(一) 安装apachetar zxvf httpd-.tar.gzcd httpd-./configure -prefix=/usr/local/apache #仅仅需要这么一个选项makemake install(二) 检查apache是否被正确的安装1、执行 /usr/local/apache/bin/apachectl t 检查apache的配置文件语法是否正确。未经更改的ap
13、ache配置文件语法显然是正确无误的,当我们对配置文件httpd.conf 或其包含的文件作了更改的时候,最好先运行一下这个命令,它的错误输出能迅速定位配置文件哪里出现了错误。2、执行命令行 /usr/local/apache/bin/apachectl start 启动apache守护进程,在别的机器的浏览器里输入这个服务器的ip地址,看是否可以正常浏览apache的默认页面通常是一个“IT works!”。为了方便以后维护apache 更方便些,我们可以修改环境变量文件/etc/profile,在文件的末尾追加行 “export PATH=$PATH:/usr/local/apache/b
14、in “,保存后执行 source /etc/profile 使其修改立即生效,这样我们以后执行apache 启动之类的命令就不必输很长一串路径,直接输入 apachectl start 就可以了。(三)修改apache配置文件httpd.conf 1、修改apache运行用户和组。默认是daemon,需要把它改成nagios。这样它才能有权限访问我们安装的nagios目录,执行相关的cgi命令,如通过浏览器界面关闭nagios、停止某个故障对象发送报警信息等。 2、添加nagios访问目录(nagios 的安装路径/usr/local/nagios),同时使用http用户验证。把下面的内容追
15、加到httpd.conf文件的末尾: ScriptAlias /nagios/cgi-bin /usr/local/nagios/sbin AuthType Basic Options ExecCGI AllowOverride None Order allow,deny Allow from all AuthName Nagios Access AuthUserFile /usr/local/nagios/etc/htpasswd Require valid-user Alias /nagios /usr/local/nagios/share AuthType Basic Options N
16、one AllowOverride None Order allow,deny Allow from all AuthName nagios Access AuthUserFile /usr/local/nagios/etc/htpasswd Require valid-user 照这样一种方式修改配置文件,保证不会把配置文件改得一塌糊涂,我相信大部分初学者都有把文件修改后而不知道文件本身的原貌。到这步配置文件虽然修改好了,但还不能通过语法检查,因为有2个与之相关联的东西还不存在,他们是用户和组nagios及apache的验证用户文件/usr/local/nagios/etc/htpasswd
17、 .在后续操作中完成这任务后,再验证不迟。特别提示:nagios3.2使用php 作为其web解析,因此需要安装php环境。如何知道?打开nagios目录 /usr/local/nagios/share看一眼,就知道了。nagios2版本不是这样,纯html。 部署nagios服务(一) 添加帐户,以用来运行Nagios。当然也可以用root运行,但出于安全考虑而使用普通帐号来运行,并且不给这个账号分配shell登录权限。1、 linux增加帐号的操作为 useradd nagios s /sbin/nologin 添加帐号就自动生成同名组 nagios。2、 freebsd增加帐号的操作为
18、pw groupadd nagios ; pw useradd nagios g nagios s /sbin/nologin.注意:不要给nagios用户设置密码。(二) 安装nagios软件tar zxvf cd nagios-2.9./configure prefix=/usr/local/nagios -with-nagios-user=nagios -with-nagios-group=nagios make allmake install 执行完这个步骤后,程序会提示依次运行 make install-init , make install-commandmode ,make in
19、stall-config 这几个命令。我们选取其中的两个来执行:make install-commandmodemake install-config 跟一般的gnu源码软件安装相比,nagios的安装多了几个步骤(一般的软件运行到make install就算安装完了)。当然也可以连这两步都不执行,用手工赋予目录或文件权限,再手动创建配置文件,其效果完全相同。安装完nagios后,我们可以在安装目录/usr/local/nagios下找到自动生成的各个子目录,如表12-2所示: binNagios执行程序所在目录,这个目录只有一个文件nagiosetcNagios配置文件位置,初始安装完后,只
20、有几个*.cfg-sample文件sbinNagios Cgi文件所在目录,也就是执行外部命令所需文件所在的目录shareNagios网页文件所在的目录varNagios日志文件、spid 等文件所在的目录表12-2 nagios目录结构(三) 安装nagios插件没有插件,nagios将什么作用也没有,插件也是nagios扩展功能的强大武器,除了下载常用的插件外,我们还可以根据实际要求编写自己的插件。Nagios的插件nagios-plugins-1.4.9在上可以找到,接着我们用wget下载它。注意:插件与nagios之间的版本关联不大,不一定非得用nagios-plugins-1.4.9
21、这个版本。下载完成后,安装它是很简单的:先执行配置 ./configure prefix=/usr/local/nagios ,接着编译安装 make ; make install即可。这里需要说明一下的是在配置过程指定的安装路径是/usr/local/nagios,而不是/usr/local/nagios-plus,安装完成后,将在目录/usr/local/nagios生成子目录libexec(里面有很多文件),这正是nagios所需要的。如图12-2所示:图12-2 nagios插件文件列表(四) 配置nagios配置是nagios最复杂的部分,让我们耐心一些,逐个处理,配置成功也不是什么
22、难事。刚安装完成的nagios,其配置文件的目录是/usr/local/nagios/etc,图12-3是其etc目录的文件: 图12-3 etc目录文件列表先把这些文件改名,如 cgi.cfg-sample改成cgi.cfg ,用命令cp cgi.cfg-sample cgi.cfg 依样把余下的几个*.cfg-sample都复制成*.cfg文件。从nagios2.6版开始,不用修改配置文件localhost.cfg就可以直接运行./bin/nagios v nagios.cfg验证程序是否能正常运行(nagios2.5及以前版本的最小运行的配置文件是minimal.cfg,但需要修改这个文
23、件多处才能验证成功)。当然,我们不能指望这个最小的配置文件能够满足实际的需求,因此,需要对现有的配置文件进行修改,其次增加自定义的一些配置文件。通过复制这些自带的模板文件,我们可以得出几个主要的配置文件,我们可以把它归类为表12-3的形式:类型名包含文件作用备注主配置文件nagios.cfg定义和控制nagios行为需要修改Cgi配置文件cgi.cfg浏览器执行诸如重启nagios服务等修要修改宏定义文件Resource.cfg定义插件路径不需修改命令定义文件Commands.cfg定义怎么发送短信、邮件等需要修改其他文件contactgroups.cfg,contacts.cfg,hostg
24、roups.cfg,hosts.cfg,services.cfg监控对象配置文件,如主机配置文件、联系人配置文件等主配置文件包含,手动创建表12-3 配置文件归类依照这个表格,我们逐一配置之。1、修改主配置文件nagios.cfg.基于方便维护的原则,把各个配置目标单独放在文件中,如联系人信息在contacts.cfg中定义。Nagios.cfg文件比较长,我只把修改过的内容贴出来: #注释或删掉这行#cfg_file=/usr/local/nagios/etc/localhost.cfg #主机配置文件路径cfg_file=/usr/local/nagios/etc/hosts.cfg#/主
25、机组配置文件路径cfg_file=/usr/local/nagios/etc/hostgroups.cfg #联系人配置文件路径 cfg_file=/usr/local/nagios/etc/contacts.cfg #联系组配置文件路径 cfg_file=/usr/local/nagios/etc/contactgroups.cfg #服务配置文件路径 cfg_file=/usr/local/nagios/etc/services.cfg #监视时段配置文件路径 cfg_file=/usr/local/nagios/etc/timeperiods.cfg #在web界面下重启nagios、停
26、止主机/服务检查等操作,.默认值是0. check_external_commands=1 #根据自己的情况定这个命令检查时间间隔.默认值是1秒.command_check_interval=10s 2、修改cgi配置文件cgi.cfg.跟修改nagios.cfg一样,只贴出被修改之处: #如有多个用户,中间用逗号隔开 authorized_for_system_information=sery authorized_for_configuration_information=sery authorized_for_system_commands=sery authorized_for_all
27、_services=sery authorized_for_all_hosts=nagiosadmin,sery authorized_for_all_service_commands=sery authorized_for_all_host_commands=sery在这里指定的用户”sery”可以通过浏览器操纵nagios服务的关闭、重启等各种操作。3、 修改commands.cfg配置文件 修改notify-host-by-email host-notify-by-email 修改notify-service-by-email service-notify-by-email 新增以下内容
28、: # check_nrpe command definitiondefine command command_name check_nrpe command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$ # host-notify-by-sms command definition define command command_name host-notify-by-sms command_line /usr/local/bin/sms.pl $CONTACTPAGER$ $NOTIFICATIONTYPE$ alert - Host
29、$HOSTNAME$ is $HOSTSTATE$ # service-notify-by-sms command definition define command command_name service-notify-by-sms command_line /usr/local/bin/sms.pl $CONTACTPAGER$ $NOTIFICATIONTYPE$: $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ 第而个块定义主机报警的内容,即主机发生死机、恢复等情况发送手机短信报警,其接受者和发送内容由“$.$”定义的宏来决定。第三个块定义服务
30、报警内容,即监控的服务或监控的主机资源发生故障时发送手机报警短信。Nagios规定,如果探测到被监控的主机停机或不可达,它就不再探测这个停机主机上的服务。通俗地一点理解:主机都停了,当然服务也跟着停了!另外一个需要注意的地方是命令行(command_line)路径一定要用全路径,这里调用的命令就是我们在全面编写的那个脚本sms.pl。4、新增其他配置文件在主配置文件nagios.cfg中,我们注释了行 cfg_file=/usr/local/nagios/etc/localhost.cfg ,而使用若干单独的配置文件来定义各种对象,这样可以获得维护方便、书写规范等诸多方面的好处。这些单独的配置
31、文件不是自然存在的,我们需要手工创建并添加内容。当然,一开始我们并不是很清楚怎么往这些文件里添加内容,只好回过头去看官方文档,天啦,太分散了,尽然不知道怎么着手了!怎么办?打开文件localhost.cfg-sample,心里基本上就有数了:无非是把这个文件拆分开来,形成多个文件嘛!下面我按新添一个主机进入监控的较优方式添加这些配置文件(当然也可以有其它的顺序,这并不影响监控的效果)。好了,我们先把nagios服务器本身给监控上,这些监控包括:主机存活、web服务监控、磁盘空间监控、负载监控、进程数监控、ip连接数监控。(1)、定义主机配置文件hosts.cfg define host hos
32、t_name nagios-server alias nagios server address contact_groups sagroup check_command check-host-alive max_check_attempts 5 notification_interval 10 notification_period 24x7 notification_options d,u,r 说明: 联系组contact_group没有建立,需在后面的步骤完成。 主机检查命令行一般选择检查主机存活check-host-alive。 最大尝试次数最好不要设置为“1”,一般3-4次比较合理。
33、 通知时间间隔notification_interval 根据自己实际情况设定,它的单位是分钟。 通知选项notification_options 几个值的意思是 d-down,u-unreacheable,r-recovery.(2)、定义主机组配置文件hostgroups.cfg define hostgroup hostgroup_name sa-servers alias sa servers members nagios-server 说明: 这个配置文件不是必须的,为了在浏览器里方便归类及察看状态,可以添加这个文件。 主机组的成员必须是在hosts.cfg里已经定义了的,多个主机成
34、员间用逗号分隔。(3)、定义联系人配置文件contacts.cfg define contact contact_name sery alias system administrator service_notification_period 24x7 host_notification_period 24x7 service_notification_options w,u,c,r host_notification_options d,u,r service_notification_commands service-notify-by-email,service-notify-by-sm
35、s host_notification_commands host-notify-by-email,host-notify-by-sms 说明: 服务通知选项 w-warning,u-unknown,c-critical,r-recovery. 主机通知选项 d-down,u-unreacheable,r-recovery。 服务通知命令行及服务通知命令行在配置文件commands.cfg中得到定义,如果有报警发生,则邮件和手机短信一起发送给相关人,即下两行定义的email,pager. 收报警信息的邮件和手机,一个人如有2个手机,手机号之间有逗号分隔,邮件也如此。 如果这里定义的用户需要通过
36、浏览器察看他所负责的服务器监控状态的话,还需要 用apache的工具htpasswd增加同名帐号。(4)、定义联系组配置文件contactgroups.cfg define contactgroup contactgroup_name sagroup alias system administrator group members sery 说明: 当有多个人行使同样的职责时,定义成组是非常有用的。 多个成员之间用逗号分隔。 成员必须在联系人配置文件(contacts.cfg)已经定义。(5)、定义服务配置文件 services.cfg define service host_name nag
37、ios-server service_description check-host-alive check_period 24x7 max_check_attempts 4 normal_check_interval 3 retry_check_interval 2 contact_groups sagroup notification_interval 10 notification_period 24x7 notification_options w,u,c,r check_command check-host-alive define service host_name nagios-s
38、erver service_description check_tcp 80 check_period 24x7 max_check_attempts 4 normal_check_interval 3 retry_check_interval 2 contact_groups sagroup notification_interval 10 notification_period 24x7 notification_options w,u,c,r check_command check_tcp!80 define service host_name nagios-server service
39、_description check-disk check_command check_nrpe!check_df max_check_attempts 4 normal_check_interval 3 retry_check_interval 2 check_period 24x7 notification_interval 10 notification_period 24x7 notification_options w,u,c,r contact_groups sagroup define service host_name nagios-server service_descrip
40、tion check-load check_command check_nrpe!check_load max_check_attempts 4 normal_check_interval 3 retry_check_interval 2 check_period 24x7 notification_interval 10 notification_period 24x7 notification_options w,u,c,r contact_groups sagroup define service host_name nagios-server service_description t
41、otal_procs check_command check_nrpe!check_total_procs max_check_attempts 4 normal_check_interval 3 retry_check_interval 2 check_period 24x7 notification_interval 10 notification_period 24x7 notification_options w,u,c,r contact_groups sagroup 说明: 主机名 host_name,必须是主机配置文件hosts.cfg中定义的主机。 检查用的命令 check_c
42、ommand,在命令配置文件中定义或在nrpe配置文件中有定义。 最大重试次数 max_check_attempts 一般设置为3-4次比较好,这样不会因为网络闪断片刻而发生误报。 检查间隔和重试检查间隔的单位是分钟。 通知间隔指探测到故障以后,每隔多少时间发送一次报警信息。它的单位是分钟。 通知选项跟服务定义配置文件相同。 联系组contact_groups由配置文件contactgroup.cfg定义。 检查主机资源需要安装和配置nrpe,这个过程在后面完成。 部署NRPE(一)安装nrpe tar zxvf nrpe-.tar.gz cd nrpe-./configure prefix=
43、/usr/local/nrpe make make install注:如果在其他被监控机安装nrpe,需要添加系统用户nagios.(二)复制文件安装完nrpe后,在安装目录/usr/local/nrpe/libexec只有一个文件check_nrpe,而在nagios插件目录,却缺少这个文件,因此需要把这个文件复制到nagios插件目录;同样,因为nrpe需要调用的诸如check_disk等插件在自己的目录没有,可是这些文件确是nagios插件所存在的,所以也需要从nagios目录复制一份过来。我们把复制过程列举出来: cp /usr/local/nrpe/libexec/check_nrp
44、e /usr/local/nagios/libexec cp /usr/local/nagios/libexec/check_disk /usr/local/nrpe/libexec cp /usr/local/nagios/libexec/check_load /usr/local/nrpe/libexec cp /usr/local/nagios/libexec/check_ping /usr/local/nrpe/libexec cp /usr/local/nagios/libexec/check_procs /usr/local/nrpe/libexec(三)配置nrpe安装完nrpe
45、以后,在安装目录并没有可用的配置文件,但我们只需把解压目录的样例文件复制到安装目录,然后修改这个文件.1、 mkdir /usr/local/nrpe/etc2、 cp sample-config/nrpe.cfg /usr/local/nrpe/etc3、 修改配置文件/usr/local/nrpe/etc/nrpe.cfg.该过的地方用粗体显示: pid_file=/var/run/nrpe.pid server_port=5666 #以单独的守护进程运行 nrpe_user=nagios nrpe_group=nagios dont_blame_nrpe=0 debug=0 comman
46、d_timeout=60 connection_timeout=300 # The following examples use hardcoded command arguments. commandcheck_users=/usr/local/nrpe/libexec/check_users -w 5 -c 10 commandcheck_load=/usr/local/nrpe/libexec/check_load -w 15,10,5 -c 30,25,20 #commandcheck_hda1=/usr/local/nrpe/libexec/check_disk -w 20 -c 1
47、0 -p /dev/hda1 commandcheck_df=/usr/local/nrpe/libexec/check_disk -w 20 -c 10 commandcheck_zombie_procs=/usr/local/nrpe/libexec/check_procs -w 5 -c 10 -s Z commandcheck_total_procs=/usr/local/nrpe/libexec/check_procs -w 150 -c 200 commandcheck_ips=/usr/local/nrpe/libexec/ip_conn.sh 8000 10000说明: 必须允
48、许nagios监控服务器可以访问。 commandcheck_df=/usr/local/nrpe/libexec/check_disk -w 20 -c 10 检查整个服务器的磁盘利用率;如果是freebsd系统,因为其/dev分区为100%,需要排除这个分区,因此其命令行应该为 “commandcheck_df=/usr/local/nrpe/libexec/check_disk -x /dev -w 20 -c 10”。 commandcheck_ips=/usr/local/nrpe/libexec/ip_conn.sh 8000 10000 ip连接数,ip_conn.sh脚本需要自
49、己写,下面给出脚本的内容:#!/bin/sh#if $# -ne 2 #then# echo Usage:$0 -w num1 -c num2#exit 3#fiip_conns=netstat -an | grep tcp | grep EST | wc -l if $ip_conns -lt $1 then echo OK -connect counts is $ip_conns exit 0 fi if $ip_conns -gt $1 -a $ip_conns -lt $2 then echo Warning -connect counts is $ip_conns exit 1 fi if $ip_conns -gt $2 then echo Critical -connect counts is $ip_conns exit 2 fi 我在nrpe配置文件nrpe.cfg把脚本所需的两个参数写上了,因此这个脚本就不需判 断两个参数输入值的情况。只要当前ip连接数大于8000,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 毒蛇护理常规及个案护理
- 医学模拟教育发展史
- 安保勤务培训
- 2025年网络维护员试题
- 2025年普通心理学练习试题
- 教师教学工作总结中学教师教学工作总结模版
- 婴儿肢端脓疱病的临床护理
- mcn公司 合作协议
- 护理安全与护理服务
- 门诊替诊方案流程图解
- 文化艺术机构学术委员会的职责与影响
- 考研英语必背5500词汇
- 消防安全知识培训(完整版)
- 2025年底帮安全鞋项目可行性研究报告
- 《桃花源记》比较阅读91篇(历年中考语文文言文阅读试题汇编)(含答案与翻译)(截至2022年)
- 滩涂植被恢复策略-深度研究
- 2025福建福州市工会专干招聘30名历年高频重点提升(共500题)附带答案详解
- 国开2024年秋《心理健康教育》形考任务1-9
- 2025年水发集团有限公司招聘笔试参考题库含答案解析
- 信息安全及保密意识培训
- 集成电路布图设计专有权转让合同
评论
0/150
提交评论