阅读更多

1顶
0踩

开源软件

原创新闻 十大正在快速演进的Docker项目

2014-11-19 10:48 by 正式编辑 cao345657340 评论(1) 有10272人浏览
摘要:自从大约18个月前发布Docker以来,在这个领域已经激增了很多技术。当下,每周仍然都会有新的技术出现,今天我们为大家盘点了目前发展迅猛的十大基于Docker的技术,它们正在驱动云技术向前快速发展。

Docker无疑是今年以来最火的开源技术,Docker现在已经成为目前IT界创业者和创新者的宠儿。无论谷歌、微软、亚马逊、IBM等科技厂商都积极支持Docker技术,Docker虽然入门和使用起来非常简单,但整个生态系统还是挺庞大的,而且其底层技术也都很复杂,目前基于Docker技术的项目如雨后春笋般出现,今天,笔者总结了目前正在快速演进的Docker相关技术,分享给大家。

Kubernetes 

在今年夏天Dockercon 上Google基础设施副总裁Eric Brewer宣布Kubernetes,建于Docker之上的Kubernetes可以构建一个容器的调度服务,其目的是让用户透过Kubernetes集群来进行云端容器集群的管理,而无需用户进行复杂的设置工作。系统会自动选取合适的工作节点来执行具体的容器集群调度处理工作。其核心概念是Container Pod(容器仓)。

Docker Pods

跟Kubernetes密切相关,Eric Brewer也谈到了容器并且引入了“ pods ”的概念。这是一个在Kubernetes里面非常关键的概念。他说:“在谷歌,我们很少部署一个容器,相反,他们是将容器组合在一起。”

他指出Docker容器需要一个内部和外部端口的常量映射,这是一个需要管理、存储和查询的复杂附加层——甚至在作为单一机组部署的pod容器之间。因此,在Google,他们确保每个容器的pod都有自己的IP地址。这意味着使用的端口无论是内部和外部都是一样的。这样做去掉了管理端口的复杂附加层。现在,找到pods运行一个特定的服务,你只需要这些pods的IP地址列表。谷歌计算引擎是目前唯一的云基础设施服务,帮助分配一个IP子网给虚拟机——因此在这里面每个Docker pod只有一个IP。

Weave 

Weave是由Zett.io公司开发的,它能够创建一个虚拟网络来连接部署在多台主机上的Docker容器。通过Weave所有的容器就像被接入了同一个网络交换机,那些使用网络的应用程序不必去配置端口映射和链接等信息。外部设备能够访问Weave网络上的应用程序容器所提供的服务,同时已有的内部系统也能够暴露到应用程序容器上。Weave能够穿透防火墙并运行在部分连接的网络上。另外,Weave的通信支持加密,所以用户可以从一个不受信任的网络连接到主机。

CoreOS

CoreOS是一种新的、架构体系重新设计的Linux发行版,可以运行在既有的硬件或者云上。CoreOS使用systemd和fleet来对容器进行管理,通过 etcd进行服务发现和配置信息共享。CoreOS目前风头正劲,目前已经获得融资并宣布收购私有Docker仓库服务商Quay.io,进军企业 级的Registry。另外,CoreOS的etcd等组件也获得了社区的认可,并得到了大规模使用。CoreOS已经发布首个稳定版本,目前主流的云服 务商都提供了对CoreOS的支持。

Flannel 

它是由CoreOS团队针对Kubernetes设计的一个覆盖网络工具,其目的在于帮助每一个使用 Kuberentes 的 CoreOS 主机拥有一个完整的子网。Flannel之前的名字是 Rudder,Kubernetes 会为每一个 POD 分配一个独立的 IP 地址,这样便于同一个 POD 中的Containers 彼此连接,而之前的 CoreOS 并不具备这种能力。为了解决这一问题,Flannel 通过在集群中创建一个覆盖网络为主机设定一个子网。

Docker For Windows

最近,微软加入了Docker的潮流,说他们打算为Windows建立一个集装箱化解决方案并在之上提供一个与Docker兼容的API。这的确意味着已经有一些可用的工具构建在Docker API层上。

 

Atomic

Project Atomic是最近才发布的一个项目,它也是一个瘦身版的Linux,只包含systemd/geard /rpm-OSTree以及Docker组件,专门用来部署和管理Docker容器。它能在接近硬件裸机级别上高性能的运行大量容器,而且它还是基于SELinux的,在安全上也有保障。

 

Cloud Foundry Diego

ActiveState的重点是开源PaaS项目。我们认为由Diego项目引起的Docker集成正促使生态系统往正确方向上前进。像Kubernetes一样,Diego是一个调度程序,同时,它主要与Cloud Foundry配合运行。我们也看到Windows .NET从Uhuru那里集成Diego,对Windows来说Docker已成为现实,我相信我们将看到这些技术融合。

Flynn

Flynn是一个使用Go语言编写的开源PaaS平台,Flynn使用模块化的设计,任何一个模块都可以独立的进行修改、升级和替换。Flynn的目标是简化分布式环境中应用的部署和维护,通过使用 git push命令,Flynn就可以将应用部署到Docker,从而省去了复杂的配置和操作。Flynn目前仍在开发中,尚未发布稳定版,但已经获得了很多公司的资助,它被称为是下一代的开源PaaS平台。

Fig

Fig是一个基于Docker的用于快速搭建开发环境的工具,目前Fig团队已经加入Docker公司。Fig通过一个配置文件来管理多个Docker容 器,非常适合组合使用多个容器进行开发的场景。Fig可以和Docker一起来构建基于Docker的复杂应用,CoreOS的功能强大但是配置比较复 杂,而Fig相对而言比较简单,但是很难在多台服务器上做扩展,从Docker官方收购Fig也可以看到该项目的重要性。 

 

来自: CSDN
1
0
评论 共 1 条 请登录后发表评论
1 楼 aokihu 2014-11-21 11:14
Docker是不是就是chroot的使用呢?

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 继承对象【javascript继承】之——原型链继承和类式继承

    本文纯属个人见解,是对前面学习的总结,如有描述不正确的地方还请高手指正~     什么是继承啊?答:别人白给你的程过就叫继承。     为什么要用继承呢?答:捡现成的呗。     好吧,既然大家都想捡现成的,那就要学会怎么继承!     在懂得之前,你要需先懂得构造数函、对象、原型链等观点......     JS里用常的两种继承方法:      原型链继承(对象间的继承) 类式

  • C# 中自定义Attribute值的获取与优化

    C#自定义Attribute值的获取是开发中会经常用到的,一般我们的做法也就是用反射进行获取的,代码也不是很复杂。 1、首先有如下自定义的Attribute [AttributeUsage(AttributeTargets.All)] public sealed class NameAttribute : Attribute { private readon

  • .net c#获取自定义Attribute

    前言: 在c#开发中,有时候我们需要读取 Attribute中的信息(关于Attribute, 我自己把他理解成一个可以为类,属性标记的东西,这个标记可以为你提供一些关于类,方法,属性的额外信息) 我们如何获取这些标记的信息,如何获取自定义Attribute信息。 正文: 1.获取一个枚举的详细信息 假设我们有这样一个枚举 public enum Categor...

  • 裸机第一步,万能的神灯

    学习单片机,点灯就相当于编程里打印hello world 的地位一样,学会点灯才算你开始接触单片机。 要点灯就要先找到灯,那么我们就应该从自己开发板的电路图开始找,找到LED对应的IO口,我的led: 可以看到IO口为GPJ2_0 1 2 3 那么我们知道了io口的名字就可以去数据手册里面找相应的寄存器了 Port Group GPJ2 Control Register (GPJ2CO

  • 十大正在快速演进的 Docker 项目

    Docker虽然入门和使用起来非常简单,但整个生态系统还是挺庞大的,而且其底层技术也都很复杂,目前基于Docker技术的项目如雨后春笋般出现,今天,笔者总结了目前正在快速演进的Docker相关技术,分享给大家。...

  • 第一本Docker书pdf

    下载地址:网盘下载内容简介······全球第一本Docker技术图书中文版,Docker中文社区鼎力支持!Docker核心团队成员权威著作,在技术圈中很有影响力。既是第一本Docker书,也非常适合作为学习Docker的第一本入门...

  • CPU关键技术演进路线

    后摩尔定律时代,单靠制程工艺的提升带来的性能... 【中台实践】华为大数据中台架构分享.pdf 华为的数字化转型方法论 华为如何实施数字化转型(附PPT) 超详细280页Docker实战文档!开放下载 华为大数据解决方案(PPT)

  • 十大主流集群调度系统大盘点

    考虑到时下各路调度系统眼花缭乱,小编打算从Google的三代集群调度架构演进切入,对十个主流集群调度系统进行分门别类大盘点。开始盘点前,让我们先快速回顾一下Google的三代集群调度架构——中央式(Monolithic)、...

  • C#的Attribute

    在C#的有些教材里,有人把Attribute翻译成属性,但是在C#里还有一个Priority,也被翻成属性。因此在比较严谨的教材里,会直接用Attribute这个英文,也有些教材会翻译成特性。 C#的Attribute主要用在反射时,可以获取这个类,属性成员等的额外信息。 比如我们在操作数据库时,常常会把数据库一行数据,转换成一个Entity。在读数据库时会根据这个Entity里的属性生成一个

  • .Net 中的反射(反射特性) - Part.3

     .Net 中的反射(反射特性) - Part.3反射特性(Attribute)可能很多人还不了解特性,所以我们先了解一下什么是特性。想想看如果有一个消息系统,它存在这样一个方法,用来将一则短消息发送给某人:// title: 标题;author:作者;content:内容;receiverId:接受者Idpublic bool SendMsg(string title, st

  • C#中Attribute的应用

    Attribute的基本概念 经常有朋友问,Attribute是什么?它有什么用?好像没有这个东东程序也能运行。实际上在.Net中,Attribute是一个非常重要的组成部分,为了帮助大家理解和掌握Attribute,以及它的使用方法,特地收集了几个Attribute使用的例子,提供给大家参考。 在具体的演示之前,我想先大致介绍一下Attribute。我们知道在类的成员中有property成员

  • C#中DefaultValueAttribute的使用

    首先说明: DefaultValueAttribute是指定属性 (Property) 的默认值。 命名空间:System.ComponentModel 程序集:System(在 system.dll 中) 比如我们这样写: public class PrintInfo { [DefaultValue(typeof(string), "555")]

  • C#属性(attribute)

    属性是用来传递信息到运行有关像类,方法,结构,枚举,集等各种元素的行为,在你的程序中声明的标签。可以通过使用属性添加声明信息的程序。声明性标记由正方形描绘([])置于它被用于元件上方括号。属性用于添加元数据,如编译器的指令和其他信息,例如注释,描述,方法和类的程序。 .NET Framework提供了两种类型的属性:预先定义的属性和定制属性。指定属性 指定属性的语法如下:[attribute(po

  • 这一年,这些书:2022年读书笔记

    Note: 以下 `markdown` 格式文本由 `json2md` 自动转换生成,可参考[JSON转Markdown:我把阅读数据从MongoDB中导出转换为.md了](https://blog.csdn.net/u013810234/article/details/113360229)了解具体的转换过程。...

  • 疫不容迟,值得关注的十大技术趋势(中)

    Serverless 正在从偏离线业务进入在线业 Serverless 生态不断发展,在应用构建,安全,监控报警等方面涌现了很多开源项目和创业公司,工具链越来越成熟; 用户对 Serverless 的接受度不断增加,除了互联网等迅速...

  • Go语言诞生5周年!10大Go语言开源项目推荐

    2014年11月,Golang官方博客发布...十大正在快速演进的Docker项目 》,这篇文章对本文的整理起了很大的参考作用。 本文为CSDN原创文章,未经允许不得转载,如需转载请联系market#csdn.net(#换成@)

  • Kubernetes API 与 Operator:不为人知的开发者战争

    不过,与以往不同的是,相比于往常天马行空般的头脑风暴,这一次,这两位工程师的脑子里正在琢磨着的,是一个非常“接地气”的小项目。 我们知道,Kubernetes 项目实现“容器编排”的核心,在于一个叫做“控制器模式...

  • InfoQ 编辑部开年聊聊 2020 年值得关注的十大技术趋势

    特别策划 | InfoQ编辑部结合专家的观点以及记者的洞察,InfoQ 编辑部在开年跟你聊聊 2020 年值得关注的十大技术趋势。有人说 2019 年可能是最近十年最坏的一年,但也有可能...

Global site tag (gtag.js) - Google Analytics