混合云已经逐渐成为系统架构设计师的架构设计选择而变得越来越流行,为什么架构师会越来越多地选择混合云架构呢?快速构建混合云架构要避开哪些坑呢?这都是本文要讲述的内容。

康拓普云平台

公有云有哪些优势?

1、对于业务快速响应的需求

现代企业的业务往往都需要IT基础设施快速响应业务的变化 ,公有云非常适合于快速应对流量突发增长的市场活动所带来的峰值。

2、成本受限的需求

现实中,为了支持市场活动等突发需求必须对于各个层次的资源都准备的匹配容量的资源,这无疑会增加整体成本,公有云按需付费恰好可以补足传统IDC的这个弱点。

3、对于运维标准化的需求

传统的IDC扩容往往会遇到一系列因为服务器配置和环境差异导致的问题,公有云使用虚拟化技术恰好可以解决这些问题。

但要注意,公有云存在一些不足

然而,公有云还有其无法解决的一些问题,正是这些问题导致架构师们不完全使用公有云,而是在一定程度上保留原来的IDC,这些问题点主要有:

1、迁移成本问题

一方面使用公有云可以降低IT系统的整体硬件和运维成本,这是它的优势,但是从另一方面来讲,从传统的IDC完全地迁移到公有云上是需要很大的迁移成本的,这包括为了适应公有云平台而对系统进行改造的人工成本,平滑迁移的时间成本,尤其是对于复杂系统来讲,这些改造、迁移成本是非常高的。

2、数据安全问题

不可否认的是有些时候公有云会出现问题,那么架构师就有必要把这种稳定性问题导致的数据安全问题考虑在内;另外一方面,某些企业对于核心数据不希望完全托付给公有云,不希望被公有云完全绑定,这也是很正常的需求。

3、无法支持需要特殊硬件的软件系统的问题

某些特殊软件系统是软硬件配合的,如某些行业的硬件加密系统,其软件依赖于USB、串口等连接的特殊硬件来运行,而公有云的是不可能让客户连接这些硬件的。再比如许多企业使用范围较广的基于共享存储的ORACLE集群系统RAC、基于共享存储的SAP等企业中常用的需要存储系统的软件,在公有云上还没有非常成熟的解决方案。

4、需要超高的并发连接数或超高的网络带宽数的特殊软件问题

某些服务单台服务器就需要有超高的并发连接数或者超高的网络带宽数,如视频直播中的弹幕场景对网络带宽和服务器性能有非常高的要求,每条弹幕信息需要实时推送给直播房间内的所有用户。高峰期可能有上亿条长链接,单台服务器带宽将达数G。对于类似的这种需求,由于云主机是共享主机资源的,就有可能会发生虚拟无法及时响应的问题。

5、内容或数据在线下等集中生产的问题

对于某些行业来讲,数据或内容是在线下集中产生的,如拍摄现场、生产车间等场景下,数据产生之后希望可以使用公有云的计算能力、分发能力等,这时候只使用IDC或者只使用公有云都无法实现优雅的系统架构。

混合云架构是最佳解决方案

正是由于上面所述的各种问题,架构师正在越来越多地采用混合云架构模式。我们把混合云架构定义为:公有云+IDC。混合云架构,既可以充分利用公有云的弹性计算、按需计费的特点,将前台应用相关的计算、缓存节点迁移到公有云上,同时把不适合于公有云的系统核心组件保留在IDC中。

1、迁移成本

迁移成本方面,可以换取架构变更的时间缓冲,留待系统重构的时候再进行架构变更,而又可以立即享用公有云的优势;我的一个客户,想要把系统平台迁移到公有云上,需要考虑尽量不影响业务的状况下进行迁移,但是累积历史数据量比较大,但是公共互联网的传输速度往往没法保证,在没有高质量的网络通道的状况下很难进行大批量的数据迁移。

2、数据安全

数据安全方面,把核心数据留在IDC中,以保障核心数据的安全,只把需要弹性计算的组件放到公有云中;在过去两年当中,几乎所有的公有云都出现过大规模的故障,这也逼着系统架构师在进行系统架构设计的时候,必须要考虑公有云的容灾问题,而服务器端应用和数据库之间必然要求有高质量的通道才能支持正常运行。因此很多企业希望把数据库等核心系统组件留在原来自己的数据中心里,用自己的物理服务器来运行,这样也可以更好地支持容灾切换。

3、特殊硬件

特殊硬件方面,把需要连接特殊硬件的服务器放置在IDC中,前端的软件系统虽然运行在公有云中但是依然可以通过API等服务使用这种组件。我的一个客户是一套高安全要求的软件系统,它依赖于是一种硬件加密狗插在服务器上才能运行,公有云上就无法支持这种模型,所以该客户只好保持原来的数据中心服务器,而把前端服务器迁移到公有云,这时候就必然要求前端服务器和加密服务器之间有高质量的可靠的连接通道。

4、线下产生内容

一个客户进行现场拍摄,产生大量数据内容,使用公有云的计算资源进行渲染,并使用公有云的CDN资源进行分发。这也要求在现场和公有云间有大容量的、有带宽保证的传输通道。由此可见,混合云在企业上云的过程中是一种非常有意义的架构,它可以在一定程度上让企业同时使用公有云的优势,又拥有传统IDC的特点,不但拥有公有云弹性计算、峰值灵活扩展的特点,同时具备核心数据安全、可以使用特殊硬件的特点。

防止掉坑里,混合云架构的这些缺点要避免

混合云架构虽好,但是在实施过程中却也有不少需要注意的问题,公有云+IDC的混合云架构要想顺畅地使用就必须要有高速可靠的网络连接,可以说,高速可靠的网络连接是成功实施混合云的最重要的保障之一,否则会引发各种的应用故障。混合云架构所需要的网络连接,行业里面又有两种不同的实现模型:一是使用公共internet来进行互联,另外一个是使用专线网络来进行互联。

使用公共internet进行互联一般都会配合ipsec vpn等虚拟私有专网技术来使用,否则会遇到极大的安全隐患。但是只要使用公共internet的方式,不管是否使用ipsec等vpn技术,几乎肯定都会遇到的问题是,公共internet会在网络使用高峰时产生拥塞,这时候就会出现带宽不足、延时增大的问题。因此通过公共internet互联来实现混合云的网络连接的方式是无法可靠地保障混合云软件系统的带宽需求和延时需求的。

另外一种使用专线网络进行互联的方式是现在企业进行混合云架构设计的主要模型。这种架构是必须要求公有云服务商给予支持的,否则用户无法独立完成连接到用户的公有云中的私有网络,自然就无法实施混合云。值得高兴的是现在市面上大多数的著名公有云服务厂商都提供了类似的支持。各大公有云厂商对其产品的有不同命名,像阿里云叫高速通道,腾讯云叫专线接入(DC/direct connect),AWS叫做AWS direct connect,Microsoft Asure叫做Asure ExpressRoute,其它的云服务商有些有公开的产品定义,有些还没有。不管叫什么名称,这些产品的本质都是为了最终实现混合云的专线网络连接。

这些公有云的厂商在帮助客户实施混合云的时候,一般只是负责网络连接进入公有云的界限之后的问题,另外一个端点也就是在IDC内部,大多数情况下企业是会自建私网的,自然也可以管理自己的私网。在IDC和公有云互联的整个链路上,它们两者的外面一般是由第三方运营商来负责实施,这个互联链路,有时候是同城的,有时候是跨省市甚至是跨国的。这时候网络质量就是衡量这种专线网络的重要要素。

使用专线网络连接,最主要的就是两个方面的保障:一是延时方面的保障,二是带宽方面的保障,这两者对于大多数主要关注IDC内部应用架构的架构师往往意识不到它们的重要性。Tcp/ip的基础是路由器,所有的路由器都是基于存储转发模式的,正是由于这个基本原理,所以就决定了internet必然会发生抖动、波动。对于最终用户的服务问题影响不是太大,无非是刷新一下、重试一下就可以解决了,但是对于服务器中运行的服务端应用程序之间的互相访问就是非常严重的问题了,因为它们往往都是对于延时抖动很敏感的,而延时抖动又会直接影响TCP协议的速度。