为什么80%的码农都做不了架构师?>>>   

编者注:

本文为9月27日晚上8点有容云平台存储架构师张朝潞在腾讯课堂中演讲的PPT,本次课堂为有容云主办的线上直播Docker Live时代●Online Meetup-第三期:Docker定义存储--让应用无痛运行中,文中跟大家讨论了如何为容器选择合适的存储方案,具体详情见以下PPT分享内容。

Q&A

Q:Docker使用外部存储,把外部存储直接给宿主机挂载,容器再使用宿主机挂载的外部存储效率会不会更高?

A:这种方式正是volume plugin的实现方式,容器直接mount宿主机的目录,避免通过容器网络访问外部存储,性能肯定会更高。

Q:如何具体定制volume_plugin?不同主机挂同一个lun,这样可以直接给volume 使用  同一业务 只要块存储速度可以那就不会影响业务 包括峰值和低值的应用 只是增加中间处理容器的数量,这样可不可行?

A:为了方便实现volume plugin,docker提供go-plugins-helper包(https://github.com/docker/go-plugins-helpers),提供基础的功能,仅仅需要实现一个接口volume.Driver,并启动http server便可。例子:GlusterFS就是使用这个包,基于glusterfs提供volume。https://github.com/calavera/docker-volume-glusterfs;

不同主机挂同一个lun,再格式化文件系统,每个主机都由自身的文件系统元数据并不会立刻flush到块设备,所以多个主机挂同一个lun并不可行。

Q:对于一个容器,每次run都会下载大量的数据,如果多大50GB的话,如何去处理?

A:将大量的数据存储在外部共享存储系统中,通过块或文件的方式挂载给容器使用,就可避免加载大量数据到本地。

Q:对于容器存储也好或虚拟机、云主机存储也好,都是大同小异,看你业务用途如何,再根据现有资源来决定是块存储还是分布式文件或是对象存储?

A:确实存储接口并没有什么根本性的改变,容器和虚拟机在存储的角度来看最大的区别就是容器中运行的是应用,而虚拟机运行的是操作系统,使得容器存储更加贴近应用,能够根据具体应用的特性提供更合适的存储服务。

Q:假如有一个lun,要对应一个host上的很多的container,我是把所有的container mount 到同一个目录的不同子目录速度快,还是先对这个lun进行分区格式化,然后在不同的container对不同的分区速度快呢?

A:把所有的container mount 到同一个目录的不同子目录,表示多个进程对应1个文件系统;先对这个lun进行分区格式化,然后在不同的container对不同的分区,表示1个进程对1个文件系统;对于非IO密集型的进程,应该是后者更快,每个文件系统都带有cache,所以性能会更高一些。而对于IO密集型的进程,估计性能差别不大。

转载于:https://my.oschina.net/cloudsoar/blog/753122

PPT | Docker定义存储-让应用无痛运行相关推荐

  1. 8s 使用本地打包镜像_在Docker环境构建、打包和运行Spring Boot应用

    为何考虑采用Docker? Docker是提供用户构建镜像的一种容器化技术,所构建的镜像包含了主要的应用程序和运行应用所需的所有依赖项.该镜像可在任何虚拟机或物理机器上的Docker容器上运行.它的强 ...

  2. docker build -t_在Docker环境构建、打包和运行Spring Boot应用

    为何考虑采用Docker? Docker是提供用户构建镜像的一种容器化技术,所构建的镜像包含了主要的应用程序和运行应用所需的所有依赖项.该镜像可在任何虚拟机或物理机器上的Docker容器上运行.它的强 ...

  3. Docker存储空间不够,如何Docker修改存储位置以进行扩容

    Docker存储空间不够,如何Docker修改存储位置以进行扩容 方法一:  修改镜像和容器的存放路径 指定镜像和容器存放路径的参数是--graph=/var/lib/docker,我们只需要修改配置 ...

  4. 容器定义存储(CDS)—春江水暖Portworx先知

     容器定义存储(CDS)-春江水暖"Portworx"先知 ICT架构师技术交流 2016-09-09 20:08 在上篇中,我们已经介绍了容器如何改变应用部署方式.为什么要通 ...

  5. 容器定义存储(CDS)—存储技术的瘦身革命

     容器定义存储(CDS)-存储技术的"瘦身"革命 ICT架构师技术交流 2016-09-09 19:42 容器技术是最快被数据中心所广泛接受和采用的技术之一,从2013年起,据 ...

  6. Docker中拉取ActiveMQ镜像安装运行网页无法访问已解决

    前言 Docker中拉取ActiveMQ镜像安装运行,以为很简单,其实一堆的坑啊,下面就来一步步填坑吧. 1.使用命令搜索activemq docker search activemq 2.使用以下命 ...

  7. 服务器显示资源不够用,Docker服务器存储资源池不足的问题解决

    系统环境: Docker 版本:19.03.13 操作系统版本:CentOS 7.8 一.问题描述 最近在执行 Docker 运行命令启动镜像时候,无法正常执行 Docker 启动镜像命令,提示了如下 ...

  8. Docker(二十)--Docker k8s--Kubernetes存储--Volumes配置管理

    目录 1. 简介 2. emptyDir卷 2.1 简介 2.2 示例 2.2.1 正常使用 2.2.2 文件超过sizelimit 3. hostPath 卷 3.1 简介 3.2 示例 4 NFS ...

  9. Docker扩容:Centos8虚拟机硬盘扩容+修改Docker默认存储位置

    实验目的: Docker所存储的位置已经使用了百分之百,无法满足后续的运行需要.并且目前VMware虚拟机存在快照,不能对已有的硬盘直接扩容. 目前需要完成的是在Centos8虚拟机上的其他目录挂载新 ...

最新文章

  1. char(nchar)与varchar(nvarchar)的区别以及选择
  2. MyBatis和SpringMVC集成事务在Junit测试下有效但是在实际项目无效的问题
  3. 查看 centos 版本
  4. java线程未执行完成,java线程测试-一个奇怪的景况-执行未完成直接结束了
  5. Android应用程序组件Content Provider简要介绍和学习计划
  6. python与正则表达式(part7)--re模块使用
  7. IBM收购Rational一年总结
  8. 利用SVD-推荐未尝过的菜肴2
  9. SSAS的MDX的基础函数(三),及聚合函数
  10. 一种快速部署开发用oracle的办法
  11. 用Appscan 作代理,录制APP页面的限制条件
  12. MD5信息摘要算法原理及破解原理
  13. 百度大脑推出智能招聘解决方案,助力节省招聘成本
  14. 油猴插件安装以及好用的脚本推荐
  15. 生成指定范围的随机数
  16. 统计-Bonferroni 方法
  17. 修改gif图片文件大小
  18. Python统计数组中多个区间内的频数并画直方图
  19. 华为或成韩国电信最大5G设备供应商!
  20. 连接池中溺死重生,多亏NET 连接池救生员

热门文章

  1. SQL Server 批量完整备份
  2. 只让输入数字的输入框(javascript)
  3. Exchange监控用户邮件
  4. DAY11-MYSQL之ORM框架SQLAlchemy
  5. 有关Android线程的学习
  6. 从CIO视角出发审视云环境下的安全议题
  7. mysql的介绍;安装及基本配置;mysql数据库运行必备技能
  8. DotNET企业架构应用实践-系统架构与性能-缓存技术与ORM中的缓存查询技术
  9. 用RPM包安装MySQL的默认安装路径问题
  10. 《黑客与画家》读后感:你对技术一无所知(一些金句)