zoukankan      html  css  js  c++  java
  • 解决docker WARNING: Usage of loopback devices is strongly discouraged for production use的正确姿势

             centos的系统,安装docker后,如果没有修改一些设置,启动docker daemon后,如果在xfs 或者ext4的文件系统上,命令行输入docker info命令下,常会看到如下一条警告信息

              大意是用loopback的方式运行docker是强烈不建议的,后面也告诉了解决这个警告的办法,网上搜索的一些解决办法,大意也是docker daemon启动参数加入  DOCKER_STORAGE_OPTIONS="--storage-opt dm.no_warn_on_loop_devices=true"来规避警告。而实际这样无异于掩耳盗铃,从加入的参数的意思也能看出如此。事实上,根本的解决办法,要从docker 的不同的存储驱动说起。

           目前docker支持的存储驱动类型,有aufs,Device mapper,btrfs,overlayfs和zfs,所有驱动都用到写时复制(CoW)的技术。而出现警告的原因,就是在centos系统上(默认不支持aufs),docker daemon启动时,找到的后端存储驱动只有device mapper类型,就会通过loopback的方式,创造100G的sparse文件,并将其作为device mapper的存储池,而所有容器都从该存储池中分配默认10G的存储空间使用(可以理解为通过dd命令创造一个稀疏文件,再把这个稀疏的文件当做块设备通过loopback挂载出来)。而loopback的方式,性能和稳定性都不是很好,所以才出现上述警告。因此解决的办法,也在使用device mapper存储时,避免使用loopback即可。     

    在docker daemon启动时,加入--storage-opt dm.datadev=/dev/xxxx    --storage-opt dm.metadatadev=/dev/xxx   ,为device mapper的元数据存储和docker的镜像数据存储选择独立的块设备即可,lvm或者独立磁盘分区都可以。
            
    
    
    参考:
            1、

    Docker五种存储驱动原理及应用场景和性能测试对比  http://dockone.io/article/1513?utm_source=tuicool&utm_medium=referral


  • 相关阅读:
    05-浮动/css
    04-选择器/css
    03-样式表/css
    02-html标签&表格&表单
    01-html基础&标签
    vue分页组件重置到首页问题
    VUE通过索引值获取数据不渲染的问题
    常见IE8兼容性问题及解决
    Ajax
    sea.js模块化工具
  • 原文地址:https://www.cnblogs.com/360linux/p/13062110.html
Copyright © 2011-2022 走看看