容器是对IT和网络应用程序开发有重大影响的新技术,容器采用的增加改变了基于软件的网络要求,并为服务提供商提供了通过网络功能虚拟化(NFV)实现其虚拟网络的新选择。
容器是一个轻量级的独立软件包,可在操作系统级提供虚拟化来部署分布式应用程序。它不是为每个应用程序启动虚拟机(VM),而是在单个控制主机上运行多个独立的系统(或容器)并访问单个内核。容器技术可以通过开源和厂商处获得,其中包括Kubernetes,Docker,Canonical,CoreOS,VMware,Hewlett Packard Enterprise,Dell,Red Hat等。
容器提供了服务器虚拟化和应用程序可移植性,与hypervisor相比,容器的优势包括:
- 提高应用程序性能
- 每台服务器的容器密度更高
- 与混合云一样,提高了应用程序的可移植性
- 应用程序快速上线或删除
容器还支持DevOps环境,是基于微服务的应用程序的理想选择,并支持本地和基于云的平台之间的应用程序迁移。
容器网络的需求和部署
软件定义网络(SDN)是容器采用的关键组件,单个服务器上容器的数量、应用程序的可移植性以及不断变化的流量模式都需要新的网络功能来支持容器。
规模化的分布式微服务可以在各个容器之间产生大量的网络流量,一个主要的问题是数据中心的东西向流量的潜在增长,甚至是单个服务器内的基于容器的应用的增加。容器网络的关键挑战包括性能、自动配置适当的网络资源、可视性和网络管理。
网络安全是另一个问题,容器解决了一些安全问题(如隔离),但可能会带来其他一些未知的漏洞。目前的一些安全技术很容易支持向容器的迁移,而其他安全技术则不然。网络可以构建在容器软件中,也可以由第三方网络软件(如Cumulus Networks,Pluribus Networks,128 Technology和Big Switch Networks)提供。
容器目前正在由少数云服务提供商和企业部署,通常都是由他们的开发团队进行应用。IT团队在将应用程序构建为微服务时与容器一起报告显著的性能和灵活性优势,由于成熟度、可扩展性和网络问题,很多企业最终都会从开发环境中的容器使用迁移到大批量生产环境中。
容器如何影响NFV
服务提供商刚开始通过最初的试验和概念验证来调查容器给基于网络的应用程序带来的优势,如NFV。服务提供商正在评估各种潜在网络应用的容器技术,包括虚拟客户端设备、5G无线、视频和网络监控与管理。
为了利用容器的优势,绝大多数网络应用程序将不得不被重写。就像迁移到基于虚拟机管理程序的虚拟化一样,领先的独立软件提供商和网络设备提供商将需要花费大量的时间和精力来重新构建和潜在地分解他们的应用程序,以从基于容器的体系结构中受益。
容器是影响IT开发和相关联网需求的新兴技术,IT***应该研究容器开发新的原生云应用程序的潜在优势,服务提供商应该将容器评估为NFV的下一代平台。
企业和服务提供商在部署容器时需要认识到潜在的网络可扩展性和安全性方面的挑战。对于这些企业来说,评估哪些应用程序真正从容器化中受益,对于传统应用程序、虚拟机环境和容器都必须得到支持的领域来说也非常重要。