系统操作和维护
Nagios是一款开源的计算机系统和网络监控工具,可以有效监控windows、linux和Uninx的主机状态,交换机和路由器、打印机等网络设置等。当系统或服务状态异常时,会第一时间发送邮件或短信报警通知运维人员,状态恢复后发送正常邮件或短信报警通知。
Nagios Core是一个开源系统,Nagios XI是收费的。我们在这里安装前者。
首先,Nagios结构描述
在结构上,Nagios可以分为两部分:核心和插件。Nagios的核心部分只提供了很少的监控功能,所以要构建一个完善的IT监控管理系统,用户需要在Nagios服务器上安装相应的插件。插件可以从Nagios官网下载http://www.nagios.org/,也可以根据实际需求自己编写插件。
Nagios可以实现的特性:
监控网络服务(SMTP、POP3、HTTP、FTP、PING等。);
监控本地和远程主机资源(CPU负载、磁盘利用率、进程等。);
允许用户自己编写插件来监控特定的服务,可以轻松扩展自己服务的检测方法,支持多种开发语言(Shell、Perl、Python、PHP等。).
具备定义网络层次结构的能力,使用父主机定义表达网络主机之间的关系,可用于发现和明确主机的停机或不可达状态;
当服务或主机出现问题并得到解决时,向联系人发送警报(通过电子邮件、短信、用户自定义方式);
可以支持并实现主机的冗余监控;
WEB界面可用于查看当前网络状态、通知和故障历史、日志文件等。
二。怎么会。纳吉奥斯工厂
Nagiosq的功能是监控服务和主机,但它本身并不包括这部分功能。所有的监控和检测功能都是通过各种插件来完成的。
启动Nagios后,他会定期自动调用插件检查服务器的状态。同时,Nagios会维护一个队列,插件返回的所有状态信息都会进入这个队列。Nagios每次都会从队列头读取信息,进行处理,并通过web results显示状态结果。
Nagios提供了很多插件,可以方便地用来监控很多服务状态。安装后,Nagios可以使用的所有插件都放在Nagios主目录的/libexec中,比如check_disk是检查磁盘空间的插件,check_load是检查CPU负载的插件等等。每个插件都可以通过运行来检查其用法和功能。/check _ XXXh;
Nagios可以识别四种状态返回信息,即0(OK)表示状态正常/绿色,1(WARNING)表示出现警告/X颜色,2(CRITTCAL)表示出现非常严重的错误/红色,3(UNKNOWN)表示未知错误和暗X颜色。Nagios根据插件返回的值判断被监控对象的状态,并通过web显示出来,为管理员提供及时的故障检测。
除了报警功能之外,如果监控系统发现问题不能报警,那就没有意义了,所以报警也是nagios非常重要的功能之一。然而,同样的,Nagios本身也没有报警代码,甚至没有插件,而是交给用户或者其他相关开源项目组。
Nagios安装是指基础平台即Nagios软件包的安装,它是监控系统的框架,是所有监控的基础。
Nagios通过NRPE远程管理服务。
Nagios执行安装在其中的check_nrpe插件,并告诉check_nrpe要检测哪些服务。
通过SSL,check_nrpe连接远程机器上的NRPE守护进程。
NRPE运行各种本地插件来检测本地服务和状态。
最后,NRPE将检测结果发送给主机NRPE检查,NRPE检查将结果发送给Nagios状态队列。
Nagios依次读取队列中的信息,然后显示结果。
二。Nagios部署
注意:默认情况下,Nagios没有数据库,所以可以安装NDOUtils将Nagios数据保存在mysql数据库中。
1.环境准备
要设置或停止防火墙:
【root@localhost?~]#?systemctl?停下来?防火墙d .服务
【root@localhost?~]#?systemctl?禁用?防火墙d .服务
关闭selinux:
临时关闭:
【root@localhost?~]#?setenforce?0
永久关闭(修改配置文件):
【root@localhost?~]#?vi?/etc/selinux/config
改成SELINUX=禁用
【root@localhost?~]#?rpm?-qa?httpd*
【root@localhost?~]#?rpm?-e?nodeps?包名
有多个httpd*,用脚本删除为了什么?名字?在?` rpm?-qa?httpd * `;做什么?rpm?-e?nodeps?$ name完成的
【root@localhost?~]#?rpm?-呃?https://dl。fedora项目。org/pub/epel/epel-release-最新-7。没有拱门。每分钟转数
【root@localhost?~]#?好吃吗?安装?wget?lrzsz?vim?lynx?lsof?netstat-工具?拉开拉链?表示"有…的"
时区设置:
【root@localhost?~]时间日期细胞毒性T淋巴细胞(cytotoxic lymphocyte的缩写)
【root@localhost?~]timedatectl?列表-时区#该命令列出了所有的时区
【root@localhost?~]timedatectl?设置时区?亚洲/上海?#该命令把时区设置为上海
时间同步:
【root@localhost?~]#?ntpdate?time.nist.gov?#如果没有妙的安装此命令
【root@localhost?~]#?/usr/sbin/ntpdate?time.nist.gov
【root@localhost?~]#?crontab?-e
*/10****?/usr/sbin/ntpdate?time.nist.gov?/dev/null?21
2、源码安装纳吉奥斯核心(主程序)
参考:https://支持。纳吉奥斯。com/kb/article/Nagios-core-installing-Nagios-core-from-source-96。html # _ ga=2.1304440076。2034667865
【root@localhost?~]#?好吃吗?安装?-是吗?gcc?glibc?glibc-common?wget?拉开拉链?httpd?php?gd?php-gd?gd-devel?perl?后缀
【root@localhost?~]#?cd?/tmp
【root@localhost?tmp]#?wget?-哦?nagioscore.tar.gz?https://github。com/Nagios enterprises/Nagios core/archive/Nagios-4。4 .3 .焦油。地面零点
【root@localhost?tmp]#?焦油?zxvf?nagioscore.tar.gz
【root@localhost?tmp]#?cd?/tmp/nagioscore-nagios-4.4.3/
【root@localhost?nagioscore-nagios-4.4.3]#?/配置
【root@localhost?nagioscore-nagios-4.4.3]#?制造?全部
【root@localhost?nagioscore-nagios-4.4.3]#?制造?安装-组-用户
【root@localhost?nagioscore-nagios-4.4.3]#?usermod?-a?-G?纳吉奥斯?街头流氓
#安装主程序
【root@localhost?nagioscore-nagios-4.4.3]#?制造?安装
【root@localhost?nagioscore-nagios-4.4.3]#?制造?install-daemoninit
【root@localhost?nagioscore-nagios-4.4.3]#?systemctl?启用?httpd.service
#配置目录权限
【root@localhost?nagioscore-nagios-4.4.3]#?制造?安装命令模式
#安装示例配置文件
【root@localhost?nagioscore-nagios-4.4.3]#?制造?安装配置
#安装纳吉奥斯的网接口,会在/etc/httpd/conf.d目录中创建nagios.conf文件
【root@localhost?nagioscore-nagios-4.4.3]#?制造?install-webconf
执行上述操作后,会在/usr/local/nagios目录下产生如下目录:
宾:纳吉奥斯执行程序所在的目录,纳吉奥斯文件即为主程序。
etc:nagios配置文件目录,当进行安装配置完以后等等下面就会出现默认的配置文件。
sbin:nagios CGI文件所在目录,这里存放的是一些外部命令执行程序。
分享:nagios网页文件目录,存放一些超文本标记语言文件。
var:nagios日志文件、pid等文件目录。
Libexec:系统默认插件的存储位置
修改纳吉奥斯警告信息的邮件地址
【root@localhost?~]#?vi?/usr/local/Nagios/etc/objects/contacts。稳频发电机(发生器)(constant frequency generator的缩写)
邮件?442102293@qq.com?*****?改变?这个?去哪?你的?邮件?地址?******
nagiosadmin设置密码
root@localhost?~]#?htpasswd?-c?/usr/local/Nagios/etc/htpasswd。用户?nagiosadmin
【root@localhost?~]#?systemctl?开始?httpd.service
【root@localhost?~]#?systemctl?开始?nagios.service
http://192.168.146.128/nagios
不使用默认nagiosadmin账号,新增gxm账号并配置权限,如果不配置点击主机会报红色错误。
【root@localhost?~]#?htpasswd?-公元前?/usr/local/Nagios/etc/htpasswd。用户?gxm?123456
【root@localhost?~]#?cd?/usr/local/nagios/etc/
【root@localhost?etc]#?sed?-我?\ \ \ s # Nagios admin # gxm # g \ \ \ 'cgi.cfg
【root@localhost?etc]#?grep?gxm?cgi.cfg
授权系统信息=gxm
授权配置信息=gxm
授权系统命令=gxm
authorized _ for _ all _ services=gxm
authorized_for_all_hosts=gxm
授权_for_all_service_commands=gxm
authorized _ for _ all _ host _ commands=gxm
【root@localhost?etc]#?systemctl?restarthttpd.service
#检查语法错误
【root@localhost?etc]#?/usr/local/nagios/bin/nagios?-v?/usr/local/Nagios/etc/Nagios。稳频发电机(发生器)(constant frequency generator的缩写)
纳吉奥斯?核心?4.4.3
版权?(三)?2009年至今?纳吉奥斯?核心?发展?团队?然后呢。社区?贡献者
版权?(三)?1999-2009?伊森。加尔斯塔德
最后?修改:2019-01-15
执照:(同克/升)克/升
网址:https://www.nagios.org
读书?配置?数据.
?读书?主要?配置?文件?行.
?读书?对象?配置?文件?行.
跑步?飞行前?检查?开?配置?数据.
检查?目标.
检查过了?8?服务。
检查过了?1?主持人。
检查过了?1?主持人?团体。
检查过了?0?服务?团体。
检查过了?1?联系人。
检查过了?1?联系?团体。
检查过了?24?命令。
检查过了?5?时间?月经。
检查过了?0?主持人?升级。
检查过了?0?服务?升级。
检查?为了什么?圆形?小路.
检查过了?1?主机
检查过了?0?服务?属国
检查过了?0?主持人?属国
检查过了?5?时间周期
检查?全球?事件?经理人.
检查?强迫症?强迫症?处理器?命令.
检查?杂项?设置.
总计?警告:0
总计?错误:0
事情?看?好吗?-?没有吗?认真的?问题?曾经是。检测到?期间?那个?飞行前?支票
3、安装纳吉奥斯插件(监控功能通过插件完成)
上述安装的纳吉奥斯主程序只是一个控制中心,而能够起到服务监测和系统监测等功能的是众多纳吉奥斯的插件,没有插件的纳吉奥斯系统其实只是一个空壳。因此在安装了纳吉奥斯平台之后我们还需要安装插件。
【root@localhost?~]#?好吃吗?安装?-是吗?gcc?glibc?glibc-common?制造?gettext?automake?autoconf?wget?openssl-devel?net-snmp?net-snmp-utils?epel-释放
【root@localhost?~]#?好吃吗?安装?-是吗?网络简单网络管理协议(Simple Network Management Protocol)
或者
【root@localhost?~]#?cd?/tmp
【root@localhost?~]#?wget?https://dl。fedora项目。org/pub/epel/epel-release-最新-7。没有拱门。每分钟转数
【root@localhost?~]#?rpm?-ihv?epel-发布-最新-7。没有拱门。每分钟转数
【root@localhost?~]#?订阅管理器?回购?-enable=rhel-7-server-optional-rpm
【root@localhost?~]#?好吃吗?安装?-是吗?gcc?glibc?glibc-common?制造?gettext?automake?autoconf?wget?openssl-devel?net-snmp?net-snmp-utils
【root@localhost?~]#?好吃吗?安装?-是吗?网络简单网络管理协议(Simple Network Management Protocol)
【root@localhost?~]#?cd?/tmp
【root@localhost?~]#?wget?-无支票证明?-哦?nagios-plugins.tar.gz?https://github。com/Nagios-plugins/Nagios-plugins/archive/release-2。2 .1 .焦油。地面零点
【root@localhost?~]#?焦油?zxvf?nagios-plugins.tar.gz
【root@localhost?~]#?cd?/tmp/Nagios-插件-版本2.2.1/
【root@localhost?nagios-plugins-release-2.2.1]#?/工具/设置
【root@localhost?nagios-plugins-release-2.2.1]#?/配置
【root@localhost?nagios-plugins-release-2.2.1]#?制造
【root@localhost?nagios-plugins-release-2.2.1]#?制造?安装
【root@localhost?nagios-plugins-release-2.2.1]#?systemctl?开始?nagios.service
【root@localhost?nagios-plugins-release-2.2.1]#?systemctl?停下来?nagios.service
【root@localhost?nagios-plugins-release-2.2.1]#?systemctl?重启?nagios.service
【root@localhost?nagios-plugins-release-2.2.1]#?systemctl?地位?nagios.service
【root@localhost?libexec]#?ll?/usr/local/nagios/libexec
-rwxr-xr-x?1?根?根?210656?5月31?11:54?检查_apt
-rwxr-xr-x?1?根?根?2354?5月31?11:54?检查微风
-rwxr-xr-x?1?根?根?214653?5月31?11:54?通过嘘进行检查
lrwxrwxrwx?1?根?root9?5月31?11:54?check_clamd?-?检查_tcp
-rwxr-xr-x?1?根?根?163022?5月31?11:54?检查_聚类
-r-sr-xr-x?1?根?根?211527?5月31?11:54?检查_dhcp
-rwxr-xr-x?1?根?根?227293?5月31?11:54?检查磁盘
-rwxr-xr-x?1?根?根?9477?5月31?11:54?支票_磁盘_中小企业
-rwxr-xr-x?1?根?根?127110?5月31?11:54?检查_虚拟
-rwxr-xr-x?1?根?根?3868?5月31?11:54?检查文件年龄
-rwxr-xr-x?1?根?根?6512?5月31?11:54?check_flexlm
lrwxrwxrwx?1?根?root9?5月31?11:54?check_ftp?-?检查_tcp
-rwxr-xr-x?1?根?根?209501?5月31?11:54?check_hpjd
-rwxr-xr-x?1?根?根?375004?5月31?11:54?check_http
-r-sr-xr-x?1?根?根?227225?5月31?11:54?检查_icmp
-rwxr-xr-x?1?根?根?169900?5月31?11:54?检查_ ide _智能
-rwxr-xr-x?1?根?root15283?5月31?11:54?检查_ifoperstatus
-rwxr-xr-x?1?根?root13435?5月31?11:54?检查_ifstatus
lrwxrwxrwx?1?根?root9?5月31?11:54?check_imap?-?检查_tcp
-rwxr-xr-x?1?根?根?6992?5月31?11:54?check_ircd
lrwxrwxrwx?1?根?root9?5月31?11:54?check_jabber?-?检查_tcp
[root@localhost?nrpe-nrpe-3.2.1]#?/usr/local/nagios/libexec/check_nrpe?-H?127.0.0.1?-c?check_load
WARNING?-?load?average:0.06,0.06,0.09|load1=0.060;0.150;0.300;0;load5=0.060;0.100;0.250;0;load15=0.090;0.050;0.200;0;
[root@localhost?~]#?netstat?-tnlp
Active?Internet?connections?(only?servers)
Proto?Recv-Q?Send-Q?Local?Address?Foreign?Address?State?PID/Program?name
tcp00?0.0.0.0:220.0.0.0:*?LISTEN1062/sshd?
tcp00?127.0.0.1:250.0.0.0:*?LISTEN1372/master?
tcp00?0.0.0.0:56660.0.0.0:*?LISTEN60275/nrpe
tcp6?00?80?*LISTEN57918/httpd?
tcp6?00?22?*LISTEN1062/sshd?
tcp6?00?1:25:*LISTEN1372/master?
tcp6?00?5666?*LISTEN60275/nrpe
5、安装PNP插件(监控功能通过插件完成)
可参考:https://www.cnblogs.com/caoguo/p/5022230.html
[root@localhost?~]#?yum?-y?install?rrdtool?librrds-perl?perl-rrdtool?-y
[root@localhost?~]#?tar?zxvf?pnp4nagios-0.6.26.tar.gz
[root@localhost?~]#?cd?pnp4nagios-0.6.26
[root@localhost?pnp4nagios-0.6.26]#?/configure?--with-nagios-user=nagios?--with-nagios-group=nagios
[root@localhost?pnp4nagios-0.6.26]#?make?all
[root@localhost?pnp4nagios-0.6.26]#?make?install
[root@localhost?pnp4nagios-0.6.26]#?make?install-webconf
[root@localhost?pnp4nagios-0.6.26]#?make?install-config
[root@localhost?pnp4nagios-0.6.26]#?make?install-init
[root@localhost?pnp4nagios-0.6.26]#?cd?/sample-config
[root@localhost?pnp4nagios-0.6.26]#?make?install-webconf
配置pnp4nagios
[root@localhost?pnp4nagios-0.6.26]#?cd?/usr/local/pnp4nagios/etc/
[root@localhost?etc]#?mv?misccommands.cfg-sample?misccommands.cfg
[root@localhost?etc]#?mv?rra.cfg-sample?rra.cfg
[root@localhost?etc]#?mv?nagios.cfg-sample?nagios.cfg
[root@localhost?etc]#?cd?pages/
[root@localhost?pages]#?mv?web_traffic.cfg-sample?web_traffic.cfg
[root@localhost?pages]#?cd?/check_commands/
[root@localhost?check_commands]#?mv?check_all_local_disks.cfg-sample?check_all_local_disks.cfg
[root@localhost?check_commands]#?mv?check_nrpe.cfg-sample?check_nrpe.cfg
[root@localhost?check_commands]#?mv?check_nwstat.cfg-sample?check_nwstat.cfg
[root@localhost?check_commands]#?/etc/init.d/npcd?start
[root@localhost?check_commands]#?chkconfig?npcd?on
配置Nagios数据输出接口(以BULK模式运行)详情参考官网https://docs.pnp4nagios.org/pnp-0.6/config#bulk_mode:
[root@localhost?~]#?vi?/usr/local/nagios/etc/nagios.cfg
process_performance_data=1?#默认为0,修改为1
并在该文件中添加下面的内容
#
#?service?performance?data
#
service_perfdata_file=/usr/local/pnp4nagios/var/service-perfdata
service_perfdata_file_template=DATATYPE:SERVICEPERFDATA\\\\tTIMET:$TIMET$\\\\tHOSTNAME:$HOSTNAME$\\\\tSERVICEDESC:$SERVICEDESC$\\\\tSERVICEPERFDATA:$SERVICEPERFDATA$\\\\tSERVICECHECKCOMMAND:$SERVICECHECKCOMMAND$\\\\tHOSTSTATE:$HOSTSTATE$\\\\tHOSTSTATETYPE:$HOSTSTATETYPE$\\\\tSERVICESTATE:$SERVICESTATE$\\\\tSERVICESTATETYPE:$SERVICESTATETYPE$
service_perfdata_file_mode=a
service_perfdata_file_processing_interval=15
service_perfdata_file_processing_command=process-service-perfdata-file
#
#?host?performance?data?starting?with?Nagios?3.0
#
host_perfdata_file=/usr/local/pnp4nagios/var/host-perfdata
host_perfdata_file_template=DATATYPE:HOSTPERFDATA\\\\tTIMET:$TIMET$\\\\tHOSTNAME:$HOSTNAME$\\\\tHOSTPERFDATA:$HOSTPERFDATA$\\\\tHOSTCHECKCOMMAND:$HOSTCHECKCOMMAND$\\\\tHOSTSTATE:$HOSTSTATE$\\\\tHOSTSTATETYPE:$HOSTSTATETYPE$
host_perfdata_file_mode=a
host_perfdata_file_processing_interval=15
host_perfdata_file_processing_command=process-host-perfdata-file
配置command.cfg:
[root@localhost?~]#?vi?/usr/local/nagios/etc/objects/commands.cfg
在该文件中添加下面的内容
define?command{
?command_nameprocess-service-perfdata-file
?command_line/usr/local/pnp4nagios/libexec/process_perfdata.pl?--bulk=/usr/local/pnp4nagios/var/service-perfdata
}
define?command{
?command_nameprocess-host-perfdata-file
?command_line/usr/local/pnp4nagios/libexec/process_perfdata.pl?--bulk=/usr/local/pnp4nagios/var/host-perfdata
}
在模板配置文件中添加图表图标模板:
[root@localhost?~]#?vi?/usr/local/nagios/etc/objects/templates.cfg
在该文件中添加下面的内容
define?host?{
?name?host-pnp
?action_url?/pnp4nagios/index.php/graph?host=$HOSTNAME$srv=_HOST_
?register?0
}
define?service?{
name?service-pnp
action_url?/pnp4nagios/index.php/graph?host=$HOSTNAME$srv=$SERVICEDESC$
?register?0
}
在监控主机和服务中调用图表模板(在主机和服务后面添加新的模板):
[root@localhost ~]# vi /usr/local/nagios/etc/objects/localhost.cfg
按下面的内容修改(不是添加)该文件
define?host{
use?linux-server,host-pnp
host_name?localhost
alias?localhost
address?127.0.0.1
}
define?service{
uselocal-service,service-pnp
host_name?localhost
service_description?PING
check_command?check_ping!100.0,20%!500.0,60%
}
define?service{
uselocal-service,service-pnp
host_name?localhost
service_description?Root?Partition
check_command?check_local_disk!20%!10%!/
}
重启nagios和apache:
[root@localhost?~]#?systemctl?restart?nagios.service
[root@localhost?~]#?systemctl?restart?httpd.service
访问nagios界面即可看到图表小图标:
要全绿色,不绿色就按照提示解决。
[root@localhost?check_commands]#?mv?/usr/local/pnp4nagios/share/install.php?/tmp/
全绿色后刷新,正常如下:
监控本机
==============================================================================
[root@localhost?~]#?cd?/usr/local/nagios/etc/objects
[root@localhost?~]#?vim?localhost.cfg
define?host{
?use?linux-server
?host_name?localhost
?alias?localhost
?address?127.0.0.1
?}
#?Define?an?optional?hostgroup?for?Linux?machines
define?hostgroup{
?hostgroup_namelinux-servers?The?name?of?the?hostgroup
?alias?Linux?Servers?Long?name?of?the?group
?members?localhost?Comma?separated?list?of?hosts?that?belong?to?this?group
?}
#?Define?a?service?to?ftp?the?local?machine
define?service{
?use?local-service?Name?of?service?template?to?use
?host_name?localhost
?service_description?FTP
?check_command?check_ftp
?}
#?Define?a?service?to?nfs?the?local?machine
define?service{
?use?local-service?Name?of?service?template?to?use
?host_name?localhost
?service_description?NFS
?check_command?check_tcp!2049
?}
监控远程主机
==============================================================================
[root@localhost?~]#?cd?/usr/local/nagios/etc/objects
[root@localhost?~]#?cp?localhost.cfg?192.168.0.164.cfg
[root@localhost?~]#?vim?192.168.0.164.cfg
define?host{
?use?linux-server
?host_name?testserver
?alias?host196
?address?192.168.0.164
?}
#define?hostgroup{
#hostgroup_nametestserver?The?name?of?the?hostgroup
#alias?host;Long?name?of?the?group
#members?localhost?Comma?separated?list?of?hosts?that?belong?to?this?group
#}
define?service{
?use?local-service
?host_name?testserver
?service_description?PING
?check_command?check_ping!100.0,20%!500.0,60%
?}
define?service{
?use?local-service
host_name?testserver
?service_description?HTTP
?che
ck_command?check_http #?notifications_enabled?0 ?} define?service{ ?use?local-service ?host_name?testserver ?service_description?NFS ?check_command?check_tcp!2049 #?notifications_enabled?0 ?}=============================================================================
更改主配置文件
[root@localhost?~]#?vim?/usr/local/nagios/etc/nagios.cfg 添加一行 cfg_file=/usr/local/nagios/etc/objects/192.168.122.100.cfg 检测新的配置文件是否正确 [root@localhost?~]#?/usr/local/nagios/bin/nagios?-v?/usr/local/nagios/etc/nagios.cfg Total?Warnings:?0 Total?Errors:?0 Things?look?okay?-?No?serious?problems?were?detected?during?the?pre-flight?check
重启nagios,web登录确认是否新增了主机。
监控本机和远程主机参考:
https://blog.51cto.com/1585654/1386857
nagios默认不用Mysql存储,可以使用NDOUtils插件实现MYSQL存储:
https://support.nagios.com/kb/article/ndoutils-installing-ndoutils-406.html
更多关于云服务器,域名注册,虚拟主机的问题,请访问西部数码官网:www.chenqinet.cn