Docker storage driver 选择

本文的目的是说明,如何在生产环境中选择docker 的storage driver。以及对应linux发行版本下Docker storage driver的配置方法。主要参考,docker docs中对于storage driver中的介绍及docker商用版本兼容性矩阵中linux发行版本对于存储驱动的说明。
当前docker支持的storage driver包括:aufs,brtfs,devicemap,OverlayFs,ZFS 5种存储驱动。参考:
https://docs.docker.com/engine/userguide/storagedriver/
https://success.docker.com/Get_Help/Compatibility_Matrix_and_Maintenance_Lifecycle种的说明,当前生产环境中建议如下:
rhel,centos,fedora:devicemapper direct-lvm
ubuntu:aufs
suse:brtfs
当前,生产环境中不建议使用zfs及overlayfs。由于公司产品使用的是centos 7,因此本文介绍下cenos7中如何配置docker使用devicemapper direct-lvm。

停止docker daemon

systemctl stop docker

删除/var/lib/docker,

rm -rf /var/lib/docker

利用pvcreate命令在空闲块上创建物理卷

pvcreate /dev/sdx

利用上一步中创建的pv创建卷组

vgcreate vg-docker /dev/sdx

分别创建data,metadata逻辑卷组

lvcreate -L 90G -n data vg-docker
lvcreate -L 10G -n metadata vg-docker

docker daemon参数配置

--storage-driver=devicemapper --storage-opt dm.datadev=/dev/vg-docker/data --storage-opt dm.metadatadev=/dev/vg-docker/metadata

上述配置完成后,重启docker daemon即可完成配置。下面是配置完成后docker info查询的消息。

[root@net1 docker]# docker info
Containers: 100
 Running: 0
 Paused: 0
 Stopped: 100
Images: 2
Server Version: 1.10.3
Storage Driver: devicemapper
 Pool Name: docker-253:0-469034-pool
 Pool Blocksize: 65.54 kB
 Base Device Size: 10.74 GB
 Backing Filesystem: xfs
 Data file: /dev/vg-docker/data
 Metadata file: /dev/vg-docker/metadata
 Data Space Used: 799.4 MB
 Data Space Total: 10.74 GB
 Data Space Available: 9.938 GB
 Metadata Space Used: 1.729 MB
 Metadata Space Total: 10.63 GB
 Metadata Space Available: 10.63 GB
 Udev Sync Supported: true
 Deferred Removal Enabled: false
 Deferred Deletion Enabled: false
 Deferred Deleted Device Count: 0
 Library Version: 1.02.107-RHEL7 (2015-12-01)
Execution Driver: native-0.2
Logging Driver: json-file
Plugins: 
 Volume: local
 Network: null host overlay bridge
Kernel Version: 3.10.0-229.el7.x86_64
Operating System: CentOS Linux 7 (Core)
OSType: linux
Architecture: x86_64
CPUs: 1
Total Memory: 993.6 MiB
Name: net1
ID: TU6M:E6WM:PZDN:ULJX:EWKS:UPLQ:Z54D:XP52:64C7:Z4XN:TJ76:VG7O
WARNING: bridge-nf-call-ip6tables is disabled
Cluster store: etcd://172.28.0.2:4001
Cluster advertise: 172.28.0.3:0

总结
参考docker的介绍,centos7推荐使用devicemapper。同时,从docker官方文档的介绍可以看到无论使用哪种storage driver均推荐挂载数据卷。后续,会继续分析docker 当前多余数据卷的管理方法。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值