版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《Linux服务器安全管理高级运维》课程教案课题:项目7分布式监控系统——Ganglia教学目的:1.了解Ganglia的组成2.了解Ganglia的工作原理3.理解Ganglia的监控原理4.掌握Ganglia的安装和配置方法5.掌握Ganglia的管理和维护方法6.掌握Ganglia监控功能的扩展方法课型:新授课课时:本章安排4个课时。教学重点:重点:掌握Ganglia的组成(gmond、gmetad、webfrontend)及各组件的工作机制与数据流向。掌握Ganglia监控管理端(gmetad.conf)和被监控客户端(gmond.conf)的配置方法。教学难点:难点:Ganglia的两层架构与三层架构的区别,以及单播模式与多播模式下gmond与gmetad之间的数据通信原理。通过Python接口扩展Ganglia监控功能(NGINX状态监控实战)中插件配置文件的编写与部署流程。教学过程:教学形式:讲授与实训结合,教学组织采用课堂整体讲授、命令行演示操作与分组讨论相结合的方式。教学媒体:采用“课堂整体讲授+投屏命令行演示+系统运行测试”的方式进行。通过整体讲授建立Ganglia分布式监控系统的完整知识框架,涵盖Ganglia组成与工作原理、yum源与源码编译安装、监控管理端与被监控客户端配置、Web页面配置、管理与维护、监控功能扩展六大模块;借助投屏实时执行命令,分步演示EPEL源安装、yum安装gmetad/gmond、源码编译安装apr/confuse/rrdtool、gmetad.conf配置(data_source/gridname/rrd_rootdir)、gmond.conf配置(globals/cluster/udp_send_channel/udp_recv_channel)、服务启动与日志查看、gmetric命令扩展监控、modpython.conf配置、Python插件(nginx_status)部署与配置、Web页面graph.d目录配置等关键操作;同时设计gmetad两层架构与三层架构对比、单播模式与多播模式对比、yum源安装与源码编译安装对比、gmetric接口扩展与Python接口扩展方式对比等多组对比案例,引导学生通过对比分析掌握Ganglia在不同场景下的部署策略与扩展方法。板书设计:本课标题分布式监控系统——Ganglia课次2授课方式理论课□讨论课□习题课□其他□课时安排4学分共2分授课对象普通高等院校学生任课教师教材及参考资料1.《Linux服务器安全管理高级运维》;电子工业出版社。2.本教材配套视频教程及学习检查等资源。3.与本课程相关的其他资源。教学基本内容教学方法及教学手段项目情境Ganglia是由UCBerkeley发起的一个开源集群监视项目,是一个跨平台的、可扩展的高性能计算(HighPerformanceComputing,HPC)系统下的分布式监控系统,适用于监控集群和网格。它可以监视和显示集群中节点的各种状态信息,首先通过运行在各个节点上的gmond守护进程来采集CPU、内存、硬盘利用率、I/O负载、网络流量情况等数据,然后将这些数据汇总到gmetad守护进程下,并使用RRDtool来存储数据,最后将这些数据以曲线的形式通过PHP页面进行呈现。Ganglia已经被移植到应用广泛的操作系统和处理器架构上。目前,全球范围内有成千上万的集群正在使用它。Ganglia已被用于连接大学校园和全球各地。它可以处理2000个节点的集群。Ganglia的特点如下。(1)具有良好的扩展性,分层架构设计能够适应大规模服务器集群的需求。(2)负载开销低,支持高并发。(3)支持多种操作系统(如UNIX等)和CPU架构,并且支持虚拟机。参考以下形式:1.衔接导入2.悬念导入3.情景导入4.激疑导入5.演示导入6.实例导入7.其他形式本章基本知识汇总背景知识Ganglia的组成gmond(GangliaMonitoringDaemon):运行在每个被监控节点上,收集本机监控数据并发送给其他节点,同时接收其他节点数据,默认监听端口8649。系统负载低,支持层次结构扩展。gmetad(GangliaMetaDaemon):运行在数据汇聚节点上,定期从gmond获取数据并存储到RRD数据库中,通过单播路由与gmond通信,以XML格式保存数据。webfrontend:基于Web的图形化监控页面,与gmetad安装在同一节点,从gmetad获取数据,读取RRD数据库,利用RRDtool生成图表展示。架构关系:gmond收集数据→汇总到gmetad→存入RRD数据库→Web页面读取展示。分布式架构中gmetad可收集其他gmetad的数据,实现多级汇总。Ganglia的工作原理node(最小单位,单台服务器)→cluster(多台服务器组成的集群)→grid(多个cluster组成的网格)。一个grid对应一个gmetad,一个node对应一个gmond。数据流向:gmond之间通过UDP通信(XDL格式),支持单播点对点与多播;gmetad通过TCP通道周期性轮询(Poll)gmond或其他gmetad获取XML格式数据;gmetad将数据更新到RRD数据库;Web页面读取数据库生成图表。单播模式:每个节点发送本机数据到指定的一台或多台机器,可跨网段。多播模式:每个节点发送数据到同一网段内所有机器,同时接收同网段所有机器数据,需所有主机在同一网段(默认模式)。任务1Ganglia的安装7.1.1yum源方式安装EPEL扩展yum源:wgetepel-release-5-4.noarch.rpm→rpm-ivh安装。监控管理端安装gmetad:yum-yinstallganglia-gmetad.x86_64(自动解决依赖,含RRDtool)。被监控客户端安装gmond:yum-yinstallganglia-gmond.x86_64。默认配置文件位于/etc/ganglia目录。7.1.2源码编译方式监控管理端安装gmetad:安装依赖包(expat/pcre/zlib/cairo/libxml2/pango/libpng/freetype/libart_lgpl/apr-devel)→编译安装apr、confuse(CFLAGS=-fPIC--disable-nls)、rrdtool(--disable-tcl)→编译ganglia-3.4.0(--with-gmetad--with-librrd等)→make&&makeinstall→复制gmetad.conf和gmetad.init→修改启动脚本中GMETAD路径→chkconfig--add→iprouteadd1deveth0绑定多播地址。被监控客户端安装gmond:安装依赖包→编译ganglia-3.4.0(--enable-gexec--enable-status--with-python等)→make&&makeinstall→./gmond-t生成gmond.conf→复制gmond.init→修改GMOND路径→chkconfig--add→iprouteadd绑定多播地址。任务2Ganglia的配置7.2.1Ganglia监控管理端的配置(gmetad.conf)data_source"Cluster1"cloud0cloud2:定义集群名称及数据采集节点(建议最少两个节点实现高可用),可指定采集频率(如"10localhost")和端口(默认8649)。可定义多个data_source实现多集群监控。gridname"TopGrid":定义网格名称,一个网格由多个data_source定义的集群组成。xml_port8651:数据汇总交互端口,telnet可查看所有监控数据。interactive_port8652:Web端获取数据的端口。rrd_rootdir"/var/lib/ganglia/rrds":RRD数据库存放路径。7.2.2Ganglia被监控客户端的配置(gmond.conf)globals:daemonize(后台运行)、setuid/user(运行用户nobody)、debug_level(调试级别0)、mute(是否发送数据)、deaf(是否接收数据)、host_dmax(删除节点超时时间)、cleanup_threshold(清理过期数据时间)、send_metadata_interval(单播模式下响应间隔)。cluster:name(集群名称,必须与gmetad中data_source匹配)、owner/latlong/url(管理信息)。udp_send_channel:mcast_join(多播地址1)、port(8649)、ttl。udp_recv_channel:mcast_join(多播地址)、port(8649)、bind(绑定地址)。tcp_accept_channel:port(8649),远程可通过TCP获取监控数据。同一集群内所有被监控客户端配置相同,复制配置文件即可。7.2.3Ganglia的Web页面配置下载ganglia-web(推荐3.5.7)放到ApacheWeb根目录。修改conf.php或conf_default.php:gweb_confdir(Web根目录)、gmetad_root(程序安装目录)、rrds(RRD数据库路径)、dwoo_compiled_dir和dwoo_cache_dir(需手动创建并设置777权限)、rrdtool(RRDtool路径)、ganglia_ip(gmetad服务器地址)、ganglia_port(8652交互端口)。授权:chown-Rnobody:nobody/opt/app/ganglia/rrds(保证RRDtool写入权限)。任务3Ganglia的管理和维护启动顺序:先在被监控节点依次启动gmond(/etc/init.d/gmondstart)→查看/var/log/messages日志确认→启动监控管理节点gmetad(/etc/init.d/gmetadstart)→查看日志→启动Apache/PHPWeb服务→通过Web页面查看监控数据。任务4Ganglia监控功能的扩展7.4.1通过gmetric接口扩展Ganglia的监控功能gmetric是Ganglia命令行工具,可直接将数据发送到gmond节点或广播给所有gmond节点。常用参数:-n(监控指标名称)、-v(指标值)、-t(数据类型)、-u(单位)、-d(存活时间)、-S(伪装客户端信息)、-c(指定配置文件)。实例:/opt/app/ganglia/bin/gmetric-ndisk_used-v40-tint32-u'%test'-d50-S':cloud1'。自动化收集:将gmetric命令写入Shell脚本,通过crontab定时执行(如*/10****/opt/ganglia/bin/ganglia.sh),生成持续监控报表。优点:简单快速,适合少量监控;缺点:大规模自定义监控时难以统一管理。7.4.2通过Python插件扩展Ganglia的监控功能前提条件:Ganglia3.1.x+、Python2.6.6+、python-devel头文件。编译gmond时需加--with-python参数生成modpython.so。配置modpython.conf:modules中指定python_module主模块、modpython.so路径、Python脚本放置路径(params);include引入*.pyconf配置文件。重启gmond完成Python接口环境搭建。7.4.3实战:利用Python接口监控NGINX的运行状态下载nginx_status插件(含conf.d配置文件、graph.d绘图PHP程序、python_modules主程序)。配置NGINX开启stub_status:在nginx.conf中添加location/nginx_status{stub_statuson;access_logoff;allowall;},重启NGINX,访问http://IP:8000/nginx_status验证。配置Ganglia客户端:将nginx_status.pyconf放到/opt/app/ganglia/etc/conf.d/,将nginx_status.py放到/opt/app/ganglia/lib64/ganglia/。修改pyconf中paramstatus_url的value为NGINX状态URL,配置collection_group中各metric(nginx_active_connections、nginx_accepts、nginx_handled、nginx_requests、nginx_reading、nginx_writing、nginx_waiting)的名称、标题和值阈值。设置PHP展示文件:将graph.d下的nginx_accepts_ratio_report.php和nginx_scoreboard
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电商公司运营主管平台销售KPI考核表
- 镗工初级理论试题及答案
- 2026年供应商供货协议修订信函8篇
- 教育质量与学生满意度评估表
- 文化旅游项目策划与实施方案指南
- 物流企业司机运输效率与安全记录绩效考核表
- 个人理财规划年度预算手册
- 人工智能辅助教育效果评估表
- 关于调整2026年年度考核指标的确认函3篇范本
- 人工智能伦理与应用指导书
- 协商一致解除劳动合同协议书
- IATF16949-质量手册(过程方法无删减版)
- 企业级IPv6网络改造及升级服务合同
- 定向钻施工合同协议书
- 2025数学步步高大一轮复习讲义人教A版复习讲义含答案
- GB/T 25849-2024移动式升降工作平台设计、计算、安全要求和试验方法
- JTS311-2011 港口水工建筑物修补加固技术规范
- 撒药无人机用升降液压机液压系统设计
- 《我的情绪我做主》心理健康课件
- DCS系统检修工作文件包
- 深基坑土石方开挖专项施工方案
评论
0/150
提交评论