从VMware在VMworld 2019上发布的公告中,我们可以看到云原生就绪对应用程序的影响主要是使用Kubernetes进行编排的,这明确表示了IT基础架构的重点已经从虚拟化转向容器化。在Kubernetes集群之上实现云原生和工作负载的转移是业界正在遵循的一个关键趋势。
CNCF希望将其项目推向企业IT基础设施和电信服务提供商,以利用新的容器化和微服务方法构建数据中心的核心。
近两年来,NFV和电信用例也开始慢慢转向云原生环境。NFV技术有助于CXO迁移到以VNF为核心元素,由VNF管理器(VNFM)进行编排的软件定义的数据中心。VNF的编排可以使用诺基亚,思科,爱立信,华为和NEC提供的商用VNFM平台以及OpenStack Tacker等开源平台来完成。现在,随着IT领域的云原生迁移,VNF正在成为CNF(云原生网络功能)。
云原生开发的网络功能:
- 使应用程序或代码可移植和可重用(也就是说可以独立于底层基础架构重复使用)
- 允许应用程序在有需求的地方进行上下扩展
- 可以使用微服务方式部署,但不能强制部署
- 适用于弹性和分布式计算环境
云原生开发还使NFV能够采用DevOps,敏捷技术,更重要的是,它允许像Kubernetes这样的容器编排引擎来处理工作负载,这也意味着NFV的核心堆栈中会出现更多的动态性。
早些时候,CNF正处于评估阶段,以检查几个供应商和服务提供商在NFV用例中使用的准备情况。下图展示了VNF在过去是如何被管理的,目前它是如何与CNF一起被管理的,以及Kubernetes是如何成为一个事实上的框架来处理被推送到CNF和VNF的网络功能和应用程序。
Kubernetes
我们现在可以看到,为了处理各种工作负载类型,Kubernetes在各种规模的数据中心中是如何进化的。Kubernetes也正在成为在边缘编排工作负载的选择。我们已经看到了一些针对5G新解决方案的协作,这些解决方案侧重于使用Kubernetes处理容器和使用OpenStack的传统虚拟机。
Kubernetes有几种方法可用于处理NFV用例中的网络功能和应用程序。Kubernetes可以将所有云原生软件堆栈托管到集群中。
如果您是软件或解决方案提供商,Kubernetes可以帮助您编排所有工作负载类型,如VNF,CNF,VM,容器和功能。使用Kubernetes,所有工作负载都可以共存于一个架构中。ONAP是领先的服务编排器和NFV MANO平台,负责处理NFV中部署的服务。专为ONAP开发的Kubernetes插件可以通过多个站点编排不同的服务和工作负载。
ONAP在安装和维护方面存在挑战,同时也会消耗大量内存。为了与Kubernetes合作,ONAP发布了一个轻量级版本,适用于多种NFV架构,它被称为ONAP4K8S。
在某些情况下,应用程序不可能完全脱离虚拟机。某些现有功能需要驻留在虚拟机中,并且不能进行容器化。对于这种情况,可以集成Kubernetes社区KubeVirt和Mirantis的Virlet框架动态管理虚拟机和容器。Kubernetes也可以在网络边缘启用编排功能。基于Kubernetes的控制平面使用的资源较少,因此即使只有一台服务器,它也适用于边缘节点。
Cloud-native NFV stack
Akraino edge stack正在托管一个栈,即Cloud Native (ICN) NFV Stack,其中所有使NFV core云原生化的开发都在进行中。Cloud-native NFV stack项目当前进展如下所示: