服务之窗 基础设施 政务云

容器(Docker)技术

来源:江西省信息中心撰稿人:数据中心发布时间:2018-01-08 字体:[] [][关闭][打印]

  Docker容器开源项目的诞生带领容器技术成为云计算领域热门的研究方向,其与Open Stack等云平台的结合受到普遍关注,业界各大巨头公司均表示浓厚兴趣并参与其社区贡献中,国内阿里云ECS、国外亚马逊以及谷歌等均发布容器服务,支持在云平台实例集群上发布、管理以及扩展Docker容器。Open Stack作为业界领先的开源云平台项目,由于其具有开源性、灵活性、可扩展性、强大的功能及社区支持等诸多特性,成为当今云平台领域的热门研究内容,Open Stack目前正在推进其与Docker容器技术的融合,以其自身强大的架构、存储和网络等各方面支持Docker容器。

  与传统虚拟化相比,优势:

  1、Docker目前利用的是Linux内核本身支持的容器方式实现资源和环境隔离。简单的说,docker利用名字空间(Namespace)实现系统环境的隔离;利用控制组(Cgroup)实现资源限制;利用镜像实现根目录环境的隔离。目前Docker已经将底层实现都抽象化到Libcontainer的接口。底层容器的实现方式变成了一种可变的方案,名字控件技术抑或是使用Systemd等其他方案,只要实现了ibcontainer定义的一组接口,Docker都可以运行。这也为Docker实现全面的跨平台带来了可能。

  2、容器和普通的虚拟机相比, 最大的区别是它并不包含操作系统内核。无论是KVM还是Xen,在容器看来都在浪费资源,因为用户需要的是高效运行环境而非操作系统。Docker并没有和虚拟机一样利用一个完全独立的Guest OS实现环境隔离,它利用的是目前Linux内核本身支持的容器方式实现资源和环境隔离。容器新建只需要几秒钟时间。此外,由于Docker不需要Hypervisor实现硬件资源虚拟化,运行在Docker容器上的程序直接使用的都是实际物理机的硬件资源。因此在CPU、内存利用率上Docker均有优势,下表展示了Docker和传统虚拟机在性能上的具体差异。

  Docker包括三个基本概念:镜像(Image)、容器(Container)和仓库(Repository)。