版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《Linux服务器安全管理高级运维》课程教案课题:项目11高性能集群软件——Keepalived教学目的:1.了解Keepalived的工作原理2.了解Keepalived的体系结构3.了解Keepalived的基本使用方法4.掌握Keepalived基础功能的使用方法5.掌握使用LVS+Keepalived实现高可用的前端负载均衡器的方法课型:新授课课时:本章安排6个课时。教学重点:重点:掌握Keepalived的VRRP工作原理、配置文件结构(全局定义块/VRRP实例定义块/虚拟服务器定义块)及核心参数配置。掌握LVS+Keepalived集成部署中DR模式的配置方法,包括前端负载均衡器配置、后端RS配置及VIP漂移验证。教学难点:难点:Keepalived集群中Master与Backup角色的选举策略,特别是vrrp_script模块中weight值(正负)对优先级的动态调整机制及切换条件。LVS的DR(DirectRouting)模式工作原理,后端RS的ARP抑制配置(arp_ignore/arp_announce)及VIP在环回口的绑定原理。教学过程:教学形式:讲授与实训结合,教学组织采用课堂整体讲授、命令行演示操作与分组讨论相结合的方式。教学媒体:采用“课堂整体讲授+投屏命令行演示+系统运行测试”的方式进行。通过整体讲授建立Keepalived高性能集群软件的完整知识框架,涵盖Keepalived简介与工作原理、VRRP协议、体系结构、安装配置、基础HA功能、vrrp_script资源监控、主备选举策略及LVS+Keepalived集成实战八大模块;借助投屏实时执行命令,分步演示yum源与源码编译安装Keepalived、keepalived.conf全局配置与VRRP实例配置(state/priority/virtual_router_id/virtual_ipaddress/authentication)、notify脚本(master.sh/backup.sh/fault.sh)执行跟踪、vrrp_script监控配置(killall/端口检测/Shell语句/自定义脚本)、LVS+Keepalived集成中virtual_server配置(lb_algorr/lb_kindDR/TCP_CHECK健康检查)、后端RS的lvs_dr_rs脚本配置(VIP绑定到lo:100及ARP抑制参数)、ipvsadm-ln查看LVS集群状态、客户端curl轮询测试、Keepalived服务停止模拟故障切换与VIP漂移验证等关键操作;同时设计Keepalived主备模式与抢占/非抢占模式对比、Weight正负值对选举策略的影响对比、LVS的DR/NAT/TUN三种工作模式对比、Keepalived仅HA模式与HA+LB模式配置对比等多组对比案例,引导学生通过对比分析掌握Keepalived的核心机制与最佳实践。板书设计:本课标题高性能集群软件——Keepalived课次3授课方式理论课□讨论课□习题课□其他□课时安排6学分共2分授课对象普通高等院校学生任课教师教材及参考资料1.《Linux服务器安全管理高级运维》;电子工业出版社。2.本教材配套视频教程及学习检查等资源。3.与本课程相关的其他资源。教学基本内容教学方法及教学手段项目情境Keepalived是Linux系统下的一个轻量级的高可用解决方案。Keepalived旨在实现服务的高可用性。Keepalived最初是针对LVS进行研发的,专门用于监控集群系统中各个服务节点的状态。它根据网络参考模型中的第三层、第四层、第五层交换机制来检测每个服务节点的状态。如果某个服务节点出现异常或工作出现故障,则Keepalived能检测到并将出现故障的服务节点从集群系统中剔除。这些工作都是自动完成的,不需要人工干预。需要人工干预的只是修复出现故障的服务节点。参考以下形式:1.衔接导入2.悬念导入3.情景导入4.激疑导入5.演示导入6.实例导入7.其他形式本章基本知识汇总任务1Keepalived11.1.1Keepalived简介最初针对LVS研发,用于监控集群系统中各服务节点状态。后加入VRRP功能,实现网络不间断稳定运行。两大核心功能:健康检查(TCP三次握手/ICMP/HTTP/UDPEcho检测后端服务器存活)和失败切换(通过VRRP维持主备负载均衡器心跳,主故障时备接管业务)。11.1.2VRRP协议与工作原理VRRP(虚拟路由冗余协议):解决静态路由单点故障问题,将几台路由设备联合组成虚拟路由设备,保证通信连续性和可靠性。虚拟路由器:备份组中所有路由器的集合(主路由器+所有备份路由器=虚拟路由器),拥有虚拟IP(VIP)和虚拟MAC(00-00-5E-00-01-{VRID})。角色:Master路由器(拥有VIP,对外提供服务,发送VRRP通告)和Backup路由器(不拥有VIP,仅接收通告,Master失效时重新选举)。工作步骤:选举Master设备→发送免费ARP通告虚拟MAC→Master周期性发送VRRP通告→Master故障时Backup重新选举Master→新Master发送免费ARP刷新MAC表项→原Master恢复后(优先级255则直接切Master,<255则切Backup)→根据抢占/非抢占模式决定是否重新选举。11.1.3Keepalived的工作原理通过VRRP实现故障切换和转移。可单独作为高可用解决方案(NGINX/Haproxy/MySQL等),也可与LVS配合管理集群节点状态。工作在网络层(第三层:ICMP探测)、传输层(第四层:TCP端口连接扫描)、应用层(第五层:自定义脚本检测)。抢占模式:Master恢复后重新夺回VIP;非抢占模式(nopreempt):Backup接管后不再交还。11.1.4Keepalived的体系结构内核空间层:IPVS模块(实现基于IP地址的负载均衡,与LVS配合)、NETLINK模块(处理高级路由和网络功能)。用户空间层:SchedulerI/OMultiplexer(I/O复用调度器)、MemoryManagement(内存管理)、ControlPlane(配置文件编译解析)、CoreComponents(核心组件)。CoreComponents模块:WatchDog(监控Checkers和VRRP进程,故障时重启或关闭)、Checkers(服务器运行状态检测和故障隔离)、VRRPStack(HA集群失败切换)、IPVSWrapper(将IPVS规则发送到内核IPVS模块)、NetlinkReflector(VIP设置和切换)。任务2Keepalived的安装与配置11.2.1Keepalived的安装yum源安装:yuminstall-ycurlgccopenssl-devellibnl3-develnet-snmp-devel→yuminstall-ykeepalived→systemctlstart/enable/restart/statuskeepalived。源码编译安装:wgetkeepalived-2.0.7.tar.gz→tarxvf→./configure--prefix=/usr/local/keepalived→make&&makeinstall→复制配置文件(/usr/local/etc/keepalived/keepalived.conf)、sysconfig文件、主程序到/usr/sbin、启动脚本到/etc/init.d→chkconfig--addkeepalived→servicekeepalivedstart|stop|restart。11.2.2Keepalived的全局配置配置文件keepalived.conf包含3个块:全局定义块(global_defs,必需)、VRRP实例定义块(vrrp_instance,定义HA)、虚拟服务器定义块(virtual_server,可选,仅负载均衡时需要)。global_defs参数:notification_email(邮件通知列表)、notification_email_from(发件人)、smtp_server(邮件服务器)、smtp_connect_timeout(超时)、lvs_id(LVS标识)、router_id(本节点标识字符串)。11.2.3Keepalived的VRRP配置vrrp_sync_group:同步组,将多个VRRP实例绑定在一起同步切换。vrrp_instance参数:state(MASTER/BACKUP)、virtual_router_id(VRID,0-255,主备必须一致)、interface(绑定网卡)、mcast_src_ip(多播源IP)、priority(优先级,越大越优先)、advert_int(通告间隔)、nopreempt(非抢占模式)、smtp_alert(邮件报警)、authentication{auth_typePASS/AH;auth_pass密码}、virtual_ipaddress(VIP列表,格式@IPdevinterface)、track_script(引用监控脚本)。virtual_server参数:delay_loop(健康检查间隔)、lb_algo(调度算法rr/wrr/lc/wlc/sh/dh/lblc)、lb_kind(转发方式NAT/DR/TUN)、persistence_timeout(持久连接超时)、protocol(TCP/UDP)、real_server(后端真实服务器IP:PORT,含weight权重和健康检查方式TCP_CHECK/HTTP_GET/MISC_CHECK)。任务3Keepalived的基础功能应用实例11.3.1Keepalived的基础HA功能示范环境:keepalived-master(1,priority100)和keepalived-backup(2,priority80),VIP0,提供HTTPD服务。配置要点:master节点stateMASTER/priority100,backup节点stateBACKUP/priority80;notify_master/notify_backup/notify_fault脚本记录角色切换日志;track_script引用check_httpd(killall-0httpd检测)。启动流程:Keepalived启动后共3个进程(父进程+vrrp子进程+healthcheckers子进程)。故障切换:master故障时backup立即接管VIP(几秒内完成,ping几乎无延时)。非抢占模式(nopreempt):Master故障恢复后不希望再次切回,避免不必要的切换对业务造成影响。配置方法:两台服务器初始状态均设为BACKUP,设置不同优先级,对高优先级节点设置nopreempt。11.3.2通过vrrp_script模块实现对集群资源的监控killall探测:script"killall-0nginx"(0正常,1异常),interval2,weight30。端口检测:script"</dev/tcp/:80",fall2(失败超过2次切换),rise1(1次成功即恢复)。Shell语句检测:检测nginx.pid文件是否存在(if[-f/usr/local/nginx/logs/nginx.pid];thenexit0;elseexit1;fi)。自定义脚本检测:script"/etc/keepalived/check_mysqld.sh"(mysql-e"showstatus;"检测MySQL状态)。11.3.3Keepalived集群中Master和Backup角色选举策略集群角色由priority值和vrrp_script中的weight值共同决定。weight值为正数时:脚本检测成功时节点权值=priority+weight;检测失败时权值=priority。切换条件:Master检测失败时,若Master的priority<Backup的priority+weight,则切换。weight值为负数时:脚本检测成功时权值=priority;检测失败时权值=priority-|weight|。切换条件:Master检测失败时,若Master的priority-|weight|<Backup的priority,则切换。配置原则:weight的绝对值要大于Master和Backup节点的priority值之差,否则Master故障时无法完成切换。任务4利用LVS+Keepalived实现高可用的前端负载均衡器实训案例11.4.1实训前的准备拓扑架构:Client(node05)→VIP(0)→LVS+KeepalivedMaster(node01,1)/Backup(node02,2)→NGINXWebRS(node03,3)/RS(node04,4)。角色分配:node01(LVSDirector+KeepalivedMaster)、node02(LVSDirector+KeepalivedBackup)、node03/node04(NGINXWebServer+LVSRS)。11.4.2实训步骤前端Keepalived+LVS配置(node01/node02):global_defs中router_id分别设为LVS_DEVEL1/LVS_DEVEL2。vrrp_instanceVI_1:node01stateMASTER/priority200,node02stateBACKUP/priority100;interfaceens33;virtual_router_id51;authenticationPASS/1111;virtual_ipaddress0。virtual_server080:lb_algorr(轮询);lb_kindDR(直接路由);protocolTCP;real_server3:80和4:80各weight1;TCP_CHECK健康检查(connect_timeout3/nb_get_retry3/delay_before_retry3/connect_port80)。后端Web服务配置(node03/node04):yuminstallnginx→echo"IPwebtestpage">/usr/share/nginx/html/index.html→systemctlenable--nownginx。后端LVSRS配置(node03/node04):编写/etc/init.d/lvs_dr_rs脚本:VIP绑定到lo:100(ifconfiglo:100VIPnetmask55broadcastVIPup);routeadd-hostVIPdevlo:100;ARP抑制参数设置(arp_ignore=1,arp_announce=2forlo/ens33/all)。chmod+x/etc/init.d/lvs_dr_rs→chkconfig--addlvs_dr_rs→systemctlenable--nowlvs_dr_rs。LVS集群查看:ipvsadm-ln显示VIP:80→RS:80(Route转发,Weight1,ActiveConn0)。11.4.3实训测试Keepalived健康检查:动态监控ipvsadm-ln(每2秒刷新)。模拟后端故障:node04停止nginx→ipvsadm仍显示两个RS但实际流量只转发到node03→node05curl只返回node03响应。后端恢复:node04启动nginx→ipvsadm恢复两个RS→curl轮询返回两个节点响应。KeepalivedMaster/Backup切换:node01正常时VIP0绑定在node01的ens33上,node02无VIP。模拟Master故障:n
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 隰县2024山西临汾隰县事业单位招聘30人笔试历年参考题库典型考点附带答案详解
- 长沙市2024湖南省市场监督管理局所属事业单位招聘10人笔试历年参考题库典型考点附带答案详解
- 鄞州区2025浙江宁波市鄞州区社会治理中心招聘编外人员2人笔试历年参考题库典型考点附带答案详解
- 邱县2024年河北邯郸邱县博硕引才25名笔试历年参考题库典型考点附带答案详解
- 达州市2025四川达州市不动产登记中心招聘编外聘用人员4人笔试历年参考题库典型考点附带答案详解
- 秦皇岛市2025年河北秦皇岛市交通运输公共服务中心选调工作人员4人笔试历年参考题库典型考点附带答案详解
- 福建省2024福建省工业信息产业发展研究中心招聘高层次人才2人笔试历年参考题库典型考点附带答案详解
- 石阡县2024贵州石阡县青年就业见习万岗募集笔试历年参考题库典型考点附带答案详解
- 白山市2024吉林白山市事业单位招聘高层次和急需紧缺人才166人(1号)笔试历年参考题库典型考点附带答案详解
- 2026食品冷冻冷藏食品行业市场供需分析及投资评估规划分析研究报告
- 2025-2026学年地质版三年级体育全一册(教案设计)
- 2026年芯片设计DFT工程师高频面试题包含详细解答
- 施工现场清洁施工方案(3篇)
- 2026年计算机一级WPS Office真题冲刺高频模拟含解析
- TCPCIF-《化学品自动化立体仓库设计规范》
- 供排水安全工作方案
- 娄底市辅警招聘公安基础知识考试题库及答案
- 《微针治疗操作规范》团体标准(征求意见稿)
- 危险药品运输制度规范
- 2025年湖南事业单位招聘考试(计算机)细选练习试题及答案
- 2026江西吉安市吉水县城控人力资源服务有限公司招聘劳务外包1人备考题库(一)有答案详解
评论
0/150
提交评论