编者注:

本文为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密集型的进程,估计性能差别不大。

最新文章

  1. Vmware配置
  2. 钉钉客户端JS-API权限签名算法.NET版
  3. JAVA_Java常用核心包(概念)
  4. MongoDB的安装 转
  5. Java中的HashTable详解
  6. Struts2的异常处理
  7. 学习MongoDB--(11):应用举例(利用java操作MongoDB)
  8. 【Java基础】用LinkedList实现一个简单栈的功能
  9. centos 系统程序包安装记录
  10. HTML网页音频控制
  11. LCMapString/LCMapStringEx实现简体字、繁体字的转换。
  12. CSS 组合选择器
  13. GitHub Git 简单操作
  14. 【Android UI设计与开发】第01期:引导界面(一)ViewPager介绍和使用详解
  15. Chapter 1 -- UsingAndAvoidingNull
  16. hadoop2.7节点的动态增加与删除
  17. Android Studio安装&&安装bug
  18. What I'm Researching
  19. JS中的Symbol数据类型
  20. onkeypress,onkeyup,onkeydown区别

热门文章

  1. TCP/IP协议栈---网络基础篇(3)
  2. C# 连接数据库等
  3. Xilinx ISE如何调用Modelsim进行联合仿真
  4. HTML认识二
  5. Bzoj 4582 [Usaco2016 Open] Diamond Collector 题解
  6. STM32F0_HAL库驱动描述——基于F1的USART串口IT中断实现解析
  7. Mac上pycharm集成pyspark
  8. VUE+element tree 实现权限管理
  9. 【NOIP2017】图书管理员-C++
  10. 微信小程序 textarea 层级过高的解决方式