【ch08】基于Nagios的分布式监控报警平台-Centreon_第1页
【ch08】基于Nagios的分布式监控报警平台-Centreon_第2页
【ch08】基于Nagios的分布式监控报警平台-Centreon_第3页
【ch08】基于Nagios的分布式监控报警平台-Centreon_第4页
【ch08】基于Nagios的分布式监控报警平台-Centreon_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《Linux服务器安全管理高级运维》课程教案课题:项目8基于Nagios的分布式监控报警平台——Centreon教学目的:1.了解Centreon的特点2.了解Centreon的组成结构3.理解分布式监控原理4.掌握Centreon的安装方法5.掌握Centreon的配置方法6.掌握Centreon报警功能的配置方法课型:新授课课时:本章安排10个课时。教学重点:重点:掌握Centreon监控系统的安装流程(基础依赖库、Nagios、NDOUtils、NRPE、Centreon及CentreonWeb的安装与配置)。掌握Centreon中主机/主机组、服务/服务组、报警通知功能及用户权限的Web配置方法。教学难点:难点:Centreon分布式监控架构中CentralServer与PollerServer的角色划分、SSH信任登录配置、ndomod与ndo2db的通信机制及配置文件推送流程。Centreon安装过程中各组件(CentStorage、CentCore、CentPlugins)的路径配置、PEAR模块安装、MySQL数据库初始化及常见安装问题的排查方法。教学过程:教学形式:讲授与实训结合,教学组织采用课堂整体讲授、命令行演示操作与分组讨论相结合的方式。教学媒体:采用“课堂整体讲授+投屏命令行演示+系统运行测试”的方式进行。通过整体讲授建立Centreon分布式监控报警平台的完整知识框架,涵盖Centreon组成与工作原理、yum源配置与组件安装、Web安装向导配置、主机/服务/报警/权限管理、分布式监控搭建、常见服务监控配置及Nagstamon桌面报警器配置八大模块;借助投屏实时执行命令,分步演示rpm安装yum源、yum安装系统依赖库/GD/Apache/MySQL/PHP/RRDtool/Nagios/NDOUtils/NRPE、Centreon交互式安装(模块选择/路径配置/管理引擎选择/PEAR安装/CentStorage/CentCore/CentPlugins)、CentreonWeb向导(依赖检查/管理引擎配置/代理模块配置/管理员账号/数据库连接)、主机与服务添加、报警通知配置(邮件命令SendEmail集成)、分布式Poller添加与SSH信任配置、ndomod/ndo2db配置、check_mysql/check_apache2/check_hadoop服务监控配置、Nagstamon桌面监控配置等关键操作;同时设计CentralServer与PollerServer架构对比、yum安装与源码编译安装对比、主机模板继承与主机自定义优先级对比、邮件报警与短信报警配置对比等多组对比案例,引导学生通过对比分析掌握Centreon在不同场景下的部署策略与配置方法。板书设计:本课标题基于Nagios的分布式监控报警平台——Centreon课次5授课方式理论课□讨论课□习题课□其他□课时安排10学分共2分授课对象普通高等院校学生任课教师教材及参考资料1.《Linux服务器安全管理高级运维》;电子工业出版社。2.本教材配套视频教程及学习检查等资源。3.与本课程相关的其他资源。教学基本内容教学方法及教学手段项目情境Centreon是一款功能强大的开源分布式IT监控软件,由法国人于2003年开发,最初名为Oreon,于2005年正式更名为Centreon。Centreon通过第三方组件可以实现对网络、操作系统和应用程序的监控。Centreon是开源的,用户可以免费使用。它的底层采用Nagios作为监控软件,通过ndoutil模块将监控到的数据定时写入数据库。Centreon实时从数据库中读取该数据并通过Web页面展示监控数据。Centreon可用于管理和配置Nagios,或者说Centreon就是Nagios的一个管理配置工具。通过Centreon提供的Web配置管理页面,可以轻松完成Nagios的各种烦琐配置。此外,Centreon还支持NRPE、SNMP、NSClient等插件,用户可以通过这些插件构建分布式监控报警系统。Centreon作为一款优秀的IT监控软件,具有以下显著特点。(1)采用Web方式配置Nagios:通过Web页面可以完全控制Nagios,可以轻松添加和管理上千台主机和上千个服务。(2)支持主机模板和服务模板,并且自动建立关联服务。(3)支持多节点的分布式监控。对于远程节点,Nagios可采用NRPE、SNMP、NSClient等方式监控私有服务。(4)支持ACL权限管理:可以为不同用户设置不同的管理权限,多个用户可以管理不同的主机和服务,它们之间互不影响。(5)详细的报表统计功能和日志管理功能:可以查看某个时间段某个服务或某台主机的运行状态、故障率等。(6)模块化管理:用户可以根据需要定制自己的模块,同时支持接入第三方监控数据。参考以下形式:1.衔接导入2.悬念导入3.情景导入4.激疑导入5.演示导入6.实例导入7.其他形式本章基本知识汇总背景知识:Centreon的组成结构Nagios:底层监控引擎,负责监控报警系统的各项功能,是Centreon监控系统的核心。Centstorage:数据存储模块,将日志数据及RRDtool生成的数据存储到数据库中,用于查询和生成曲线图。Centcore:基于Perl的守护进程,负责CentralServer与PollerServer之间的通信和数据同步,可在中心服务器上启动/关闭/重启远程Poller上的Nagios服务。NDOUtils:连接Nagios与数据库的工具,将Nagios实时状态写入数据库,供其他程序调用。内部工作原理(三条线):CentreonWeb→Centcore→Centstorage→Ndo2DB→CentreonWeb(配置生成与数据入库);Nagios→Centstorage→DB→CentreonWeb(日志与RRD数据存储);Nagios(Ndomod)→Ndo2DB→DB→CentreonWeb(实时状态写入与展示)。任务1Centreon+Nagios监控系统的安装8.1.1安装支持Centreon的yum源安装rpmforge-release和epel-release扩展源。创建centreon.repo(baseurl=http://apt.sw.be/redhat/...),包含Nagios、NDOUtils、NRPE等软件包。8.1.2安装系统基础依赖库GD及Apache:httpd、gd、fontconfig-devel、libjpeg-devel、libpng-devel、gd-devel、perl-GD。MySQL及PHP:openssl-devel、perl-DBD-MySQL、mysql-server、mysql-devel、php、php-mysql、php-gd、php-ldap、php-xml、php-mbstring。Perl扩展:perl-Config-IniFiles、perl-DBI、perl-DBD-MySQL、perl-Crypt-DES、perl-Digest-SHA1。SNMP及依赖:net-snmp-utils、perl-Digest-HMAC、perl-Socket6、perl-IO-Socket-INET6、net-snmp、php-snmp。RRDtool:rrdtool、perl-rrdtool。其他:dmidecode、lm_sensors、perl-Net-SNMP、net-snmp-perl、fping、gcc、gcc-c++、glib2-devel。PEAR:php-pear,执行pearchannel-update。8.1.3安装Nagios及nagios-pluginsyuminstallnagiosnagios-devel、nagios-plugins、nagios-plugins-all。默认安装路径:插件/usr/lib64/nagios/plugins、配置/etc/nagios、日志/var/log/nagios。8.1.4安装NDOUtilsyuminstallndoutilsndoutils-mysql,Ndomod模块路径/usr/libexec/ndomod-3x.o或/usr/lib64/nagios/brokers/ndomod.so,维护脚本/etc/init.d/ndoutils或/etc/init.d/ndo2db。8.1.5安装NRPE监控主机安装check_nrpe插件(yuminstallcheck_nrpe)。被监控主机安装NRPE服务(yuminstallnrpe),配置文件/etc/nagios/nrpe.cfg,维护脚本/etc/init.d/nrpe。8.1.6安装Centreon下载Centreon-2.4.1.tar.gz→tar解压→./install.sh-i进入交互式安装。选择安装模块:CentreonWebFront、CentreonCentCore、CentreonNagiosPlugins、CentreonSnmpTrapsprocess(全部安装)。配置安装路径(Centreon目录/配置/日志等)→指定RRDs.pm和PEAR.php路径。选择管理引擎(Nagios)→选择代理模块(NDOUtils)→指定管理引擎用户(nagios)和代理模块用户(ndoutils)。指定Nagios维护脚本(/etc/init.d/nagios)和二进制文件(/usr/bin/nagios)→指定NDOUtils维护脚本(/etc/init.d/ndoutils)→写入/etc/sudoers实现无密码授权。配置ApacheServer(自动创建/etc/httpd/conf.d/centreon.conf,Alias/centreon指向安装目录)。检查并在线安装PEAR模块(需联网)→创建安装文件模板。安装CentStorage(指定运行目录/二进制目录/RRD数据目录/维护脚本)→安装CentCore(创建运行目录/维护脚本)→安装CentPlugins(指定/var/lib/centreon/centplugins)→安装CentPluginsTraps(指定SNMP配置目录/SNMPTT存放目录)。启动相关服务:/etc/init.d/httpdstart、mysqldstart、ndoutilsstart。8.1.7安装CentreonWeb浏览器访问http://IP/centreon→欢迎页面Next→检测依赖模块(mysql.so/gd.so/ldap.so等)。选择管理引擎(nagios)→指定Nagios配置信息(主目录/nagiostats二进制/images目录/EmbeddedPerl初始化文件)。选择代理模块(ndoutils)→指定Ndomod模块路径。添加管理员账号(admin设置密码/邮箱等信息)。设置MySQL数据库连接信息(IP/端口/Root密码/三个数据库名centreon/centreon_storage/centreon_status及管理用户centreon密码)→自动创建数据库及用户。MySQL授权:GRANTUSAGE及SELECT/INSERT/UPDATE/DELETE/CREATE权限授予centreon@localhost。完成安装进入登录页面。8.1.8启动Centreon相关服务/etc/init.d/nagiosstart、centstoragestart、centcorestart。查看日志:/var/log/nagios/nagios.log和/usr/local/centreon/log。8.1.9安装问题总结常见问题集中在Nagios和MySQL数据库,重点查看三个日志:nagiosPerfTrace.log(Nagios与MySQL交互)、centstorage.log(RRDtool绘图)、nagios.log(Nagios运行日志)。任务2Centreon的配置8.2.1添加主机和主机组定义Centreon-Server主机:HostName/IPAddress/DNS/HostTemplates(generic-host)。添加主机node1~node4,引用generic-host模板,选择check_ping命令。添加主机组:HostGroupName/Alias/LinkedHosts(Centos-server-group含Centreon-Server+node1;Centos1-server-group含node2/node3/node4)。配置generic-host主机模板:MaxCheckAttempts/NormalCheckInterval/RetryCheckInterval等,修改模板后所有引用主机自动继承。8.2.2批量添加主机原理:将批量主机的共同属性添加到主机模板,批量添加时只需写入IP和主机名到数据库。使用Perl脚本batch_add_host.pl,通过-f指定hosts文件(格式“IP地址主机名”),-t指定模板(generic-host),-n指定轮询方式(Central)。脚本直接向Centreon数据库(centreon)的host表插入记录,并建立模板关系和Poller关系。8.2.3管理监控引擎选择Configuration→MonitoringEngines→Generate,生成配置并重启监控引擎。动作选项:Restart(新增主机时使用)、Reload(修改配置参数时使用,速度较快)、ExternalCommand(第三方扩展)。可修改main.cfg(Nagios主配置)、resources(插件路径)、cgi(访问权限)。8.2.4添加服务和服务组配置generic-service服务模板:ServiceState属性(检查周期/命令/正常检查间隔/重试检查间隔)。添加check_host_ping服务:Description/ServiceTemplate(generic-service)/CheckCommand(check_ping)/Args参数/Relations选择关联主机。添加服务组check-port-service:引用generic-service模板,CheckCommand选择check_tcp,Args指定端口和阈值,Relations选择关联主机组。8.2.5配置报警通知功能开启主机报警:编辑主机设置NotificationEnabled为Yes,选择联系人(Supervisor),设置通知间隔/周期(24x7/Workhours/Nonworkhours)/通知类型(Down/Unreachable/Recovery)/延时时间。开启服务报警:编辑服务或generic-service模板设置NotificationEnabled。推荐通过修改模板统一开启报警,避免逐台修改。配置报警方式和联系人:编辑admin用户Email(邮件报警)和Pager(短信报警),配置主机通知命令host-notify-by-email和服务通知命令service-notify-by-email。推荐使用SendEmail替代mail命令:参数-f(发件人)、-t(收件人)、-s(SMTP服务器)、-u(主题)、-xu(SMTP用户名)、-xp(SMTP密码)、-m(内容)。示例命令集成到service-notify-by-email中。查看监控报警状态:Monitoring→Hosts(绿色OK/黄色Warning/红色Critical/Down/灰色Unknown/浅蓝色Pending/Unreachable),Services同理。右上角全局状态监控表格汇总所有主机/服务状态。8.2.6管理用户和用户权限添加用户:Configuration→Users→Contacts/Users→Add,设置FullName/Alias/Login/Email/报警类型/时段/报警命令/CentreonAuthentication(登录密码/语言/是否管理员)。添加用户组:ContactGroups,将用户加入组。添加访问组:Administration→ACL→AccessGroups,关联用户或用户组。添加菜单访问控制权限:MenusAccess,选择用户可访问的菜单(Configuration/Graphs/Monitoring+Home/Reporting)。添加资源访问策略:ResourcesAccess,关联访问组,选择可访问的主机/主机组/服务组。完成配置后,受限用户只能查看指定菜单和指定主机/服务。任务3分布式监控的配置典型架构:多个Poller(远程扩展节点)+一个Central(中心服务器)。Poller仅安装Nagios+NDOUtils,Central安装所有组件。8.3.1搭建分布式监控环境CentralServer(00)+PollerServer(88)。运作流程:所有配置在Central完成→生成配置文件通过SSH推送到Poller→远程重启Poller的Nagios→Poller监控本地服务并将状态写入Central的MySQL。8.3.2安装监控软件Central安装Nagios/nagios-plugins/NDOUtils/NRPE/Centreon。Poller安装Nagios和NDOUtils,授权chown-Rcentreon:centreon/etc/nagios,启动nagios和ndoutils服务,将Central的插件复制到Poller。8.3.3配置节点间的SSH信任登录在Poller创建Centreon用户,在Central切换至centreon用户执行ssh-keygen和ssh-copy-id到Poller。Poller配置sudoers(centreonALL=NOPASSWD:/etc/init.d/nagiosrestart等),注释Defaultsrequiretty。测试:ssh88sudo/etc/init.d/nagiosrestart。8.3.4在CentralServer上添加分布式监控配置添加Poller:Configuration→Centreon→Pollers→Add,设置PollerName/IPAddress/SSHport。添加ndomod配置:指定InstanceName(Poller)/StatusEnabled/InterfaceType(tcpsocket)/Output(CentralIP)。添加ndo2db配置:Requester(Poller)/SocketType(tcp)/TCPPort(5668)/Database(MySQL/DBHost/CentreonDB/用户名密码),MySQL授权grantalloncentreon_status.*tocentreon@'Poller_IP'。添加Nagios主配置文件:ConfigurationName/Linkedpoller(Poller)。为Poller添加后端主机:设置Monitoredfrom为对应Poller。重载Centreon生成配置文件:Configuration→MonitoringEngines→Generate→选择AllPollers→Restart。查看Poller运行状态:显示IP/Nagios启动时间/运行PID/版本信息。任务4常见服务监控的配置8.4.1Nagios插件编写规范插件可为Shell/Perl/Python等可执行脚本。必须返回4个返回值之一:0(OK/UP)、1(WARNING/UPorDOWN)、2(CRITICAL/DOWN)、3(UNKNOWN/DOWN)。可返回多行文本输出更多信息。8.4.2监控Apache的运行状态获取check_apache2.py脚本放到/usr/lib64/nagios/plugins并chmod755。被监控Apache配置mod_status:Location/server-status+Allowfrom监控IP+ExtendedStatusOn。添加check_apache服务:CheckCommand选择check_apache_status,Args填入端口/警告阈值/故障阈值,Relations选择Apache主机。加载配置后查看运行状态。8.4.3监控MySQL数据库的运行状态被监控MySQL创建远程访问用户:grantusageON.tonagios@'%'identifiedby'xxxxxx'。添加check_mysql_status命令:添加check_mysql服务:Args填入端口/用户名/密码,Relations选择MySQL主机。加载配置后查看运行状态,可停止MySQL服务验证报警有效性。8.4.4监控HadoopHDFS的运行状态获取check_hadoop.pl脚本放到/usr/lib64/nagios/plugins并赋予可执行权限。添加check_hadoop_status命令:CommandLine直接带参数。添加check_hadoop服务:Args填入空闲warning值/空闲critical值/Unreplicated警告阈值/Unreplic

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论