打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
应用架构的演进与网络架构的挑战

引言:随着云计算业务的发展,应用架构在实现模式、部署升级等方面不断的演进,系统复杂性更多地呈现在模块间的通信协同方面。如何提高系统的稳定性、敏捷性、安全性、有效性,对网络架构提出了更高的要求。SDN技术的不断发展,实现大数据可视化分析、服务拓扑发现、基于策略的应用部署与配置变更验证,以及白名单模式的整体云网与安全解决方案,成为应对挑战、提升企业核心竞争力的关键。




应用架构简介

一个完整的企业架构包括业务架构、应用架构、信息架构、技术架构等方面。这里的企业包括传统企业、互联网企业、数据中心、运营商等。应用架构是由企业的一整套软件体现的构成,通过持续的实施部署与不断的升级改造,以支持企业各种业务的有效运营。而技术架构包括了企业的计算、网络、存储等资源,以及相应的管控与运维系统,是支持应用架构的基础设施。

图1 企业架构


应用架构服务于业务架构,业务架构决定应用架构,决定应用间的服务调用关系和访问逻辑。应用架构依托技术架构部署运行,并保持在一个持续发展和演进的过程中;技术架构、网络架构要能够在兼容现有网络和应用系统的基础上,支持业务的弹性扩展与平滑迁移,同样也始终处于一个持续发展和演进的过程中。

应用架构的演进

应用架构主要经历了从MVC、RPC、SOA、微服务、到服务网格Service Mesh等的演进过程。

图2 应用架构的演进


  1. MVC架构把软件系统分为模型、视图和控制器三个部分,并定义它们之间的相互作用,从而实现模块解耦与模块间的配合。这种模式对应用进行了逻辑功能的分解,通过模块间的接口机制实现相互间的协同。

  2. RPC架构对模块按服务角色与客户角色拆分,抽取出的核心和公共业务作为独立的服务提供给客户端调用。这种模式实现了通信功能与应用逻辑的分离,出现了提供模块间远程网络通信功能的模块。

  3. SOA架构进一步实现了应用程序体系化的组件模型。除了以模块单元的形式提供服务外,还引入了相应的服务注册、治理、发现、调用等基础平台功能。这种模式通过标准机制实现服务的生命周期管理和动态运行的支持。应用模块间通信的范围更广、规模更大,系统更加依赖通信协同机制的有效运行,对相应的网络架构的管控、性能、运维都提出了更高的要求。

  4. 微服务架构通过服务的进一步细粒度拆分、无状态处理逻辑的实现,以及相应的打包、部署和升级等自动化手段,实现DevOps的持续集成与持续交付,极大地提高了系统的运行、运维效率。这种模式对应用架构中的业务逻辑和网络通信等相关功能做了进一步的分解,更多地利用平台提供的公共的支持功能与机制。对业务应用、网络通信的可视化、管控和监控,以及基础网络满足模块间动态、弹性、灵活、大规模的通信等提出了更高的要求。

  5. 服务网络Service Mesh架构将专门处理服务间通信的基础设施独立出来,在云原生应用场景下实现基于服务拓扑的可靠、可控、可视的服务请求与响应的处理。这种模式的特点在于转发面采用分布式的互连代理网络实现,以SideCar的形式部署,服务可以对代理无感知,并且服务间所有通信都由代理进行路由转发;这种架构在控制面实现了集中式的管理、控制和监控运维模式。                                               

图3 应用架构


需要说明的是,应用架构的演进并不只是新老技术的替代过程,更多的是一个发展、聚合、扩展的过程,在当前的应用架构实现中包含了上述各种架构模式的成分。


综述所述,随着业务与应用的发展、扩大,系统越来越复杂,为保证系统的可靠运行、弹性扩展,简化、自动化是必然的要求。在应用架构的演进过程中,系统的复杂性并没有得到完全的解决,只是更多的从业务逻辑呈现到网络通信方面。这就对基础网络的可靠性、敏捷性、性能提出了更高的要求。

网络架构面临的挑战

企业业务的不断发展扩大、应用架构的演进对网络架构的挑战主要体现在以下方面:


  • 云网分析可视化运维

网络架构的实现首先要能够确保网络与应用系统的可靠运行。运维分析可视化是系统状态监控、故障定位的基础;在数据中心的发展过程中,必须要考虑与现有系统的对接、现有业务系统的迁移。在系统采用SDN技术实现自动化弹性扩展、部署与配置变更的过程中,对现有应用的服务拓扑等信息的发现与分析是基础;同时也需要这种大数据可视化分析手段用于支持系统进行配置变更前的验证;这也是实现白名单模式细粒度云网与安全解决方案的基础。SDN建设过程中要首先实施云网分析、监控运维系统。

图4 网流信息采集、分析、可视化


云网分析的实施包括多个层面。首先是基础的网络流量信息采集、分析、可视化;其次是服务拓扑的分析与发现;以及与其他监控系统的对接集成等。 

图5 服务拓扑分析与发现


网流信息需要与服务拓扑信息相结合才能给出系统运行的全貌。如果说拓扑是由一组节点和相应的连线构成的话,服务拓扑的节点或者叫端点则代表进程、容器、虚拟机、物理服务器、及其集群,也可以是它们的组合;而连线则表示服务之间的访问策略、网络流量、或者依赖调用关系等,可以表示节点之间的物理连接、tcp连接。同一服务拓扑的端点可以呈现为相同的属性与粒度,也可呈现为不同的属性与粒度,可以是进程、容器、主机、或者集群。


对于不同的云管平台服务端点对象会有所不同。对于物理服务器Bare-Metal场景,服务拓扑的端点对应为服务器;在IaaS场景下服务拓扑的端点是与虚拟机对应的;在PaaS K8S场景下,服务端点是与PoD、Replica Sets、和Deployments等对应的;最常规的拓扑端点应该是提供相应服务的进程。


云网分析通过将调用关系,网流、统计信息,以及CPU、内存资源占用信息等与服务端点关联起来,并呈现在服务拓扑的节点或连线上。此外,还可以对服务拓扑进行层次、属性等的过滤,从而帮助用户定位资源占用最多的节点,区分属于不同范围、名字空间的节点,或者识别处于不同的运行、停止、故障等状态的节点等。


需要明确的是服务端点相关的信息更多的是通过与相关云管平台或服务器的API对接,或者在服务器、虚拟机上部署相应的探针等机制来获取的;基本上不能只单纯地通过对网流信息的分析得到。


  • 应用部署弹性自动化

在Fabric和服务器虚拟网络层面如何实现服务拓扑与网络拓扑的映射,是SDN网络管控运维自动化需要解决的基本问题。

图6 应用部署策略输出、配置变更验证


为实现服务拓扑与网络拓扑之间映射,SDN需要定义从业务服务组件单元拓扑到SDN网络元素映射的描述模型;要能够通过策略来定义业务网络内部服务组件元素之间的通信与约束;对于服务端点单元与网络元素的对应关系要比较灵活,一个业务元素可以对应一个VLAN、一个子网、一个VXLAN、或者一个Port Group;网络元素的部署需要适用不同的场景、不同的规模,可以是每个网络元素对应一个业务的不同组件:Web、App或DB,对应不同的阶段:开发、测试或生产,对应不同的区域:VPC的租户网络,或者内部网络、DMZ、公共网络等。这是SDN实现业务部署、交付、迁移、扩展、升级等操作自动化的基础。


SDN管控方案的特征就是以业务VPC为单位的部署。对于基于现有系统的升级,如何识别当前的应用部署在大多数情况下需要通过自动化的手段来实现。这是云网分析服务拓扑发现、应用部署策略输出所要支持的另外一种典型场景。在此基础上SDN控制器才能够通过导入应用部署策略实现相应的网络部署、安全与服务资源池的接入等功能。此外,云网分析这种机制可以在进行应用策略变更之前,通过对已有网流数据的查询匹配,对策略的变更进行事前验证,以减少误操作。


  • 业务网络管控与运维

随着应用架构实现模式的发展,在某些场景下,业务网络通信相关功能与应用逻辑实现了完全的分离。网络架构不再只是对Fabric、服务器虚拟网络层面的管控,还扩展到业务网络、服务拓扑层面的管控。SDN技术的演进从Fabric、服务器虚拟网络的自动化管控与运维,拓展到了业务网络。


SDN对业务网络的支持包含两种不同的场景,一种是呈现在三层上的,其转发对象是网包;另外一种是呈现在4/7层上的,与之对应的是服务网格Service Mesh,其转发的对象是请求和响应。服务网格方案同样遵循SDN架构模式,由分布式的数据面应用协议转发代理与集中式的控制器构成。服务网格可以为运维人员提供相应的管控和监控机制,从而实现全局的最优转发决策,能够更好的保障业务与应用的稳定、弹性、高效运行。


  • 云网与安全整体方案      


图7 云网与安全整体解决方案


白名单模式是当前数据中心解决方案中贯穿运维、管控、安全等多个环节的核心概念。这种模式在云网安全解决方案中呈现的是一种细粒度、微分段、零信任的控制策略。其基本原则是只有允许的服务端点之间才能通,此外其他通信都被禁止。这个原则与应用部署策略在本质上是一致的。而这种模式实现的基础是管控与运维的自动化,而自动化的前提监控、分析、可视化。这种模式进一步可以通过与SDN控制器的联动,实现安全策略的动态事件感知与执行。还可以与各种边界以及服务端点的联动实现相应的安全策略。

SDN解决方案的价值

网络作为企业的技术基础设施,本质上是应用架构的支撑系统,是为企业业务服务的。随着应用架构的发展,对网络在规模扩展、弹性升级、管理自动化等方面提出了更高的要求。传统的以设备为中心、基于人工静态配置的模式已经不能适应发展的要求。企业需要通过规划和实施SDN网络架构,将网络资源、网络管理和网络控制统筹布局,提供网络与安全服务能力,通过标准化接口将这些服务开放给业务应用系统,实现自动化部署、弹性变更,从而提升业务扩展升级的敏捷性,提升网络运维效率。实施SDN技术能够带来的价值具体表现在以下方面:

图8 SDN建设步骤


  1. 对网络的使用、控制以及管理实现自动化,更加灵活方便,更加可靠。

  2. 基于意图的软件定义模式,加快业务扩展、升级,以及新业务的部署。

  3. 实现网络的虚拟化、网络与安全服务资源池化,提高资源利用效率。

  4. 实现网络的自动化运维、故障诊断、变更验证,减少人工操作的错误率。

  5. 确保网络以至整个应用系统更好地为企业的业务目标服务。


SDN技术的不断发展,实现大数据可视化分析、服务拓扑发现、应用部署的策略输出与配置变更验证,以及白名单模式的整体云网与安全解决方案,是应对挑战、提升企业核心竞争力的必由之路。


作者简介

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
NFV和SDN关系、NFV关键能力以及如何演进
中国电信网络重构 SDN/NFV实践面临四大挑战
韦乐平:部署5G网络要做减法!
SDN是什么?SDN的价值,SDN架构详解,SDN核心技术,实现SDN的3种途径
软件定义引领广域网重构
【图说网规】SDN网络架构、部署方式及应用场景
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服