Docker存储和虚拟化存储需求不同

简介:

虚拟化问题

服务器和桌面虚拟化目前已经成为大多数数据中心的标准应用部署。那么这些数据中心为什么还关注Docker和其他容器技术呢?容器能够帮助克服虚拟化的2大根本问题。

大多数情况下,虚拟机是过耗的。数据中心需要的是同时同物理主机能够安全运行多应用的能力。将应用归类,这样其中错误的代码就不会导致其他应用的崩溃,这一点是基本的需求。除此之外,还要谨慎的分配主机服务器资源给这些实体。虚拟化之前,IT能够实施物理机的应用控制。虚拟化实质上再现了整个物理服务器作为一个虚拟机运行一个应用。虚拟化有监控程序驱动。它的作用是抽象服务器资源,让监控程序分配资源给VM。监控程序执行抽象的开销将造成性能损耗。

通常的解决方案是投入更多的硬件,一般是以CPU的形式而非裸机服务器。

容器的优势

容器要比VM更高效。并非虚拟化或抽象整个硬件,它们只是抽象应用或应用的部分。如此粒度的虚拟化意味着资源将不会浪费在冗余的部分。它同时是低CPU、内存和存储需求的。

Docker利用写入时复制文件系统创建容器。通常看来,一个主映像将被创建,然后从主影像上创建容器。大多数虚拟机监控程序都有类似的功能,但映像必须是一个完整的虚拟机。容器技术带来更加精确的映像。创建的容器可以使应用的一个分支或应用的子集。

Docker存储注意事项

Docker存储的一些注意都和虚拟化的相类似,然而也存在一些不同。Docker专为直连存储应用而设计,但随着环境的成熟,也会出现主机间共享信息和迁移容器的多样需求。共享存储将支持高可用、共享访问和容器迁移。但共享存储势必要适应比一般虚拟服务器环境更多样的负载,从I/O角度来看,Docker存储环境和虚拟桌面基础设施相类似。

Docker环境支持从几十个容器扩展到几百个、甚至上千,在几秒钟之内,当然它也能迅速的缩小至几十个。适应这样的伸缩变化需要支持闪存和磁盘的混合系统。这个系统还可能要为适应容器增长而做扩展设计。

今天,不像VMware和Hyper-V,Docker在存储上几乎毫无特色。缺少特点说明存储硬件上的软件还要强大,让企业能够具备他们过去所具备的功能。Docker环境通过RESTful API实施自动化,以编程方式创建、执行以及移除。这很有意义,存储系统本身通过RESTful API完全脚本化。

Docker和容器技术本身还在起步阶段,在接下来的时间里还会有重大的变化。保守来看,Docker将在存储管理、增减新协议支持以及提供存储服务方面更有发展。支持的存储系统需要足够灵活以适应支持多协议带来的变化。

今天,Docker已经支持应用部署和测试。对着数据中心数量的上升,越来越多的企业数据中心将会进行比以往更多的开发工作。Docker对于这些环境来讲是理想的。但就像虚拟化开始应用于实验环境后来进入商业领域,Docker和容器作为测试开发工具起步也将在未来的企业应用中找到位置。


作者:George Crump

来源:51CTO

相关文章
|
6月前
|
存储 虚拟化 Docker
|
6月前
|
开发工具 虚拟化 git
自学软硬件第755 docker容器虚拟化技术youtube视频下载工具
docker容器虚拟化技术有什么用?怎么使用?TubeTube 项目使用youtube视频下载工具
|
11月前
|
存储 Linux Docker
使用Docker存储驱动
【10月更文挑战第9天】
228 3
|
11月前
|
存储 Kubernetes Docker
|
存储 运维 虚拟化
Docker技术概论(1):Docker与虚拟化技术比较
Docker技术概论(1):Docker与虚拟化技术比较
408 17
Docker技术概论(1):Docker与虚拟化技术比较
|
存储 Linux Docker
在Docker中,如何更改Docker的默认存储设置?
在Docker中,如何更改Docker的默认存储设置?
|
存储 监控 Docker
如何限制docker使用的cpu,内存,存储
如何限制docker使用的cpu,内存,存储
|
存储 缓存 运维
【Docker 专栏】Docker 镜像的分层存储与缓存机制
【5月更文挑战第8天】Docker 镜像采用分层存储,减少空间占用并提升构建效率。每个镜像由多个层组成,共享基础层(如 Ubuntu)和应用层。缓存机制加速构建和运行,通过检查已有层来避免重复操作。有效管理缓存,如清理无用缓存和控制大小,可优化性能。分层和缓存带来资源高效利用、快速构建和灵活管理,但也面临缓存失效和层管理挑战。理解这一机制对开发者和运维至关重要。
907 8
【Docker 专栏】Docker 镜像的分层存储与缓存机制
|
存储 Linux Docker
【Azure 应用服务】应用服务中发布Docker Container,如何添加卷(如Azure File Share)以便永久存储文件
【Azure 应用服务】应用服务中发布Docker Container,如何添加卷(如Azure File Share)以便永久存储文件
|
存储 数据管理 数据安全/隐私保护
【Docker专栏】Docker存储卷管理:数据持久化的关键
【5月更文挑战第7天】本文探讨了Docker容器中数据持久化的关键——存储卷,包括其独立于容器生命周期的特性、数据共享与迁移能力。Docker提供默认、命名、数据卷容器和挂载宿主机目录四种卷类型。创建与管理涉及`docker volume create`、`ls`、`run`等命令。最佳实践建议使用命名存储卷,定期备份,避免存储敏感数据,并清理未使用卷。了解和有效管理存储卷能提升容器灵活性和数据管理效率。
323 5
【Docker专栏】Docker存储卷管理:数据持久化的关键