关于容器的争论一直在发酵,其中一个焦点是“什么样的操作系统最适合容器化应用”
云计算对于简化部署、缩短上线周期和应用自动伸缩有着强烈的需求,因此容器技术越来越炙手可热。基于Linux的容器技术为应用程序的开发、测试和发布提供了一个简单易用的打包工具。
容器的设计初衷旨在让开发者更简单更快地创建一个完整的应用运行环境。传统的应用部署方式要求开发者检查系统是否满足部署的最低要求,容器技术将开发者从这些繁杂的过程中解脱出来。
除了给开发者带来方便外,容器还有很多优势。Linux容器打包技术适用于任何类型的服务端应用,并且不受环境限制,它可以运行在桌面机器上、云上,或者任何有Linux的地方,开发者也无需关心Linux发行版的内核版本。相对虚拟机来说,容器更加轻量级,这就意味着在同一台机器上,使用容器可以承载更多的服务。更高的资源密度意味着可以减少资源成本。
关于容器技术的很多争论依然存在。例如,企业将必须决定采用哪种私有云基础架构(最重要的是什么操作系统)在容器中运行。在2015年的时候就有很多人预测将会有一种轻量的操作系统脱颖而出,然而至今仍然没有广为接受的轻量级技术出现。我们预测,2016年将仅仅是平稳发展的一年,轻量级OS在数据中心的兴起比预期更慢。广泛采用容器技术的另一个重要障碍是可迁移性,Linux容器'“write-once, run anywhere”哲学对于简化应用开发和跨云部署非常重要。
2015年的“容器开源倡议”获得了业界的广泛支持。无论LXC还是Docker,都在所有主要的Linux发行版和分发Linux中容器的云应用中受到广泛欢迎。
我们可以看到,此倡议正在促进容器便携性的规范化进程,这样以后就不用依赖任何的商业供应商或项目便可以实现在操作系统、硬件以及云端之间的跨平台操作。
容器可能是简化应用部署的最终解决方案,但随着这项技术在企业中普及,用户会将相关标准进一步提高。所以哪些企业的工作量级目前适合用容器?未来应用程序供应商是否有必要对它们的解决方案进行容器化适配?或者容器技术是否会发展成为适应所有应用程序?抑或是两者的结合?我们拭目以待。
就容器管理问题,相对于虚拟机的发展历程,普及容器技术所面临的挑战是指数级的。对虚拟机做监控并不难,因为大家都知道如何操作,但是大多数企业还没有建立容器应用监控系统。例如,使用容器的时候,内存和CPU都是共享的,甚至磁盘也有可能共享。
这种情况下,我们会遇到一些问题:
如何计量和收费?
IT管理人员或业务组如何直观地看到DevOps组在容器中部署了什么?
如何判断创建容器的镜像等资源是否是可信的?
如何能有效对抗隐藏在容器内的安全漏洞?
针对具有大规模容器的系统如何实现身份管理和访问控制?是否有为了满足安全交付标准化而进行的审计和测试,如同在虚拟机和裸机那样?容器能支撑多大规模的系统?
谷歌的Kubernetes一直是集群部署容器的热门选择。2015年Docker发布了自己的容器管理工具Swarm,它提供了原生的集群管理功能。Docker表示,Swarm已经在多达一千(1000)节点和五万(50,000)容器的规模下进行了测试。在2016年,容器集群将会取得持续显著发展,我们会看到容器技术能支撑的规模能否达到企业级要求。
高可用性也将成为容器一个显著的挑战。对于大部分基本的故障转移,现在的容器技术仍然相当简陋。企业同样也需要其他的高可用特性,例如,滚动补丁是在云端维持正常运行的关键。目前打一个内核补丁就会让该机器上运行的上百个容器应用掉线。
当说起云计算的时候,容器技术也会相应的被提及。使用容器进行大规模的应用交付,包括自动伸缩、内容审计、合规性验证、高可用性、生成报告和管理可视化(物理服务器,虚拟机,容器),这些企业级别特性必须被添加进来。而这些都是企业级客户所需要,而软件供应商尚未满足的特性。
总的来说,容器只是IT解决方案的一部分,IT世界也不会在一夜之间都开始使用容器。一个企业可能拥有多层的应用程序,它由少量的Docker前端或LXC前端,几个中间层VM和几个具有物理和虚拟设备的后端物理数据库服务器混合在一起。企业需要应用正常运行,所以网络、存储、管理和监控工具需要跨越物理机、虚拟机和docker容器等多种介质。
当然,容器可能不是部署云应用的唯一答案。Hypervisor、Unikernel等工具也是微服务应用部署的候选,这些工具因为消除了传统的操作系统,启动速度也很快。这些属性在高度分布式应用环境中具有非常大的价值。
毫无疑问,解决企业需求将是容器技术快速增长的关键。而2016,我们正处于最好的时代。
原文链接:http://www.networkworld.com/article/3065049/cloud-computing/what-s-on-tap-for-linux-container-technology-in-2016.html#comments
您也可以关注我们的官方微信公众号(ID:ctoutiao),给您更多好看的内容。