抽选了一些博友的一些比较典型的问题作答,欢迎参与讨论
 
1、问:lvs方案是否适用于windows环境?
答:可以。目前lvs转发器只支持linux等,但真是服务器就可以是各种操作系统及应用。问题的关键在于设置windows的虚拟ip的掩码为4个255。
 
2、问:用户状态是怎么保持的?
答:对于bbs这样的应用,需要保持这个会话,如果没这个功能,用户将永远不能登陆(因为登陆界面是一个真机,点登录按钮后可能是另外一个真机了)。会话保持的功能在lvs控制器部分完成,具体表现在keepalived.conf文件的persistence_timeout 选项。
 
3、问:应用程序之间怎样实现数据同步?
答:数据同步是一个不得不面对的问题,在真实的场景中,有不少方案是rsync,说实话,如果同步的机器数量到一个级别,这将是非常混乱的一个问题(很难分清是谁同步谁),而且耗费大量的网络资源。建议采取共享存储的方式来实现,这样就只有一份数据,不存在同步的问题了。这个对j2ee 这样的开发应用同样适用。
 
4、问:不同idc机房的lvs,如何实现不同地域的客户就近访问lvs服务?
答:这个问题与lvs本身关系不大,与dns有关。在bind 9中,有一个view的选项,专门用来实现这个愿望的。具体的设置就是在named.conf 中添加view子句块。
 
5、问:负载均衡性能调优有哪些?
答:这个问题很有挑战性,因为整个方案是一个整体,调优设计本身的设计,系统,程序,数据库等等,是一个动态过程,所以一言难尽,也难包罗万象。就调优这块,就可以做一个专题了。
 
6、问:开源的squid等做负载的效率跟F5比较怎样?
答:有些开源工具带负载均衡模块,如apache,tomcat等,这些功能有点像手机带的照相功能。这里讲的squid它的主要作用是缓存内容,而不是我们方案中所介绍的lvs。在cdn技术中,常常用lvs来负载squid应用呢!F5是一个硬件,它与lvs开源方案实现相似的功能(有缓存功能),至于性能,没什么直观的经验。
 
7、问:几个相同的应用入bbs、blog、www叠加在一个apache上面,这个机器的i/o和负载会不会稳定?
答:这个方案的出发点就是要解决负载问题。前端的调度器(lvs负载器负责转发请求)会根据各服务器的负载状况分配任务,如果真的引起较高的负载(每个真机负载都很高),我们这个方案是可扩展的,再加机器即可!