F5开启云计算之门云和虚拟化

2010-08-31    来源:中国信息主管网    编辑:F5工程师李欣
一.概述 F5公司作为全球应用交付领域的领导者,首次提出了以应用交付为目标的云计算理念,通过网络虚拟化,服务器虚拟化,存储虚拟化,数据中心虚拟化等先进技术,确保了应用

一.概述

F5公司作为全球应用交付领域的领导者,首次提出了以应用交付为目标的云计算理念,通过网络虚拟化,服务器虚拟化,存储虚拟化,数据中心虚拟化等先进技术,确保了应用能够在云计算平台上被安全,快速,高可用的成功发布。

目前全球16大云计算服务提供商已经有14家都采用了F5的解决方案。F5希望能够凭借我们在云计算领域里的丰富经验帮助中国企业搭建出一个稳定可靠,高效,灵活,安全的云计算平台。

二.云计算架构

云计算根据基础设施和服务模式的不同划分为IAAS,PAAS,SAAS等三种类型。各种类型所采用的架构也有很大不同。对于一般企业来说,建议采用分步部署原则,首先从建设IAAS平台开始,在此基础上再逐步建设PAAS和SAAS平台。本文也将主要讨论IAAS平台的建设部署。

云计算架构最终会部署成为跨广域网的多数据中心架构。但在讨论最终整体云计算架构前,需要首先定义单个数据中心下的技术特点,以便满足未来多数据中心架构的技术要求,同时符合分步实施原则。

2.1 单数据中心云计算架构

单数据中心云计算架构中包括3个主要组成部分,分别是资源池,管理系统和表现层。资源池包括了云计算平台中必须包括的各种服务器,存储设备,网络设备和应用软件等。管理系统主要负责对资源池内的资源进行管理,包括负责资源管理,用户管理,任务管理,安全管理等。表现层负责将管理系统分配好的资源集中统一展现给最终用户。可以根据业务要求和最终用户访问压力的大小,与管理系统交互,动态调整对外服务的资源。 

在这种架构下,用户的访问流程如下:

1.某业务部门需要发布某个业务到云计算平台里,首先对管理系统发送请求,通知管理系统发布业务需要多少带宽资源,硬件资源,软件资源等。
       2.管理系统将业务部门的要求发送到资源池。
       3.管理系统从资源池获得相应的资源。
       4.管理系统通知表现层将获得的资源发布出去。
       5.最终用户就通过表现层对资源进行访问。
       6.表现层将用户请求发送给资源池中的资源。
       7.资源池根据客户请求回应应用内容。
       8.表现层将内容回给最终用户。
       9.表现层将最终用户的流量,压力大小,实时地通知给管理系统。管理系统会根据用户的访问压力动态地从资源池里面获取更多或者更少的资源来发给最终用户,从而实现整个云计算平台的弹性的扩展,灵活的伸缩。
      10.业务部门可以基于管理系统来获取到内部资源池里资源的使用效果、使用频率和用户的访问量等信息。

通过这种架构,云数据中心实现了以下特点:

(1)按需使用

可以按部门需求进行资源配置,业务部门只需申请满足要求的CPU、内存和存储等资源,而且可以根据实际资源使用情况调整。

(2)弹性扩展

能够根据用户需求的变化对用户使用的资源进行扩展,扩展的过程中对上层应用是透明的,用户无需对此进行软件和操作系统的复杂配置。

(3)自动化管理

虚拟IT基础设施的管理由管理系统自动完成,管理系统具有系统监控、性能管理、服务质量管理和故障报警等能力。当物理或虚拟资源出现故障时,管理系统能够通过迁移等手段将虚拟机调度到正常的物理设备上运行,还能通过虚拟机备份等手段保证虚拟机服务的持续性。所有这些管理可以无需用户参与,根据策略自动完成。

(4)快速部署

传统的IT设施需要经过软硬件的购买、安装和配置等复杂的过程,而在此架构中建立虚拟IT资源只需简单提交资源需求,瞬间即可完成虚拟IT设施的建立,不但成本低,而且迅速便捷,大大缩短了TTM(Time To Market)。

2.2 多数据中心云计算架构

在多数据中心架构下,云计算同样建议包含3个组成部分,分别是全局表现层,全局管理系统和由多个云数据中心组成的数据中心资源池。同样全局管理系统负责对资源池内的资源也就是各个云数据中心进行调度管理,包括负责资源管理,用户管理,任务管理,安全管理等。全局表现层负责将全局管理系统分配好的资源集中统一展现给最终用户。可以根据业务要求和最终用户访问压力的大小,与管理系统交互,动态调整对外服务的资源。

在这种架构下,用户的访问流程如下:

1.某业务部门需要发布某个全国性业务到多数据中心的云计算平台里,首先对全局管理系统发送请求,通知全局管理系统发布业务需要多少带宽资源,硬件资源,软件资源以及这些资源如何分布在不同的数据中心等。
       2.全局管理系统将业务部门的要求发送到各数据中心的子管理系统,再进一步获得数据中心内资源池的资源。
       3.各个子管理系统将获得的资源情况反馈给全局管理系统。
       4.全局管理系统通知全局表现层将获得的多数据中心资源以单一域名的方式发布出去。
       5.最终用户对全局表现层上的域名发起DNS解析请求。
       6.全局表现层与各个数据中心的子表现层设备通信,获得各个数据中心内的资源使用状况,同时要求各个子表现层设备对最终用户进行探测,来获得最终用户到各个数据中心的网络状况和响应时间等。
       7.全局表现层根据各个数据中心的资源使用情况和用户的就近性原则,为用户解析一个最优的数据中心。
       8.最终用户业务请求发送给这个数据中心内的子表现层设备,再进一步发送到数据中心资源池中的资源。
       9.这个数据中心资源池的资源根据客户业务请求,回应应用内容给数据中心内的子表现层设备,再进一步回应给最终用户。
      10.全局表现层将获取到的最终用户信息,包括地理位置,行为特征,响应速度等,实时地通知给管理系统。管理系统会根据这些信息动态对资源池中的资源进行调整,例如为北方用户分配更多的北方中心资源。为响应速度慢的窄带用户提供加速服务等,从而实现整个云计算平台的弹性的扩展,灵活的伸缩。
      11.业务部门可以基于全局管理系统来获取到各个数据中心内部资源池里资源的使用效果、使用频率和用户的访问量等信息。

通过这种架构,云计算进一步实现了更多特点:

(1)业务连续性

业务连续性可以解决数据中心的安全性和高可用性,保证在数据中心遭受灾难时可以有灾备中心继续提供数据应用服务,使各种业务应用保持正常运转。

(2) 用户智能调度

多数据中心为全国乃至全球用户提供服务,用户访问可以被智能的,基于就近性原则定位到性能最优,速度最快的数据中心,从而提高客户体验,提高整体云计算平台的使用效率。

(3) 弹性扩展

全局表现层和子表现层设备会将用户发送流量的多少等信息通知全局管理系统。如果发现一个数据中心已无法满足要求时,会由全局管理系统自动在其他数据中心分配相应的资源,然后通过全局表现层发布出去,从而实现数据中心的自动弹性扩展。

全局表现层将获取到的用户信息,包括地理位置,行为特征,响应速度等,实时地通知给管理系统。管理系统会根据这些信息,动态的对资源池中的资源进行调整,例如将南中心的虚机迁移到北中心,以满足北方用户的访问需要,从而实现整个云计算平台的资源的自动迁移和集中调度。

(4) 资源集中调度

物理(虚拟)服务器、网络和存储都被组织成资源池的形式,资源池根据上层应用的需求集中调度,统一管理,保证资源在全局范围内高效使用。

 

三.云计算演变步骤

3.1 传统数据中心转向云数据中心

现在很多企业已经在部署了数据中心,未来还有可能建设更多,更大的数据中心。如何能够把传统的数据中心建设成为动态的云数据中心呢?根据我们的经验,一般需要解决3个问题:1.资源的虚拟化。2.服务的高可用。3.自动化弹性扩展。 

资源虚拟化

虚拟化是云计算中不可或缺的一部分。采用了虚拟化技术后,云内的资源才能灵活,动态的根据业务需要进行调整。虚拟化技术主要分为两大类,分别是可以将一台物理设备虚拟成多个虚拟设备的“一分多”技术;或者是将多个物理或虚拟设备整合到一起成为一个大的虚拟设备的“多合一”技术。那么如何将数据中心内的资源虚拟化呢?我们从传统的数据中心都会包含的存储资源,计算资源,网络资源分别阐述。

对于文件存储虚拟化,我们可以采用F5的ARX文件存储虚拟化解决方案。ARX可以部署在多个的文件存储前端,它会把后台的多个文件存储设备整合到一起,对外发布一个虚拟文件路径。前端的服务器的所有读写操作都发送到ARX设备,由ARX发送到后端具体的某台文件存储上。这样通过ARX就实现了对文件存储的虚拟化整合。可以在不中断业务的情况下,灵活的在ARX后端添加或减少文件存储设备。

对于服务器虚拟化,现在有很多成熟的解决方案可以实现“一分多”虚拟化,包括VMWARE,HYPERV,XEN等。这些技术通过细分物理服务器资源的方式,保证物理服务器资源能够被高效的利用。但当业务的压力大到整台物理服务器都无法满足要求时,就需要将这些物理服务器或“一分多”后的虚拟服务器整合到一起,实现“多合一”的虚拟化,以提供更强大的业务服务能力。这恰恰是F5可以帮助用户解决的问题。F5可以通过在这些服务器的前端部署负载均衡设备,将服务器所发布的业务整合到一起,形成一台大的虚拟服务器,对外发布一个IP地址,然后根据服务器的负载状况智能的将流量分配给这些服务器,保证这些服务器资源可以被灵活的调度和扩展。

对于网络虚拟化,许多网络设备,包括防火墙,IPS,VPN等都已经支持自身的“一分多”虚拟化技术。同样,要将这些物理或虚拟的网络设备整合到一起,实现“多合一”的虚拟化,F5是最好的选择。通过在网络设备前端布署F5负载均衡设备,就可以把这些设备整合到一起,形成一台大的虚拟网络设备,对外发布一个IP地址,而实际流量是被智能的发送到后面多台物理或虚拟网络设备上,从而保证这些网络资源可以被灵活的调度和扩展。

同时F5设备自身也支持虚拟化,可以更灵活的与相应的资源配合。

服务的可用性

F5负载均衡的基本功能就是可以保证后台节点的高可用性。无论是网络设备也好,服务器设备也好,存储设备也好,如果任何一个节点出现了故障,F5都会发现,并不再把用户请求发送到故障的节点,从而保证节点的高可用性。

资源的自动化弹性扩展

所谓资源的自动化弹性扩展是指将IT资源可以根据业务需求或用户访问行为,自动化的扩展服务能力。自动化弹性扩展服务能够根据用户需求的变化对用户使用的资源进行扩展,扩展的过程中对上层应用是透明的,用户无需对此进行软件和操作系统的复杂配置。

我们通过F5与VMWARE共同配合实现的自动化扩展方案来了解方案细节。

在这个架构里,F5的负载均衡设备和VMWARE共同构建了一个前端服务器,应用服务器,文件存储组成的三层架构系统。前端服务器,应用服务器都使用VMWARE实现了虚拟化,F5分别部署在服务器和文件存储的前端对外发布资源。平时只有3台前端服务器和3台应用服务器对外提供服务。

当用户访问量增大时,6台虚拟机已经没有办法满足用户需求。此时F5作为表现层的设备,会把用户访问压力状况通知给管理软件VCENTER,VCENTER会根据F5反映的压力状况对虚拟服务器资源作调整,再开启6台虚拟机,并把新增的6台虚拟机的ip,端口等信息反馈给F5。F5再把这些新添加的虚拟机部署到对外发布的服务器组里去,此时就有12台虚拟机对外提供服务,整个系统的服务能力就增加了。系统由原来的6台虚拟机变成现在的12台虚拟机,整个的过程是完全自动化的。

同样,当用户访问量减少的时候,F5会把压力状况通知VCENTRE,VCENTER就会关闭一定数量的虚拟机,并通知F5在对外发布的服务器组中去掉这些关闭的虚拟机。系统就由12台虚拟机又变成了6台虚拟机对外服务,整个系统的服务能力就降低了。

通过这个案例可以看出,整个系统的服务能力可以自动化的随着用户访问压力的大小而调整,无需任何人工干预,真正实现了资源的自动化弹性扩展。

通过解决以上3个问题,传统的,固化的数据中心也就转变成了灵活,动态的云数据中心。

 

3.2 云数据中心转向云计算

在企业建设或转换了各个云数据中心后,接下来就需要将多个云数据中心聚合到一起,形成多数据中心的云计算平台。在这里一般需要解决4个问题:1.用户的调度。2.数据中心间的带宽瓶颈。3.数据中心的高可用性。4.数据中心的自动化弹性扩展和资源的自动迁移。

用户的调度

在多数据中心的情况下,某个用户应该访问哪个数据中心的业务才是最优的呢? 只有用户访问了最优的数据中心资源,才能提升用户体验,并提升整个云计算平台的资源利用率。

从下图我们以某个业务为例,来看F5如何帮助企业解决用户调度问题。


 

在每个数据中心里部署F5的GTM和LTM设备。LTM对服务器提供负载均衡并对外发布服务ip地址。GTM提供对业务域名www.abc.com的解析服务,定义域名对应每个数据中心里的LTM上的业务ip地址。

1.最终用户要访问业务,发起对www.abc.com的dns解析请求。经过一系列dns重定向,client将dns请求发送到GTM1,查询www.abc.com对应的ip地址。
       2.GTM1要求IDC1,2,3里的LTM设备对client的ldns该发起探测,来判断用户到哪个IDC时间最短,路由跳数最少等。
       3.各IDC里的LTM对client ldns发起探测,并把探测结果返回给GTM1。GTM1根据各LTM返回的数据判断IDC2距离用户访问速度最快。GTM1将LTM2上的业务ip地址解析给用户。
       4.用户将业务数据请求发送到LTM2上的业务ip地址来,开始业务访问。

通过这种方式,用户的数据请求被定位到了速度最快的数据中心进行处理,从而提升了用户体验,并充分利用了云平台里的多中心资源。

数据中心间的带宽瓶颈

众所周知,在云计算的环境下,各数据中心间的数据传输量极为庞大。其中包括数据库的数据复制,虚机的迁移,应用系统的image备份等。这些庞大的数据传输都会对固网资源产生很大的压力,带宽成本也会激增。

F5可以通过在每个数据中心里部署WOM设备来加速数据中心间广域网的传输速度。在每对WOM设备间都会建立起广域网加速通道,在通道内传输的数据可以通过重复数据删除,压缩,TCP协议优化,7层QOS等技术来得到3-5倍的速度提升。

数据中心的高可用性

容灾是多数据中心环境下必须考虑的问题,稳定可靠的容灾技术可以解决数据中心的安全性和高可用性,保证在数据中心遭受灾难时可以有灾备中心继续提供数据应用服务,使各种业务应用保持正常运转。但容灾方案需要解决多方面问题,包括数据库复制,应用复制等一系列准备工作,而上文提到的广域网加速也为这些数据中心间的数据传输提供了方便之门,在企业准备好了数据级容灾后,F5可以为企业提供成熟可靠的业务级容灾方案。而且该方案与用户调度完美的结合到一起。

业务对外发布的域名为www.abc.com。业务主要部署在两个数据中心,分别是IDC1和 IDC2。

访问流程如下:

1.用户向全局表现层的F5 GTM设备发送dns解析请求,查询www.abc.com的ip地址。
       2.GTM实时对每个数据中心的可用性作健康检查。
       3.如果IDC2故障,F5 GTM可以自动或手动的修改GTM中的ip地址优先级,将IDC1的ip地址解析给用户。
       4.用户的数据请求转而访问IDC1的LTM1 ip地址。

通过这种方式,F5保证了数据中心的高可用性。

 自动化弹性扩展

数据中心的自动化弹性扩展包括两个方面。1.在某个数据中心自身的资源无法满足用户访问的情况下,全局表现层可以通知全局管理系统,将其它数据中心的资源加入进来,以满足用户访问需求。2.当某个数据中心的资源不适合为用户提供服务时,例如南中心资源不适合为大量的北方用户提供流媒体服务。这时,全局表现层可以通知全局管理系统,自动将南中心的虚拟资源迁移到北中心来为用户提供服务,从而实现资源的自动化迁移。

其具体流程如下:

1.数据中心自动扩展

在这个架构里,F5的GTM与LTM设备和VMWARE共同构建了多数据中心的环境。

当用户访问量增大时,一个数据中心已经没有办法满足用户需求。此时F5 GTM作为全局表现层的设备,会把用户访问压力状况通知给管理软件VCENTER,VCENTER会根据F5反映的压力状况对虚拟服务器资源作调整,将其它数据中心的更多的虚拟机ip地址和端口等信息反馈给F5。F5 GTM再把这些虚拟机部署到对外发布的域名里去,这样整个系统的服务能力就增加了,而且整个的过程是完全自动化的。

通过这个案例可以看出,整个系统的服务能力可以自动化的随着用户访问压力的大小而调整,无需任何人工干预,真正实现了资源的自动化弹性扩展。

2.数据中心间资源自动迁移

在这个案例里,企业有两个数据中心,原来的业务都通过vmware部署在site A,虚拟机通过F5 LTM提供应用交付,通过GTM对外发布域名。现在企业希望将业务自动迁移到site B,F5与vmware共同配合完成了这个壮举。

1.site A和site B内的LTM/WOM建立起广域网加速通道iSession。
       2.site A里的DB数据通过iSession复制到site B。
       3.site A里的虚拟机通过iSession进行vmotion复制到site B。
       4.虚拟机和DB资源迁移完毕,GTM向新用户解析site B的LTM的ip地址,将新用户转到site B访问。当前存在的用户会暂时通过site A的LTM转发到site B的LTM继续处理。

通过这种方式,F5与vmware共同配合实现了数据中心间的虚拟资源自动化迁移。

通过解决以上4个问题,企业逐步将多个云数据中心联系到一起,最终部署成为多数据中心的整体云平台。

总结

如果把云计算比作一间房子,F5就恰如房子的大门,可以智能,灵活,安全的把用户引导进云计算的广阔空间里。F5凭借灵活开放的系统架构和在应用交付领域里的多年成功经验,与众多云领域的友商配合,共同帮助企业建立起云计算的高楼大厦。

1
3