APP下载

基于混合云构建企业应用

2019-09-24周平钟方伟

电脑知识与技术 2019年21期
关键词:负载均衡

周平 钟方伟

摘要:该文主要阐述国内外混合云发展情况;然后分析如何基于混合云构建企业应用。

关键词:混合云;专有云;云服务器;云数据库;对象存储;负载均衡

中图分类号:TP393      文献标识码:A

文章编号:1009-3044(2019)21-0059-03

开放科学(资源服务)标识码(OSID):

Abstract: This paper mainly expounds the development and application of technology related to Hybrid Cloud in China and abroad, and how to build enterprise applications on HybridCloud.

Key word: Hybrid Cloud; Private Cloud; ECS; RDS; OSS; SLB

1 背景

混合云是未来的发展趋势。未来的云计算一定是以应用为中心。传统开发模式是全模式。基于云平台的开发模式,能使企业只需要专注于业务和应用开发本身, IaaS解决资源快速创建,PaaS解决noOps运维问题,提升开发和交付速度。

2 混合云现状

2017年6月,Nutanix 2017年NEXT大会上,谷歌宣布和Nutanix达成战略合作关系,双方将共同布局混合云市场。随后,谷歌云宣布推出全新一代私有云平台,旨在为企业更好地部署混合云环境。

2017年7月,微軟Inspire全球合作伙伴大会上,正式发布混合云应用服务Azure Stack。

2017年8月,在VMworld 2017大会上,亚马逊AWS与VMware发布VMware Cloud on AWS,将为企业充分利用混合云环境创造了新的条件。

2017年8月,公有云与Zstack达成混合云战略合作,提供无缝连接的混合云服务。

Gartner2017年全球IaaS魔力象限四强云服务商的混合云战略都已尘埃落定。但在Gartner2018年基础设施即服务魔力象限中,Gartner大幅缩小了这个领域,只剩下六家供应商:AWS、微软、谷歌、公有云、Oracle和IBM。

Gartner预测,到2020年,90%的组织将利用混合云管理基础设施。

3 混合云架构

基于企业专有云平台、公有云平台构建企业业务中台,提升业务创新和快速响应能力。

3.1 物理架构

通过物理专线构建本地—远程互联网络(如下图所示),从而连通本地数据中心和公有云公共云。

基于互联网实现IPsec隧道和高速通道(Express Connect)连接本地专有云和公有云公共云,使得“本地—远程”在三层网络可达下互访。

3.2 架构原则

应用架构设计需遵循最基础的概念,选择适合企业自身、业务需求的架构进行设计。

1)分布式部署

应用与数据库独立部署。或系统中的多个模块部署在不同服务器上(如微应用),或两个相同功能的应用分别部署在不同服务器上(如满足高并发)。

2)高可用

系统中部分节点失效时,其他节点能够接替它继续提供服务。

3)集群

一个特定领域的软件部署在多台服务器上并作为一个整体提供一类服务。在常见的集群中,客户端能够连接任意一个节点获得服务,并且当集群中一个节点掉线时,其他节点能够自动切换继续提供服务。如Zookeeper中的Master和Slave分别部署在多台服务器上,共同组成一个整体提供集中配置服务。

4)负载均衡

请求发送到系统时,通过某些方式把请求均匀分发到多个节点上,使系统中每个节点能够均匀的处理请求负载。

5)正向代理和反向代理

正向代理是代理服务器代替系统内部来访问外部网络的过程,反向代理是外部请求访问系统时通过代理服务器转发到内部服务器的过程。系统内部要访问外部网络时,统一通过一个代理服务器把请求转发出去,在外部网络看来就是代理服务器发起的访问,此时代理服务器实现的是正向代理。当外部请求进入系统时,代理服务器把该请求转发到系统中的某台服务器上,对外部请求来说,与之交互的只有代理服务器,此时代理服务器实现的是反向代理。

3.3 应用架构

在应用服务器上分别部署Tomcat,使用反向代理软件(Nginx)把请求均匀分发到每个Tomcat中。此处假设Tomcat最多支持100个并发,Nginx最多支持50000个并发,那么理论上Nginx把请求分发到500个Tomcat上,就能抗住50000个并发。其中涉及的技术包括:Nginx、HAProxy,两者都是工作在网络第七层的反向代理软件,主要支持http协议,还会涉及session共享、文件上传下载的问题。

业务层面,数据库按业务分库,把不同业务的数据保存到不同的数据库中,使业务之间的资源竞争降低。

数据访问层面,把数据库划分为读库和写库,读库可以有多个,通过同步机制把写库的数据同步到读库。对于需要查询最新写入数据场景,可通过缓存中处理,通过缓存获得最新数据。其中涉及的技术包括:Mycat,它是数据库中间件,可通过它来组织数据库的分离读写和分库分表,客户端通过它来访问下层数据库,还会涉及数据同步,数据一致性的问题。

因此基于以上架构设计因素,考虑实际业务需求,公有云提供ECS,部署访问portal,通过nginx做并发访问分流;通过公有云VPN通道,以IPSec隧道方式打通公有云VPC网络与专有云VPC网络。专有云提供云路由、ECS、RDS、OSS。云路由打通专有云VPC与公有云VPC,并提供负载均衡功能。ECS部署应用,云数据库RDS提供高可用云数据库RDS。是一款PaaS层的企业数据库云平台,支持线下机房自建数据库、公有云RDS,混合云数据库的统一管控,支持MySQL,Oracle,Redis,PPAS等数据库全生命周期管控。满足主备架构、读写分离、同城容灾等的高可用需求,通过任务管理、监控告警、性能分析等实现数据库自动化运维。

面向对象存储服务OSS。提供多种数据处理能力,包括图片处理、视频截帧、文档预览、图片场景识别、人脸识别、SQL就地查询等,并无缝对接Hadoop生态以及阿里云函数计算、EMR、数据湖、批处理、大数据、关系型数据库等产品,使用RESTful API 可以在任何位置存储和访问,容量和处理能力弹性扩展,支持多种存储类型。满足企业多元化数据分析与管理的需求。

4 总结

在实际应用场景中,需要结合实际需求和约束条件,遵循架构原则,选择适合的实现技术,再开展架构设计。对于业务功能相对单一且性能指标明确的系统,架构设计到能够支持系统的性能指标要求就足够了,但要留有扩展架构的接口以便后续的系统集成。对于承载业务不断发展的系统,如电商平台,需要重复考虑下一阶段用户量和性能指标等要求,结合业务的增长不断的迭代升级架构,以支持更高的并发和更丰富的业务。

没有完美的架构,只有适合的架构。

参考文献:

[1] 基于混合云的档案管理信息系统的设计与实现[D]. 北京: 中国科学院大学: 工程管理与信息技术学院, 2016.

[2] 杜劝劝, 王博丞, 刘胜娟. 基于混合云的视频直播系统构建与应用[J]. 中国有线电视, 2018, 394(5): 74-76.

[3] 混合云存储架构的研究与设计[D]. 北京: 北京邮电大学, 2015.

[4] 李峰, 忻展红. 基于混合云计算模式的数字内容分发平台时延性能研究[J]. 信息通信, 2012(5): 24-25.

【通联编辑:谢媛媛】

猜你喜欢

负载均衡
异构环境下改进的LATE调度算法