利用红帽Piranha方案实现WEB负载均衡_第1页
利用红帽Piranha方案实现WEB负载均衡_第2页
利用红帽Piranha方案实现WEB负载均衡_第3页
利用红帽Piranha方案实现WEB负载均衡_第4页
利用红帽Piranha方案实现WEB负载均衡_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

1、作者:NetSeek (IT运维专家网|集群架构|性能调优)欢迎转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本声明.更新时间:2009-01-12实验平台 :    CentOS release5.2 (Final)实验目标 : 快速撑握和理解Piranha方案,并利用15分钟构建WEB高可用负载均衡解决方案.结构:LVS-ACTIVE:10LVS-BACKUP: 11LVS-VIP: 12Realsever: 04,192.1

2、68.1.205一.Piranha方案基本简绍.1.Piranha方案优点:1.1.1配置简洁高效:配置简便一个lvs.conf配置文件即可搞定(类keepalived方案.)1.1.2WEB配置界面.WEB配置对于那些不懂LVS配置的人员来说非常吸引力,你几乎只要花15分钟就可以配置好一个完美的负载均衡及高可用性方案.1.1.3完整的功能:主备LVS (Load Balancer)的Heartbeat和HA (pulse,send_arp)LoadBalancer和Real Server间进程服务的Heartbeat (nanny)IPVS功能 (lvsd)IPVS的管理 (ipvsadm)

3、2.Piranha方案原理结构描述:Piranha方案是基于LVS基础上设计的一套负载均衡高可用解决方案.LVS运行在一对有相似配置的计算机上:一个作为活动LVS Router(Active LVS Router),一个作为备份LVS Router(Backup LVS Router)。活动LVS Router服务有两个角色:* 均衡负载到真实服务器上。* 检查真实服务器提供的服务是否正常。备份LVS Router用来监控活动的LVS Router,以备活动的LVS Router失败时由备份LVS Router接管。Pulse:Pulse进程运行在活动LVS Router和备份LVS Rout

4、er上。在备份LVS Router上,pulse发送一个心跳(heartbeat)到活动LVS Router的公网接口上以检查活动LVS Router是否正常。在活动LVS Router上,pulse启动lvs进程并响应来自于备份LVS Router的心跳。lvsd:lvs进程调用ipvsadm工具去配置和维护IPVS路由表,并为每一个在真实服务器上的虚拟服务启动一个nanny进程。nanny:每一个nanny进程去检查真实服务器上的虚拟服务状态,并将故障情况通知lvs进程。假如一个故障被发现,lvs进程通知ipvsadm在IPVS路由表中将此节点删除。send_arp:如果备份LVS Rou

5、ter未收到来自于活动LVS Router的响应,它将调用send_arp将虚拟IP地址再分配到备份LVS Router的公网接口上。并在公网接口和局域网接口上分别发送一个命令去关掉活动LVS Router上的lvs进程。同时启动自己的lvs进程来调度客户端请求。3.Piranha方案基本套件安装:Copy to clipboard - CODE:#yum install ipvsadm modcluster piranha system-config-cluster php php-cli php-common4.配置文件介绍:/etc/sysconfig/ha/lvs.cf  &

6、#160;  /由http:/ip:3636 web界面配置的配置文件写入此文件./etc/init.d/piranha-gui start  /启动piranha服务的WEB配置界面./etc/init.d/pulse           /启动piranha服务读取的就是/etc/sysconfig/ha/lvs.cf.二.    Piranha配置配置主LVS服务器.# vi /etc/sysctl.conf找到下面行 /启用数据转发.net.ipv

7、4.ip_forward = 0将0 改成1,net.ipv4.ip_forward = 1执行如下命令来应用:sysctl p通过WEB界面配置Piranha服务.# /etc/init.d/piranha-gui start  /启动Piranha服务.#/usr/sbin/piranha-passwd  /设置密码,请设置你的piranha服务WEB配置登陆密码.10:3636/  输入用户名: piranha 及刚才设置的密码登陆.登陆后,选择Global Settings 这是对LVS的配置

8、Primary server public IP 输入公网IP:10,应用后按ACCEPT按钮保存设置。通过WEB配置主LVS的信息1. 配置主份LVS2.配置备份LVS3. 配置添加LVS( VIP信息)4.配置Realserver点击”编辑”添加具体的Realsever信息.5.启动LVS服务pulseCopy to clipboard - CODE:# /etc/init.d/pulse startStarting pulse:                

9、;                              OK  如果不报错,表示启动成功!到此LVS的服务器已经配置完成了启动两个程序 1、piranha-gui  是用来配置LVS的2、pulse       是用来启动LVS的    6.备份LVS安装与配置备份LVS安装同主LV

10、S安装方法同样.直接将lvs.conf拷贝到相应的目录下:#scp  lvs.cf root11:/etc/sysconfig/ha/# /etc/init.d/pulse start 启动服务即可.7.配置Realserver    DR模式配置文件.Copy to clipboard - CODE:       ifconfig lo:0 $WEB_VIP netmask 55 broadcast $WEB_VIP      

11、; /sbin/route add -host $WEB_VIP dev lo:0       echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore       echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce       echo "1" >/proc/sys/net/ipv4/conf/all/arp_i

12、gnore       echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce       sysctl -p >/dev/null 2>&1       echo "RealServer Start OK"      .Tunnel模式配置文件.Copy to clipboard - CODE:    i

13、fconfig tunl0 $WEB_VIP netmask 55 broadcast $WEB_VIP       /sbin/route add -host $WEB_VIP dev tunl0       echo "1" >/proc/sys/net/ipv4/conf/tunl0/arp_ignore       echo "2" >/proc/sys/net/ipv4/conf/tunl

14、0/arp_announce       echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore       echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce       sysctl -p >/dev/null 2>&1.正确配置,并启动服务.8.    测试与日志分析.# ipvsadm

15、ln    /查看LVS连接状态.Copy to clipboard - CODE:IP Virtual Server version 1.2.1 (size=4096)Prot LocalAddressort Scheduler Flags  -> RemoteAddressort           Forward Weight ActiveConn InActConnTCP  12:80 wrr persistent 30

16、-> 04:80             Route    1      0          0         -> 05:80             Route    1

17、60;     0          0     # tail -f /var/log/messages【注】服务切换测试:停掉主LVS服务上的pulse查看master是否能正常接管.测试过程中多注意分析日志.在Linuxtone网站编写heartbeat+lvs方案的时候还需要自己送一个arping命令告诉网关我的MAC发生变化了.但是Piranha方案能自动送一个arp命令.三.      LVS配置文件详解及相关技巧介

18、绍1.    lvs.conf 配置及详解: /thread-1603-1-1.html2.    修改Piranha登陆用户名及监听端口?      启动/etc/init.d/piranha-gui,实际上是执行如下配置文件.      /usr/sbin/piranha_gui -f /etc/sysconfig/ha/conf/httpd.conf     #cd /etc/sysc

19、onfig/ha 下目录介绍.     lvs.cf                /Piranha方案实现LVS核心配置文件.     conf/httpd.conf, piranha.passwd   /apache及认证相关文件.     web/            &

20、#160;  /此目录下存放WEB配置界面的PHP相关程序,                             如果想对WEB界面美化,请修改文件.     mdules/             /apache一些相关模块.    

21、       # vi /etc/sysconfig/ha/conf/httpd.conf (将原端口3636改为81,你也可以自定义此端口)        默认WEB界面是能过piranha账号登陆,如何创建自己定义的账号登陆呢?Copy to clipboard - CODE:  # htpasswd -c /etc/sysconfig/ha/conf/lvs.pass netseek     / 上述命令是添加用户netseek,并将账号信息写入lvs.pass这个文件.       # vi /etc/sysconfig/ha/conf/httpd.conf             # /etc/init.d/piranha-gui restart 重启服务即可生效.     上述技巧只是简单的抛砖引玉,你可以修改WEB服务的PHP相关程序,添加一些流量    

温馨提示

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

评论

0/150

提交评论