系统环境:RHEL6.5x86_64small安装selinux并禁用iptables虚拟IP192.168.2.253192.168.2.162server62.exampl.com(主节点)192.168.2.163server63.example.com(备节点))192.168.2.52desktop52.example.com(realserver)192.168.2.53desktop53.example.com(realserver)编辑/etc/hoststs做上面的分析1.食人鱼方案基本介绍。1.Piranha方案的优点:1.1配置简单高效:配置简单,一个lvs.conf配置文件即可(类似keepalived方案)1.2WEB配置界面。WEB配置对于不懂LVS配置的人来说很有吸引力,差不多15分钟就可以配置一个最新的负载均衡和高可用方案。1.3功能齐全:主备LVS(LoadBalancer)心跳和HA(pulse,send_arp),Heartbeat(nanny)*LoadBalancer与RealServer之间进程服务的IPVS功能(lvsd)*IPVS管理(ipvsadm)二、原理Piranha方案结构说明:Piranha方案是一套基于LVS设计的负载均衡高可用方案。LVS运行在一对配置相似的计算机上:一台作为活动LVS路由器(ActiveLVSRouter),一台作为备份LVS路由器(BackupLVSRouter)。活跃的LVSRouter服务有两个角色:*平衡真实服务器的负载。*检查真实服务器提供的服务是否正常。备份LVSRouter用于监视活动LVSRouter,如果活动LVSRouter发生故障,备份LVSRouter将接管。Pulse:Pulse进程运行在activeLVSRouter和backupLVSRouter上。在backupLVSRouter上,pulse向activeLVSRouter的public接口发送心跳(heartbeat),检查activeLVSRouter是否正常。在活动的LVSRouter上,pulse启动lvs进程并响应来自备用LVSRouter的心跳。lvsd:lvs进程调用ipvsadm工具配置和维护IPVS路由表,并为真实服务器上的每个虚拟服务启动一个nanny进程。nanny:每个nanny进程检查realserver上虚拟服务的状态,并通知lvs进程失败。如果发现故障,lvs进程通知ipvsadm从IPVS路由表中删除该节点。send_arp:如果backupLVSRouter没有收到activeLVSRouter的响应,它会调用send_arp重新分配虚拟IP地址给backupLVSRouter的公网接口。并在公网接口和LAN接口下发命令关闭主用LVSRouter上的lvs进程。同时启动自己的lvs进程来调度客户端请求。3、Piranha程序基础包安装:#yuminstallipvsadmmodclusterpiranhasystem-config-clusterphpphp-cliphp-common4、配置文件介绍:/etc/sysconfig/ha/lvs.cf//byhttp://ip:3636web界面配置的配置文件写到这个文件中。/etc/init.d/piranha‐guistart//启动piranha服务的WEB配置界面。/etc/init.d/pulse//启动piranha读取/etc/sysconfig/ha/lvs.cf的服务。2.Piranha配置通过WEB界面配置Piranha服务。#/etc/init.d/piranha-guistart//启动Piranha服务。#/usr/sbin/piranha-passwd//SetPassword,请设置您的piranha服务WEB配置登录密码。http://192.168.2.162:3636//输入用户名:piranha和刚才设置的密码登录,登录后选择全局设置。这是配置LVSPrimaryserver公网IP输入公网IP:192.168.2.162,申请后按ACCEPT键保存设置。通过WEB配置初级LVS信息1.配置初级LVS2。配置备份LVS#p#3。配置添加LVS(VIP信息)4.配置Realserver启动node5。StartLVSservicepulse#/etc/init.d/pulsestartStartingpulse:[OK]如果没有报错,说明启动成功!至此LVS服务器已经配置好并启动了两个程序1.piranha-gui用于配置LVS2.pulse用于启动LVS6.备份LVS安装配置备份LVS安装与主LVS安装相同。直接将lvs.conf复制到对应目录:#scp/etc/sysconfig/ha/lvs.cfroot@192.168.2.163:/etc/sysconfig/ha/#/etc/init.d/pulsestart启动服务即可。7.配置Realserver#yuminstall-yarptables_jf#ifconfigeth0:1192.168.2.253netmask255.255.255.255#arptables-AIN-d192.168.2.253-jDROP#arptables-AOUT-s192.168.2.253-jmangle--mangle-ip-s192.168.2.53#servicearptables_jfsave以上操作会自动生成文件/etc/sysconfig/arptables#cd/var/www/html///进入Apache默认发布目录#echo`hostname`>index.html#servicehttpdstart//启动Apache服务测试:1).访问虚拟ip看看能不能访问到两个realserver节点的httpd服务。刷新页面显示不同的内容,说明轮换循环已经实现。2).停止负载主节点的脉冲服务,备份节点自动接管任务。3).交替停止或完全停止两台realserver的httpd服务,查看转发列表的变化。
