5 个发展中的 Docker 技术

云计算
自从大约18个月前Docker发布后,此领域的新技术已呈井喷之态。尽管下面的列表很长,我在此还是要简述下5项Docker相关、并且不断发展的技术,这些技术正在推进云技术的发展方向。

[[123088]]

自从大约18个月前Docker发布后,此领域的新技术已呈井喷之态。尽管下面的列表很长,我在此还是要简述下5项Docker相关、并且不断发展的技术,这些技术正在推进云技术的发展方向。

1) Kubernetes

今夏在 Dockercon 上,Google的基础设施VP Eric Brewer,在谷歌发布了 Kubernetes。Kubernets提供了一种方式来组织机器集群上的Docker容器集。 本质上,它是个调度器,在即使有机器崩溃,也能保证容器的持续运行。 我们看到了Kubernets正被迅速采用,并吸引了很多人的兴趣,这些都超越了Kubernets仅仅是Google的Docker相关云技术这个传闻。我们需要对运营层次(Operations level)上做组织,而Kubernets恰好处理得很好。Kubernets可以创建描述Docker镜像集的配置清单(manifest),并把配置清单放到集群中。这样配置清单可以自动部署、水平伸缩这些容器。Kubernets同时提供了一种定义”service“的方式,service可以被运行在集群上的其他应用使用。

2) Docker Pods

除了Kubernetes,Eric Brewer还谈了容器并引入了"pods"这一概念。pods是Kubernetes的一个核心概念。他说,”在Google我们很少只部署单个容器“。相反,他们把容器组合在一起。例如,一个应用进程通常还包含多个辅助进程,比如logging,还有应用本身不关心的其他任务。

他同时指出Docker容器还需要解决内部及外部端口的映射,即Docker容器内部进程可见的与外部可见的映射。这就多出了一层需要被管理、存储和查询的复杂度(complexity),即使被部署为一个单元的pod内部的容器间也存在。因此,Google给每个pod内的一族容器共享一个IP地址。这意味着容器的内外端口都是相同的。端口可以在设计或者构建时引入。这就免了管理端口这层复杂度。现在要查找运行某些特定服务(service)的pod,只需要这些pod的IP地址列表就好了。

Google计算引擎(Google Compute Engine)是目前***一个把一个IP子网分配给一个虚拟机的云基础设计服务提供者,因此它的每个Docker pod都有自己的IP。

3) Flannel

CoreOS,除了积极参与了Kubernetes,还给出了Flannel (之前叫做Rudder)来尝试解决这个端口映射问题。 Flannel在真实的网络之上层叠了一层网络,这层网络会把一个IP子网分配给一台机器。这样做会有很大的性能开销,但是他们希望随着Flannel的发展,这些开销能被改善掉。

4) Docker For Windows

最近,Microsoft也加入了Docker行列,宣称他们打算为Windows创建一个容器化的解决方案,并提供一组兼容Docker的API。 尽管Linux和Windows容器的Docker镜像不太可能可移植,但意味着在Docker API层之上构建的工具可以在这些操作系统间重用。

大企业在Windows上进行了大笔投资,所以这个声明对想采用Docker的企业IT部门是个重大胜利。

5) Cloud Foundry Diego

Cloud Foundry开源PaaS项目是ActiveState的主要焦点。VMware发布Cloud Foundry后,我们是***个采用者。 当我们的解决方案Stackato在底层采用了Docker后,我们认为源于Diego项目的Docker集成正把此生态系统下的其余部分带上正轨。

Diego 像Kubernetes一样,也是个调度器;但是与Kubernetes不同的是,它的运行环境是不确定的,而且它主要与Cloud Foundry一起工作。Docker只是Diego的一个集成,但却是IBM从事Diego的开发者的***关注点。我们也看到了Diego的Windows .NET集成,如来自Uhuru的版本,当Windows的Docker成为现实后,我确信这些技术将会融合。 Docker 的PaaS集成对Docker的未来相当重要。我们看到开发者成为Docker出现的主要推动力。开发者描述应用的运行环境的能力愈加强大。另外,每个人都可以选择一个Docker化的应用,并马上运行起来,认识到这个事实,已经填补了解决方案不存在的空白。 PaaS这个扩展更关注开发者,尽管其他技术正把Docker从开发者转给运营团队(Operations team)。

结论

这篇文章只触及Docker生态下大量技术的冰山一角。现在Github上有18265个项目引用了"Docker"这个词。几乎每周都有新方案发布,而现存的技术方案每次迭代都是在或者屈服或者适应新形势。Docker生态本身也是在快速发展。

原文出自:http://www.oschina.net/translate/5-evolving-docker-technologies

责任编辑:Ophira 来源: 开源中国社区
相关推荐

2010-08-25 10:10:32

2010-08-25 09:07:03

2010-03-03 17:29:17

Linux Ubunt

2018-08-13 05:03:36

2019-04-29 08:19:54

物联网技术物联网IOT

2018-08-13 16:06:22

2010-10-25 16:10:20

企业虚拟化虚拟安全

2021-03-23 10:26:06

智能建筑物联网智慧城市

2021-01-08 16:25:28

数字货币区块链数据

2021-11-10 19:11:18

大数据大数据应用;农村发展

2020-11-20 11:06:53

数据中心

2017-04-25 16:00:23

2018-07-19 09:40:32

2022-03-21 14:18:26

区块链可持续发展数据块

2022-02-12 11:14:25

物联网安全物联网IOT

2023-05-26 15:00:45

物联网IOT

2010-09-01 09:43:45

无线网络

2015-10-19 14:35:46

安全污染数据

2018-04-17 11:30:03

云计算IaaS公共云

2023-10-08 11:11:45

点赞
收藏

51CTO技术栈公众号