解慧静
(中国电信江苏公司政企客户事业部,江苏 南京 210000)
大数据时代来临,为了实现不同云之间数据共享,多云部署已成为企业的新常态。IBM发布的关于全球云计算市场的最新调查研究报告结果显示,只有3%的企业在2021年依然采用单体云架构,而2019年这一比例还是29%。国际知名软件资产管理商Flexera在2021年发布的云状态报告显示,92%的企业在IT架构上选择多云战略[1]。随着企业IT架构日益复杂化,多云战略已经是当下大多数企业的选择。
数字产业化及产业数字化背景下,企业要求实现数据的充分流动,采用多云架构部署,由于每家云服务商提供的服务、资源、特性不尽相同,多云不仅能复用不同云厂商能力,也能促进不同业务类型的数据充分共享,可以与不同平台的云厂商开展更多的合作。
多云本质上提供了一种流量跟架构的隔离能力,基于这类方案,可以做到不同单元的多层级隔离。大部分企业每年都会有新的架构和技术创新项目,而多云可以实现架构演进的演练,并与原有业务进行隔离,保证业务稳定的同时还能持续创新。
业务系统的多云架构部署可有效提升应用的高可靠性,保障业务连续性,不会因为某一家云服务商出现问题,进而导致自身整体业务中断。不同的云之间可以做数据备份,进一步增强业务系统安全性。
各云商的通用组件如OS、中间件、容器都是与云分离的,无论何种云环境下,都可以使用Chef,Git,Docker Hub等管理工具,多云之间的差异体现网络以及云API接口(端点、协议)的不同,因此在设计多云时需重点关注以下两个方面[2]。
每个云商都建有自己的数据中心,如果没有网络连接,多云之间就无法互相通信。通常情况下,云商内部相同region的多AZ互联要求构建二层网络,而云商之间互联一般采用3层网络,具体实现可以使用UnderLay或OverLay组网技术[3]。
目前,各种公有云、私有云的组件及API接口与标准的OpenStack相应组件基本类似,但从功能或版本上来看,并不能完全兼容,因此需要一套统一的聚合管理机制,消除这些差异。
多云专网的实质是实现不同云内的VPC间的安全可靠组网,即要确定位于不同云的VPC对应的CIDR,然后分别调用相应的API创建对等连接,最后配置对等连接端点的路由并组建VPN。多云网络服务的最终形式和内容是趋同的,但底层网络的技术的不同会带来服务品质、交付时长以及运维服务层面的差异。目前,国内外多云互联的组网方式,主要有以下3种:
专线网络的实现通常需要借助运营商的服务,专线也是运营商云间组网的首选,目前各大公有云商均提供了专线接入服务,比如天翼云的云网PoP服务、腾讯云的 Direct Connect。用专线连接多云分为两个步骤,首先是确定专线的技术选型,构建物理网络,其次是逻辑专线的开通。
专线选型可根据距离、成本等因素确定,运营商目前能提供的专线服务包括OTN,MSTP,MPLS/VPN等多种形式,在具体网络建设时,可以采用基于OTN网络、裸纤等Underlay组网方式,也可也采用基于运营商163、CN2等广域以太网作为底层网络承载MPLS/VPN组建Overlay专网。物理网络搭建好后,即可划分私有ASN号,通过BGP路由来控制云间通信,构建多云通信专用隧道。需要指出的是在多云网络设计时应提前规划多云互联的网络地址,避免IP地址冲突问题发生。
互联方将以太网光纤电缆链接到POP交换机后,即可通过专线虚拟接口开通逻辑网络,该虚拟接口由AS号、Vlan ID、端点ID及连接双方的CIDR等信息构成,在对云商的专网 API端点发送请求并鉴权认证成功后,先调用创建API创建虚拟接口,再调用配置API分配逻辑专线,即可开通逻辑专线。
这种组网方式是互联网云商采用的主流互联技术,近年来,借助自身敏捷高效的互联网基因与先天技术优势,互联网云商开始尝试越过运营商,通过SD-WAN,Overlay SDN,IPsec VPN等技术搭建基于互联网的专线连接,实现自身资源池间以及跨云商资源池互联互通能力。该技术通过在各公有云中设立的VGW支持多个VPN路由器供应商的IPsec通信,并借助SDWAN技术,通过VGW作为中继,实现由多条IPsec VPN构建的云专网。2018年,阿里云上线云企业网,借助自己的云间互联(云承载网络)为自身的客户提供“云+企业组网”一体化的IT上云服务。
在多云的场景下,行业中正在涌现一类角色,专业实现多云间的流量交换,通常被称为CXP,Cloud Exchange Provider。公有云中分布在不同Region的VPC,企业分布在不同地域的分支或数据中心,彼此之间以CXP作为连接的枢纽进行流量的交换,实现跨云商跨云资源池的互联[3]。CXP具有中立性、流量对等、微利性等特点,从技术层面看,Cisco公司提供的Intercloud Fabric较为成熟,可以在任何线路上建立安全的网络路径,并支持与Openstack的对接。国际上知名的 CXP有Equinix等公司,可以提供区域内或全球云网络互联。
相比而言,互联网VPN的组网方式更为灵活、便捷,可以通过SDN技术实现从用户接入点到云内VPC网络VPN专线端到端的实时开通交付;运营商的专线互联组网方式在QoS上更有保障,而在整体组网上,因接入层面、云间、云内采用的网络协议及技术各不相同,需要逐段打通专网,耗时较长。随着SRv6网络编程技术的发展及新型城域网、云骨干网建设运营,运营商的下一代多云网络在服务质量及端到端敏捷服务方面会有更长足的进步;第三方多云交换网络目前在国内还没有真正兴起,但该市场空间潜力巨大。
对于云商来说,未来应充分兼容各种多云专网接入方式,需设立独立的云网PoP接入点,该POP点内配置物理POP交换机、VPE、SDWAN GW,分别用于支持UnderLay,OverLay及IPsec VPN等多种云间网络的对接;设立专门的互联网接入区;通过VRouter连接云内的VPC,云网PoP点内还应设置超级互联网关,用于连接各种外部网络及云内网络。多云网络互联设计,如图1所示。
图1 多云网络互联设计
Openstack环境下,人们通过提供nova、neutron等命令对计算、网络资源进行操作,提升了对虚拟化资源的管理效率,这需要依托相应的API指令的执行,云API一般以RESTFUL风格提供给用户,即通过 http协议和JSON格式的数据进行交互。不同云的API端点、指令各不相同,在多云环境下,要实现多云的聚合管理,要充分考虑多云间的API通信方式设计。
多云之间的通信路径分为业务通信和信令通信两种,业务通信可以通过全局DNS进行解析,信令通信需要为跨云调用API建立专用通信路径,该路径的建设的重点是内部DNS转发设置及认证。
4.1.1 DNS转发设置
在设计路径时,首先要考虑多云中各云服务的API端点存放于何处,其次是要对端点的FQDN进行域名解析。设想一个天翼云和A云组建多云的场景,A云的服务端点是aXyun.com的子域,对应相应的EIP地址,而使用天翼云搭建的环境中,服务端点则处于ctyun.cn的子域。因此,在多云互联时,需要配置统一的API端点访问路径。如果是在A云内部,那么VPC中默认对A云进行域名解析,但如果从天翼云使用A云的端点,由于命名空间不同,首先要解决域名解析的问题,比如当目标地址为aXyun.com 时,从天翼云环境解析A云域名内的端点时,应在天翼云DNS服务器上转发至A云的DNS服务器的配置,随后的域名解析就都能在A云内部进行处理。
4.1.2 路由访问策略
不同公有云之间需配置BGP路由,BGP的对等连接会广播邻近VPC的CIDR,从A云来看,只有目标属于天翼云 VPC(如:10.0.0.0/16)的请求才能通过专线,因此,我们需要在A云侧配置代理服务器,使用代理服务器将请求送达A云 API端点。出于安全方面的考虑,代理服务器上配置白名单,仅允许特定目标地址的请求通过,因此我们需要预先确认端点与服务的FQDN,以及配置代理访问策略。
4.1.3 安全认证机制
相同云中的内部访问时,其认证机制和keystone类似,将IAM角色分配给服务器,确定其访问资源、访问动作及访问结果;而当调用他云的API时,除了使用 Https协议保证通信安全外,还需要验证客户终端的真实性,防止数据被篡改,因此每次请求API时都必须加入该用户账号的签名,签名信息由HMAC(基于哈希的消息验证代码)函数计算得出,并放置在Http消息头中。
多云环境中的差异体现在不同云的不同组件之间,无论是API的端点还是服务内容都没有相似之处,比如ECS和Nova都能处理服务器资源,为让用户无差异操作两种资源,API要尽量统一。而现实是,不同云之间运行兼容的 API非常困难,直接调用API情况下,操作方必须对对方的API端点及指令有全局性的掌握。
通常会引入专用工具,如各云商自有的CLI、SDK、Console等,会对具体的操作进行封装处理间接调用API;开源的第三方云管理组件,如Libvirt提供了对于Kvm,Xen,Esx多种虚拟化环境的API兼容支持,Ruby提供了兼容多云的SDK环境,RightScale是著名的Console多云管理工具。第三方开发的商用多云管理软件,大都基于开源软件进行二次开发,具有更好的亲和性和健壮性,目前业内主流的多云管理平台,如中国电信的云聚管理平台、华为的云Stack,均兼容多种云环境的API,并在此基础上提供了整体资源管理、运维管理、运营管理、客户门户等服务模块,可以助力客户快速架构多云运营服务系统。
用户可以使用不同服务商的云基础资源,通常的应用场景有:企业的IAAS资源来自不同服务商,这些资源间的组网互通;企业分支机构位于不同云商的不同region,相关系统的拉通;跨云商的异构云资源构建业务灾备系统。在具体实施过程中需要关注每个IAAS环境下的数据中心与网络,以及不同云环境中的API调用[4]。
不同云服务的能力是有差异的,比如天翼云的优势在于IAAS等云网资源,并能提供物理机及HPC服务,阿里云的研发能力强大,其PaaS的性能、健壮性更高。利用这两种资源互补架构系统时,阿里云的PaaS必须能够操控天翼云IAAS 的API,比如要读取相应的VPC信息。
该模式相对简单,从其他云上采购SaaS服务,用户在使用 SaaS时,无须关注后端的IaaS的API,由 SaaS进行对接。
目前各大云商均推出了自身的大数据服务及多云互联服务,而企业在多云战略上不仅限于简单地部署多云,而需要更多场景化服务的内容与能力,灵活地在不同的云间存储数据、调度算力,更好地响应业务发展需求。展望未来五年,围绕着大数据和多云应用,必将有更多的技术创新,诞生全新的商务模式。