admin 发表于 2020-6-21 10:12:04

基于云原生的Service Mesh技术架构图

基于云原生的Service Mesh技术架构图来源:《信息通信技术》期刊。作者:李铭轩; 童俊杰; 刘秋妍


基于上述架构,每一个微服务有一个单独的边车组件(Sidecar)负责和外部进行注册、路由等管理,微服务内部应用逻辑单元只和边车组件进行交互。通过这种方式,可以减少由于外部结构变化或者其他组件变换造成的整个微服务化架构的变动,而只需要考虑微服务组件内部各应用逻辑单元和边车组件之间的交互,而对外通信统一由边车组件来负责。
目前Service Mesh作为一种轻量级的微服务间通信架构已经普遍被业界所采纳,同时基于这种架构思想,
在云原生领域也孵化了很多开源项目,如Linkerd、Envio、Istio、Consul等。这些项目目前也普遍应用到微服务场景中,其中Istio是明星项目,由于其是谷歌、IBM和Lyft联合开源的,因此Istio从开源之初就受到了业界广泛的关注,也是成长比较快速的一个开源项目;同时由于是谷歌开源的微服务框架,因此Istio除了本身功能强大之外,在和Kubernetes耦合上又天然具备优势,随着Kubernetes在业界不断被推广和应用,Istio也逐渐受到大家的普遍青睐。



基于5G核心网网元的服务化架构主要是基于Istio的通信机制,在创建网元Pod的过程中直接绑定IstioProxy,通过IstioProxy来实现各网元在Istio架构上的通信。本文以NRF和NSSF网元的微服务化为例,其微服务化架构部署如图6所示。
基于上述5G核心网网元的微服务化架构,每一个网元在创建Pod时,直接绑定IstioProxy作为该网元的Sidecar,由IstioProxy负责在整个Kubernetes集群里面的Istio通信网格上进行对外的通信和HTTP的访问交互。
基于此方案可以实现5G核心网网元的分布式部署,同一NSSF网元可以部署在不同的Kubernetes节点上,也可以实现nssf网元的横向动态扩缩容,基于5G核心网承载能力以及业务需求,可以在短时间内在不同节点上创建多个副本,从而解决5G核心网业务转发量大时出现的拥塞问题;在闲时,也可以实现资源的回收,以便于为其他网元提供更多的资源;最为重要的是,基于服务网格的微服务架构可以实现网元的独立部署,在一些5G专网的应用场景中,可以结合实际场景需求选择制定的核心网网元进行组网,而不需要重新打包配置。
目前Istio微服务架构支持HTTP的通信模式,同时也支持gRPC、TCP等多种网络传输协议,满足了基于SBA架构下的5G核心网网元之间的传输协议等要求。


页: [1]
查看完整版本: 基于云原生的Service Mesh技术架构图