Docker容器和存储系统系列一

 

摘要:

 

要想在生产环境中部署Docker,开发运维人员必须还要问自己关于数据存储的几个问题。Docker的数据存储组织形式是什么?Docker目前的存储生态圈各个公司的技术特点?Docker的出现对未来存储后端要求会带来哪些技术变革?

 

注:文章由江松原创,有容云整理发布,转载请注明出处。

 

作者背景:

 

江松,拥有超过16年的国内外企业级软件基础架构研发经验,对企业级存储,云计算都有很深的技术造诣和行业理解。

 

自诉:

我是一名老程序员了,今天给大家分享的是Docker容器和存储系统系列的东西。分享之前要说的一点是:今天的分享是从一个技术人的角度出发的。

 

做产品和自用或者做项目服务是不一样的。产品就是交付用户后,对所发生的所有可能的情况基本都有比较明确的判断。而作为技术人员,对将要遇到的问题和对问题考虑的角度都是不确定也不尽相同的。

 

Docker技术自从诞生以来已经带来了一场云计算的革命。其进展速度之快,接受程度之高让人惊叹。国内已经有不少介绍Docker技术的文章,它的生态,网络,管理,构建,应用都有方方面面的资料。然而,要想在生产环境中部署Docker,开发运维人员必须还要问自己关于数据存储的几个问题。

  1. Docker的数据存储组织形式是什么?
  2. Docker目前的存储生态圈各个公司的技术特点?
  3. Docker的出现对未来存储后端要求会带来哪些技术变革?

 

关于Docker存储的介绍目前国内比较少,作为一名在存储和云计算领域扎根多年的IT人,我希望能够亲自研究这些课题,抛砖引玉,分享讨论。其中的观点不一定都是正确的,但是希望能够引起更多人的思考和共鸣。

 

一.Docker的整体数据存储的方式

 

首先今天分享的是这个系列的第一节,即Docker的整体数据存储的方式。要说明这个问题,我们可以先看看容器和VM的区别,看看他们对存储有哪些不一样的要求。

 

容器和VM,几乎所有人都会说容器就是一种比VM更轻更优的虚拟化技术。其实,我的理解不太一样,我认为容器和VM最大的不同在于容器不是VM。这个,不是废话么。仔细分析一下,容器的重点其实不在虚拟化技术,它叫container, 并没有Virtual这个词。它的关注核心已经从冷冰冰的machine,上升到了如何更好的去承载应用。这个是有本质区别的。VM关注的是如何让Machine更加高效,VM发展的再厉害,它也是一种更高级的Machine。它看待后端存储其实是和一个物理Machine看待后端存储是一致的。而容器呢,它希望后端存储对它来说是透明的,不用它关心的,它更加关心的是应用数据的组织形式。

 

下面这个表是我做的一些对比


VM相关的存储技术已经有很多的介绍了。这里我们继续把和容器相关的存储知识简单展开的讨论一下。

 

容器的Root Image存储就是实现分层的文件组织和写时复制CoW,如AUFS,Device Mapper,ZFS。这些技术满足了容器的核心价值,即极快的创建速度,极小的存储资源消耗以及容器迁移的便捷性。他们又分成了三类,

AUFS,Overlay : 联合文件系统。

DeviceMapper:CoW块存储。

ZFS,btrfs: CoW文件系统。

 

Docker并不推荐采用Root Image的存储方式来存储应用数据。因为应用数据对安全,可用性,共享,性能等方面的要求和Root Image的要求是完全不一样的。后面我们还会专门介绍。Docker采用了Volume这样一个独立的数据访问接口,应用通过Volume去访问相关的数据,Volume的实现和CoW的分层文件系统完全独立。Volume通过Rancher Convoy或者Flocker这样的存储驱动去管理和访问具体的存储设备。

 

 

在下面的章节里,我会对Volume接口做重点的介绍。敬请期待。

 

本文电子书下载:

云盘下载:http://pan.baidu.com/s/1jHfP9Dc

网页下载:http://www.youruncloud.com/help/115.html

博客期刊:http://www.youruncloud.com/blog/0_3.html

 

 

分享:Docker容器和存储系统系列一

有容云-构筑企业容器云 www.youruncloud.com

温馨提示

对Docker容器技术或容器生产实施感兴趣的朋友欢迎加群讨论。我们汇集了Docker容器技术落地实施团队精英及业内技术派高人,在线为您分享Docker技术干货。我们的宗旨是为了大家拥有更专业的平台交流Docker实战技术,我们将定期邀请嘉宾做各类话题分享及回顾,共同实践研究Docker容器生态圈。

加微信群方法:

1.关注【有容云】公众号

2.留言”我要加群”

QQ群号:454565480

有容云微信二维码