文档章节

红帽 Piranha 方案实现 WEB 负载均衡

lee_ypp
 lee_ypp
发布于 2014/07/26 10:37
字数 1141
阅读 3.7K
收藏 98

精选30+云产品,助力企业轻松上云!>>>

利用红帽 Piranha 方案实现 WEB 负载均衡 

系统环境: RHEL6.5x86_64 small install selinux and iptables disabled

Virtual IP             192.168.2.253

192.168.2.162    server62.exampl.com     (主节点)

192.168.2.163    server63.example.com(备用节点)

192.168.2.52      desktop52.example.com(real server)

192.168.2.53      desktop53.example.com(real server)

编辑/etc/hoststs做以上解析

一. Piranha 方案基本简绍. 

1. Piranha 方案优点: 

1.1 配置简洁高效: 

配置简便一个 lvs.conf 配置文件即可搞定(类 keepalived 方案.)

1.2 WEB 配置界面. 

WEB 配置对于那些不懂 LVS 配置的人员来说非常吸引力,你几乎只要花 15 分钟就可以配置好一个完美的负载均衡及高可用性方案. 

1.3    完整的功能: 

主备 LVS (Load Balancer)的 Heartbeat 和 HA (pulse, send_arp) ,Load Balancer 和 Real Server 间进程服务的 Heartbeat (nanny) 

*IPVS 功能  (lvsd) 

*IPVS 的管理  (ipvsadm) 

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 Router 上。 在备份 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 Router 未收到来自于活动 LVS Router 的响应, 它将调用 send_arp 将虚拟 IP 地址再分配到备份 LVS Router 的公网接口上。 并在公网接口和局域网接口上分别发送一个命令去关掉活动 LVS Router 上的 lvs进程。同时启动自己的 lvs 进程来调度客户端请求。 

3. Piranha 方案基本套件安装: 

#yum install ipvsadm modcluster piranha system‐config‐cluster php php‐cli php‐common 

4. 配置文件介绍: 

/etc/sysconfig/ha/lvs.cf          //由http://ip:3636 web界面配置的配置文件写入此文件. 

/etc/init.d/piranha‐gui start    //启动 piranha 服务的 WEB 配置界面. 

/etc/init.d/pulse                      //启动 piranha 服务读取的就是/etc/sysconfig/ha/lvs.cf. 

二. Piranha 配置 

通过 WEB 界面配置 Piranha 服务. 

# /etc/init.d/piranha‐ gui start    //启动 Piranha 服务. 

#/usr/sbin/piranha‐ passwd    //设置密码,请设置你的 piranha 服务 WEB 配置登陆密码. 

http://192.168.2.162:3636    //输入用户名: piranha  及刚才设置的密码登陆. 

登陆后,选择 Global Settings  这是对 LVS 的配置 

Primary server public IP  输入公网 IP:192.168.2.162,应用后按 ACCEPT 按钮保存设置。 

通过 WEB 配置主 LVS 的信息 

1. 配置主 LVS 

2.配置备份 LVS 

3. 配置添加 LVS( VIP 信息) 

4. 配置 Realserver 

 启动节点


5.启动 LVS 服务 pulse 

# /etc/init.d/pulse start 

Starting pulse:                                                                                        [    OK    ] 

如果不报错,表示启动成功! 

到此 LVS 的服务器已经配置完成了启动两个程序   

1、piranha‐gui    是用来配置 LVS 的 

2、pulse              是用来启动 LVS 的 
     
  6.    备份 LVS 安装与配置 

备份 LVS 安装同主 LVS 安装方法同样.直接将 lvs.conf 拷贝到相应的目录下: 

#scp    /etc/sysconfig/ha/lvs.cf root@192.168.2.163:/etc/sysconfig/ha/ 

# /etc/init.d/pulse start  启动服务即可. 

7. 配置 Realserver 

#yum install -y arptables_jf

#ifconfig eth0:1 192.168.2.253 netmask 255.255.255.255

#arptables -A IN -d 192.168.2.253 -j DROP

#arptables -A OUT -s 192.168.2.253 -j mangle --mangle-ip-s 192.168.2.53

#service arptables_jf save

以上操作会自动生成文件/etc/sysconfig/arptables

#cd /var/www/html/        //进入Apache默认发布目录

#echo `hostname` >  index.html

#service httpd start        //启动Apache服务

测试:

1).访问虚拟ip查看能否访问到两台realserver节点的httpd服务。刷新页面显示不同内容,说明实现了轮转循环。

2).停掉负载主节点的pulse服务,备用节点自动接管任务。

3).交替stop掉或者全部stop掉两台realserver的httpd服务,查看转发列表的变化。

                ——leeypp@gmail.com  


lee_ypp
粉丝 65
博文 50
码字总数 67898
作品 0
其它
程序员
私信 提问
加载中
此博客有 17 条评论,请先登录后再查看。
利用红帽 Piranha 方案实现 WEB 负载均衡

Piranha 方案优点: 1.1.1 配置简洁高效: 配置简便一个 lvs.cf 配置文件即可搞定(类 keepalived 方案.) 1.1.2 WEB 配置界面. WEB 配置对于那些不懂 LVS 配置的人员来说非常吸引力,你几乎只要花...

joansun
2014/06/02
41
0
piranha-基于web界面的HA配置管理平台

piranha构建高可用平台 使用piranha红帽配置lvs集群:(虚拟伺机服务器) 内网私有ip(心跳线,用来加强ha集群的健壮度) pulse和piranha进程 前者是启动服务的,后者是进行开启图形 nanny具有后...

Andy-xu
2014/05/31
2.3K
4
RHEL 7.0已发布 CentOS 7 即将到来

Red Hat直接将 RHEL7的源代码 发布到了 CentOS 的网站上,鉴于Centos事实上是Red Hat资助的社区发行版,Centos 7应该很快会发布。 RHEL 7.0 支持 64 位 AMD/Intel、IBM POWER7/POWER8/Syste...

断崖逐梦
2014/06/12
74
0
RedHat 7配置keepalived实现HAproxy群集

在之前的博文中,我搭建了一个1台HAproxy+2台Apache的WEB负载均衡测试环境,然而1台HAproxy终归存在单点故障的风险,如果能使用2台HAproxy做高可用,形成主备群集,对外提供一个VIP在两台HAp...

jianlong1990
2017/03/10
0
0
RedHat 7配置keepalived实现HAproxy群集

在之前的博文中,我搭建了一个1台HAproxy+2台Apache的WEB负载均衡测试环境,然而1台HAproxy终归存在单点故障的风险,如果能使用2台HAproxy做高可用,形成主备群集,对外提供一个VIP在两台HAp...

jianlong1990
2018/06/26
0
0

没有更多内容

加载失败,请刷新页面

加载更多

BuildRun低代码开发教程八节 | 图表和仪表盘展示

课程说明 ▍ 1.1 课程实现功能 本课程为物联网应用平台设计一个仪表盘首页,包括以下内容: 卡片展示设备总数; 卡片展示网关总数; 卡片展示产品总数; 卡片展示产品分组总数; 图表展示各运...

BuildRun团队
6分钟前
0
0
JavaSE第03篇:Java基础语法之运算符和流程控制

本章将会延续JavaSE第02篇,详细讲解Java基础语法中的运算符和流程控制中的顺序结构、分支结构。 第一章:运算符 运算符,简而言之就是运算的符号。 我们通常所理解的运算一般和数学有关系,...

雷哒哒
9分钟前
3
0
jenkins更换清华源

[root@localhost ~]# find / -name "default.json" /var/lib/jenkins/updates/default.json[root@localhost ~]# sed -i 's/http:\/\/updates.jenkins-ci.org\/download/https:\/\/mirro......

MadDragon
21分钟前
13
0
springboot 学习

1、搭建环境 helloworld http://c.biancheng.net/view/5316.html 或者懂了直接上这个网站建: https://start.spring.io/ 2、整合jdbc...

深夜里写着琴弹着代码
28分钟前
16
0
如何检查Android上的互联网访问? InetAddress永远不会超时

问题: I got a AsyncTask that is supposed to check the network access to a host name. 我有一个AsyncTask应该检查网络访问主机名。 But the doInBackground() is never timed out. 但是......

技术盛宴
30分钟前
18
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部