Linux网站架构之服务器与安全规划
1.现状分析
XXX网是一个极具创意的人才搜索引擎网站,目前由两台服务器构成,使用流行的Linux+Apache+Mysql架构,日访问量在几十万PV。该网站处于刚刚起步阶段,目前面临很好的发展机遇,需及时扩容以更好地满足用户访问需求。
2.预期目标
公司管理层希望通过本次网站扩容,使其达到日访问量1千万PV 的大型人才搜索网站;
3.用户需求分析
3.1 总体目标
1.高性能—系统可以采用多样,灵活,适应性好的负载均衡算法实现服务器负载均衡,使流量可以合理分配,提高系统整体的性能。
2.高可用性—系统运行稳定,单一服务器故障不会影响系统有效运行。
3.高安全性—系统具备良好的攻击防御能力,实现对服务器的安
全防护。
4.高可扩展性—系统具备扩展简便的特点,在不影响现有系统整场运行的情况下,可以根据需要增加服务器。
3.2 功能需求
为了适应系统扩展的需要,新的系统需要满足以下功能:
1.服务器的负载均衡
系统中有多台WEB服务器需要实现负载均衡,保证用户访问流量能在各服务器上均衡分配,提高服务器资源的利用率。并且当某台服务器发生故障时能被及时检测到,并且故障服务器将会被自动隔离,直到其恢复正常后自动加入服务器群,实现透明的容错,保证服务器整体性能得到大幅提升。
2. 服务器的安全防护
为了保证WEB服务器正常提供服务,优化后代的系统必须满足对其安全防护的能力。当大数据流DOS/DDOS攻击进入的时候,能保证服务器继续正常稳定运行,并且能防止恶意访问。
3.丰富的日志记录
为了便于系统日常的维护工作,以及在排除故障时有据可依,处于网络核心位置的负载均衡设备必须具备多种详尽的日志记录方式。
3.3 系统性能需求
为了保证系统正常稳定的运行,必须满足以下性能需求:
1. 在一定的访问压力下仍然能提供正常服务。
2. 系统稳定性好,系统响应时间要短(当一台服务器发生故障时,负载均衡设备能及时探测到并将用户访问导向其它服务器)。
3.4 系统安全性需求
为了保证系统有效运行,系统需具备安全防范措施:
1.负载均衡产品本身具有良好的系统安全性,不存在安全漏洞。
2.产品提供安全的访问管理环境。
3.具有一定的安全防护能力,协助防火墙和其他IDS设备构建动态防御体系,防御网络常见攻击和针对WEB应用的恶意访问,提高系统整体的安全防护能力。
3.5 系统可扩展性需求
在网络优化前,需要考虑系统扩展性需求,使系统具备灵活的适应性。
1. 增加后端服务器在不影响现有系统正常提供服务的前提下,增加服务器,扩展系统容量。
2. 其它服务器在不影响系统正常运行的情况下,实现除WEB服务器之外其它服务器的负载均衡。
4.网络架构设计
4.1 防火墙
总所周知,F5负载均衡器具有一定的防火墙功能,但是,作为面向大量各类用户的大型网站,我们推荐使用专业的防火墙设备,提高我们网站的防黑反黑能力,更好地保护我们的网站,而且,还可以在防火墙上配置VPN,更好地控制对我们网站服务器的远程访问端口(比如SSH,远程桌面等)的访问行为,从而提高我们网站的安全性。
本方案推荐使用 Juniper防火墙。作为专业的网络安全设备供应商,Juniper防火墙在性能和功能方面都是业界最优秀,最值得信赖的。我们用两台 JuniperNestscreen防火墙做成双机热备,他们之间实时同步网络连接状态信息,当其中任何一台防火墙出故障了,网络流量会自动被切换到正常工作的防火墙上,不会对用户的访问造成影响,从而提高了我们网站的可用性。
4.2 F5
作为将来的大型人才网站,用户多,访问量大,如何充分地挖掘服务器的处理能力,实现网络流量的负载均衡就成为了网站正常运作的重中之重,因其关系到网站的运营成本,服务成功率,用户体验,等等等等。
我们推荐使用 F5 的LTM(本地流量管理器)作为网站的服务器负载均衡设备。F5的负载均衡产品,是最优秀的负载均衡产品,在功能,性能,可靠性,安全性,可管理性等方面占有绝对优势,是大型网站,比如sina,tencent的首选负载均衡设备。
本方案使用两台 F5 LTM 1500,做成双机热备。
功能优势:
1500 丰富的负载均衡算法可以让我们充分而又适当地利用后端服务器的处理能力,从而减少后端服务器数量,降低成本;
多样化的健康检查机制,能够更好地监控后端服务器及应用的运行状况;
多种会话保持技术更便于我们对会话的管理;
连接优化技术可以减少后端服务器需要处理的用户请求,让后端服务器能够处理更多的用户请求;
HTTP 流量压缩,可以降低网络带宽使用,降低后端服务器负载,简化WEB 服务器维护工作;
性能优势:
1500最大网络吞吐量高达500M,能够处理4百万并发连接,每秒能处理新建连接数3万,完全可以满足我们网站的要求。
高可用优势:
两台设备之间实时同步网络连接状态,从而在其中一台F5设备故障时,自动切换网络流量到正常工作的F5,保持用户访问的连续性。
安全性优势:
厂家自己开发的操作系统,其安全性更好;
内核实现了放 DDOS 攻击能力;
可以通过配置访问策略,实现防止恶意访问,病毒附着等功能;
可以防止后端服务器直接暴露到公网的危险面前;
端口镜像功能方便其他安全设备部署,和跟其它安全设备的联动;
可管理性优势:
实时的性能监控页面,方便我们对网站运行状况的把握;
丰富的日志记录功能,方便我们的维护工作和排错;
4.3 交换机
本方案推荐使用 4 台 Cisco 3560 交换机(前面的网络图中被标记为 SW1,SW2,SW3,SW4),1 台Cisco2960 交换机(前面的网络图中被标记为 SW5)。思科交换设备历来以性能好,稳定性好而著称。我们把这5台交换机作成一个环形网络,实现交换机之间的线路冗余。其中,SW1和SW2 作为核心交换机,在其上配置STP,VLAN,HSRP等,推荐划分3个VLAN:外网VLAN,内网VLAN和远程控制卡VLAN,这些VLAN信息通过VTP在各个交换机之间同步。SW3和SW4作为接入层交换机,直接连接到服务器。而 SW5用来连接服务器的远程控制卡。
4.4 服务器
本方案推荐使用 10 台左右服务器。其中两台服务器用来做数据库服务器,安装 Oracle10gRAC,实现数据库的高可用和负载均衡。另外使用两台服务器作为静态物料服务器,主要用来存放图片,文本等静态文件,建议使用LighttpWEB服务器软件,因为其处理静态物料的速度比Apache高出数倍。由于本网站接收到的用户请求主要是动态查询请求,对我们网站的动态处理的能力要求很高,所以剩下的6台左右服务器,主要用来处理动态查询,以便及时响应用户的查询请求,提高用户体验。另外,在这六台机器上,可以安装LinuxPPTP VPN, Linux 远程无人值守安装等,提高我们网站的安全性和方便管理员的维护工作。
5.设备清单
编号 设备类型 数量(台) 备注
1 F5 LTM 1500 负载均衡器 2 双机热备
2 Juniper Nescreen NS-204 防火墙 2 双机热备
3 Cisco 3560 交换机 4
4 Cisco 2960 交换机 1 可用其它低端交换机
5 PC Server 10 (左右)
6.F5 跟开源软件 LVS, Squid 之比较
比较项目
F5 LVS Squid 备注
去到的交换层次 4-7层 第 4 层(传输层) 第 7 层(应用层) OSI 参考模型
负载均衡算法 支持 12 种 支持 10 种左右 只支持轮询一种
多种健康检查方法 支持 支持 不支持
多种会话保持方法 支持 不支持 N/A
HTTP 流量压缩 支持 不支持 支持
连接优化 支持 不支持 不支持
带宽管理 支持 不支持 不支持
对维护人员的技术要求 低 高 高
可管理性 好 不好 不好
性能 很好 一般 一般
本身安全性 好 一般 一般
防DDOS攻击 支持 不支持 不支持
防火墙功能 具有 具有 具有
防恶意访问 支持 不支持 支持
端口镜像功能 支持 不支持 不支持
双机热备 支持 支持 不支持
7.总结
大型人才网站的健康运作,需要以硬件,软件和管理等多个方面的正确规划和实施作为基础,其中作为基础设施的硬件架构,尤为重要。在本方案里面,我们选择一流的负载均衡厂商F5的LTM产品,一流的防火墙厂商Juniper的 Netscreen 防火墙,一流的交换设备厂商Cisco的交换机,联合打造一个功能完备,性能优异,安全性好,可管理性好的硬件架构,为XXX网的健康发展,打下牢固的基础。(本文出自“邹可见”博客 )