`
逸情公子
  • 浏览: 899886 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

搭建LVS+Keepalived高可用负载均衡之旅

    博客分类:
  • LVS
阅读更多

                  搭建LVS+Keepalived高可用负载均衡之旅


声明:
本文因本人想吐槽而写,如果我的吐槽一不小心引起了您的兴趣,那就继续关注我的后续博客吧。


正文:
用LVS和Keeplived搭建个负载均衡服务器集群,你搭建过吗?不管你有没有搭建过,反正我是没有过。前几天导师叫我学一下基于VRRP搭建LVS负载均衡集群,那时我第一次接触了这几个名词。然后就使劲地在网上找相关的文章,第一次认识了章文嵩博士,并有幸观摩了他发表的关于LVS的博士论文。第一次我知道了服务器集群原来可以这样搭建。

之前做过hadoop相关的项目,我了解的hadoop是一个分布式的开源软件,它包含了分布式存储(HDFS)和分布式计算(MapReduce),它其中也有负载均衡的概念。我理解的hadoop中的负载均衡指的是“均衡”地分配存储和计算到各个服务器,通过的是内部的程序调度;而VRRP+Keeplived组合实现的也是“均衡”地分配存储和计算或者WEB服务到各个服务器,但是通过的是网络设置(如路由设置),然后整个集群提供一个虚拟的ip给外界访问,这个ip叫VIP,但具体集群里面的网络设置是怎么样的,章文嵩博士在它的论文里已经说的很清楚了,主要有三种模式:NAT、TUN(IP Tunneling)、DR(Direct Routing),我理解的它们的的工作原理和区别如下:NAT(真实服务器不可太多,LVS主机会造成瓶颈,较少使用)、TUN(采用ip隧道技术,使用较广泛)、DR(重写请求报文MAC地址,没有ip隧道开销,但LVS主机和真实服务器要在同一网段,使用广泛)。话说这篇文章因吐槽而写,那这里我就不细说了,有兴趣的童鞋可以访问:http://www.linuxvirtualserver.org/zh/lvs1.html ,这里再啰嗦一下,打开的网页默认采用的是Unicode编码方式,可能会乱码,只要把浏览器的查看编码方式改为gb2312就ok了。

其实说了这么多,还没有说到我蛋疼的地方。这两天导师叫我自己动手模拟搭建一个集群,给了我测试机器的账号和密码。然后你知道的,我就抱着雄心壮志去搭建了。看着网上的教程我在控制台敲了个apt-get install的命令,发现尽然安装不了,尼玛,我一个字母一个字母地和教程上比对,生怕把命令敲错了,比对若干次之后,你知道的,没错呀。这时我本能地意识到,公司的测试机是不是没联网呀,果然,结果连百度都ping不通。着实比较郁闷啊,不联网叫一个新手怎么搭建呀。没办法啊,那就在自己电脑上开个虚拟机吧,在虚拟机上搭建试试。捣鼓了一会儿,虚拟机弄好了,用的是在vbox中安装的ubuntu,还安装了增强工具实现和主机文件共享。在虚拟机中我同样敲了apt-get install的命令,结果也是安装不了,这时我就纳闷了,以前安装了虚拟机只要主机能联网,虚拟机也能连网的呀,因为虚拟机的网络设置默认采用NAT方式,为什么现在就是连不了了呢?最后听个同事说应该是机器被公司设置了,虚拟机不可联网吧。这时我才意识到公司对网络安全做的是多好啊。这大概就是在公司和在家捣鼓的不同吧。在测试机和虚拟机没有网的情况下,我只好在主机上先把需要的文件下载好,然后共享上去,可是在这么简陋的情况下,我的命令总是报这样或那样的错误,一个错误解决了,另一个错误又来了,真的弄的我身心疲惫啊。最后我果断决定:还是晚上回去在自己笔记本上测试吧,再也不敢在公司机器上做实验了···


小结:
不过我相信我一定能把这个集群给模拟搭建起来的,并且我会全程记录出现的错误,最终形成文档,供以后遇到这个蛋疼问题的童鞋们参考。

 

 

 

 

2
2
分享到:
评论
9 楼 C_LIFE 2012-07-14  
真羡慕你在学校就开始搞这些东西,而我们工作N年后还要开始研究这个。。
8 楼 逸情公子 2012-07-06  
引用
逸情公子 写道
引用
3、将可以上网的机器下的/var/lib/apt/lists/下的文件拷贝到真正要装的机子下

呵呵,主机是window7,虚拟机是ubuntu

你虚拟机改成桥接方式,应该就可以联网了,这样就是一个网段的了。


改成桥接的话,就会自动分配一个ip地址了,在公司里是不行的。在公司里ip地址管的很严的,即使分配了也不能联网。不过告诉大家的是,那天晚上我回去了后,用笔记本电脑把LVS和keepalived安装好了,有时间我会写一篇博客整理一下的。
7 楼 asdcer 2012-07-05  
逸情公子 写道
引用
3、将可以上网的机器下的/var/lib/apt/lists/下的文件拷贝到真正要装的机子下

呵呵,主机是window7,虚拟机是ubuntu

你虚拟机改成桥接方式,应该就可以联网了,这样就是一个网段的了。
6 楼 逸情公子 2012-07-05  
引用
小路加油啊,哥在快盘也会加油的~

你什么时候成哥了啊?
5 楼 luliangy 2012-07-04  
小路加油啊,哥在快盘也会加油的~
4 楼 逸情公子 2012-07-04  
引用
标题党,完全无关lvs,你还不如取这样的标题:联网让我很蛋疼

哎···没有这个经历的童鞋你是不懂得,不过我一定会搞出来的,等着吧
3 楼 zhukewen_java 2012-07-04  
标题党,完全无关lvs,你还不如取这样的标题:联网让我很蛋疼
2 楼 逸情公子 2012-07-04  
引用
3、将可以上网的机器下的/var/lib/apt/lists/下的文件拷贝到真正要装的机子下

呵呵,主机是window7,虚拟机是ubuntu
1 楼 asdcer 2012-07-04  
如果不能联网,可以如下操作:
1、先在一台可以上网的机器上进行一遍左右的操作
2、更新apt-get源即sources.list文件(建议cp一下)
3、将可以上网的机器下的/var/lib/apt/lists/下的文件拷贝到真正要装的机子下
4、然后再执行apt-get install操作

相关推荐

Global site tag (gtag.js) - Google Analytics