Docker将在存储上崭露头角?

Docker与存储纪实

在容器中运行应用的想法——也作为OS级虚拟化著称——目前来看是一种潮流技术。这种技术的真身可以追溯到大型机时代。

但是在过去的12个月当中,在单一OS中运行多个相隔离的负载的思想被一款产品重新引爆。这家公司和产品统一命名作Docker。

Docker是一款支持单一OS同时运行多应用的平台产品,可以直接部署于物理服务器之上或作为虚拟机。

这一切都实现自“用户空间”的多拷贝,用户空间就是应用在Linux或是Unix平台运行的地方。

Docker如此受追捧,原因在于其解决了运行VM的一些问题和花销,每一个VM都需要配备专有的内存和存储资源。

VM支持深度隔离并虚机个别升级,但是在跑相似或者完全相同的OS版本的大环境中,几乎每个虚机都运行着耗内存的重复进程,还保留着完全相同或近似相同的启动卷。

在面向网络规模的计算中,传统服务器虚拟化效率很低。

集装箱生动描述了容器间的隔离。默认情况下,相互隔离的容器在实现任何意图和目的时都好像拥有整个操作系统。这种隔离会因容器与外界交互的需要被不时打断。而如果没有这种交互,容器也就失去了存在意义。

因此,容器是有条件实现网络交通并访问数据的。

Docker将在存储上崭露头角?

与VM相比,容器是轻量的,并也被应用于存储。

Docker的一大神奇特色就是其叠加式文件系统,它实现了写入时拷贝,将任何更新了的信息存入容器的根文件系统。因此容器默认将不具备永久性存储。

然而,Docker却拥有支持访问更多永久性存储资源的功能——Docker卷和数据容器。

从两年前的全面启动,Docker开源容器已经覆盖到大部分的应用开发和测试环境。Docker还有多少时日能够部署于主存储还很难预测,但专家认为它将采取和VMware类似的方式,逐渐的去增加特性到服务器虚拟化软件来帮助创建、配置和管理存储。

“从存储的角度来看Docker,关键在于你真的需要一个具有众多特性的存储系统,”Storage Switzerland主席George Crump这样表示。“就想早期的VMware,Docker的存储局面还很紧张。”

Crump表示,VMware已经为Docker开辟了主存储系统的先路,尽管这将会是一个缓慢的过程。

“我想Docker的用武之地首先会是有很多相同实例的存储环境。比如说你正在扩展的80 Oracle或SQL Server应用。”

尽管类似,但Docker与VM存储并不一样

Docker是打包共享操作系统上的Linux应用及其依赖关系的开源软件。目前为止,围绕于Docker存储容器的议论已经高于企业应用的广度。

但Crump和其他行业观察者表示,容器成为VM存储的补充只是时间问题。

Docker公司商业化了开源Docker容器,但竞争者在衍生,包括由合作伙伴转为竞争对手的CoreOS。谷歌在去年也揭幕了其基于Kubernetes开源容器集群管理框架的谷歌容器。

EMC、 Asigra、 Catalogic和Zadara都在推出支持Docker容器的产品。微软表示将会在Windows Server 2016上支持Docker。

“Docker已经影响了我们考虑架构和基础设施的的方式,但照目前我们的存储来看,一个Docker实例就像是虚拟机,”NC-based Signature Tech Studio副总Rob Hines说道,“它能够访问Zadara。一开始我们会在VPSA里面运行少量的容器。但我不知道如果我准备好将成百上千的工作投进VPSA会怎样,也许这会是我们的最终目标。”

“VM和容器最大的不同在于粒度,”StorageIO Group创始人Greg Schulz说,“我能在一台物理机上启动5-10个VM。而对于容器而言,我可能同时运行成百上千个轻量的实例。”

Docker还缺少数据保护上的本地存储特性,像是复制和快照。

数据持久性和可移植性上面的缺失也在阻碍容器技术在共享存储上的全面应用。

本文作者:南方

来源:51CTO

时间: 2024-09-20 00:39:01

Docker将在存储上崭露头角?的相关文章

Docker在云平台上的最佳实践: 当容器服务遇到深度学习

12月9日云栖计算之旅线下沙龙第2期<Docker在云平台上的最佳实践>,阿里云技术专家必嘫给大家带来了"当容器服务遇到了深度学习"的演讲.本文主要从深度学习的兴起开始谈起,进而介绍了Docker技术.阿里云容器服务,重点介绍了支持云上的高性能计算应用需要哪些,包括GPU的调度.隔离和监控. 视频回顾 深度学习 人工智能已经进入了深度学习时代.传统的让机器自动化的方式已经不再适合解决一些问题,机器学习开始兴起,让机器像小孩子一样自己去认识世界.而深度学习本身是机器学习的一个

生产环境中Docker的持久化存储模式

本文讲的是生产环境中Docker的持久化存储模式[编者的话]在生产环境中使用Docker实现持久化存储一直是业界的热点问题,本文从到配置文件.机密材料.数据库.共享数据等方面做了些探讨,文中也谈到了一些需要避免的问题以及尽量将应用设计为无状态服务的原则. 一般看法认为容器对于无状态的应用程序是很好的,但是不适合有持久化数据的有状态应用.如果这是真的,这并不是因为技术不到位,而是因为管理持久化数据和有状态应用程序的模式并不总是为人们所熟知.你面临的挑战很多不是关于持久化状态的,而是如此操作不会影响

Docker镜像的存储机制

近几年 Docker 风靡技术圈,不少从业人员都或多或少使用过,也了解如何通过 Dockerfile 构建镜像,从远程镜像仓库拉取自己所需镜像,推送构建好的镜像至远程仓库,根据镜像运行容器等.这个过程十分简单,只需执行 docker build.docker pull.docker push.docker run 等操作即可.但大家是否想过镜像在本地到底是如何存储的?容器又是如何根据镜像启动的?推送镜像至远程镜像仓库时,服务器又是如何存储的呢?下面我们就来简单聊一聊. Docker 镜像本地存储

天翼云存储上传文件方法

  天翼云存储上传文件的几种方法介绍: 方法一:打开PC客户端中同步盘,把需要上传的文件直接拖动到同步盘目录进行上传,如图1所示: 方法二:点击PC客户端中的全部文件栏目,把文件上传到指定的目录.点击"上传"按钮后,选择需要上传的文件即可,如图3所示: 方法三:把需要上传的文件拖动至悬浮窗,选择在云端的保存目录后,即可上传文件,如图4所示:

azure-Blob存储上传失败问题

问题描述 Blob存储上传失败问题 Hello!!! 大家好!! await blockBlob.UploadFromFileAsync(localFile); 采用如上方法上传,wp8.1程序,在模拟器中运行一切正常,在真机中运行报错,什么认证失败的,怎么解决? 求解答!!! 解决方案 不造呵呵呵呵呵哈哈哈哈哈哈哈哈哈哈哈 解决方案二: Hi, 如果你遇到认证失败的话,我建议你去检查Azure存储的account和key是否和门户网站中的一致,需要注意的是中国版的Azure的connectio

docker如何ssh连上自己的容器,一定要用ssh连么?

问题描述 docker如何ssh连上自己的容器,一定要用ssh连么? 解决方案 本帖最后由 weimochengxi 于 2014-08-27 09:19:46 编辑解决方案二:B:下午才看到一篇文章说容器最好不要用ssh这篇http://jpetazzo.github.io/2014/06/23/docker-ssh-considered-evil/CentOS6.5制作可以ssh登录的Docker看参考这篇http://my.oschina.net/feedao/blog/223795C:n

SQL Server 深入解析索引存储(上)

原文:SQL Server 深入解析索引存储(上) 标签:SQL SERVER/MSSQL SERVER/数据库/DBA/索引体系结构/堆 概述      最近要分享一个课件就重新把这块知识整理了一遍出来,篇幅有点长,想要理解的透彻还是要上机实践.       正文 聚集索引 --创建测试数据库 CREATE DATABASE Ixdata GO USE [Ixdata] GO ---创建测试表 CREATE TABLE Orders (ID INT PRIMARY KEY IDENTITY(1

Ubuntu 每日技巧- 自动备份Ubuntu 14.04到Box云存储上

Ubuntu 每日技巧- 自动备份Ubuntu 14.04到Box云存储上 如今你已经升级或者安装了Ubuntu 14.04, 但是还有另外一件保护你的新系统需要做的事情:备份! Ubuntu内置了一个备份工具 Déjà Dup Backup Tool.它允许你备份你的系统并保存在本地或者通过不同的协议保存在远端服务器上. 还有许多其他的工具来备份你的Ubuntu计算机与文件.你可以通过Dropbox 客户端或者其他云服务来自动备份你的重要文档.你也有可能使用UbuntuOne来备份你的机器,但

为什么Docker不能解决云上的所有问题

本文讲的是为什么Docker不能解决云上的所有问题[编者的话]本文作者主要讲述了将业务迁移至Docker或者容器上需要了解的问题以及实现考虑的事情.很认同作者说的"having a powerful engine doesn't get you far if you don't have the rest of the car built to support it(即使有强大的引擎,缺少飞车的其余部件,你也不能走的更远)",所以Docker只是一个引擎,真正应用到生产环境,还需要Ku