云计算核心技术Docker教程:Docker存储驱动程序

理想情况下,很少有数据写入容器的可写层,而您使用Docker卷来写入数据。但是,某些工作负载要求您能够写入容器的可写层。

理想情况下,很少有数据写入容器的可写层,而您使用Docker卷来写入数据。但是,某些工作负载要求您能够写入容器的可写层。这是存储驱动程序进入的地方。

Docker使用可插拔架构支持几种不同的存储驱动程序。存储驱动程序控制在Docker主机上如何存储和管理映像和容器。

阅读存储驱动程序概述之后,下一步就是为您的工作负载选择最佳的存储驱动程序。在做出此决定时,需要考虑三个高层次的因素:

如果您的内核支持多个存储驱动程序,则在未明确配置任何存储驱动程序的情况下,Docker会优先列出要使用的存储驱动程序,前提是该存储驱动程序满足先决条件。

在大多数情况下,请使用具有最佳整体性能和稳定性的存储驱动程序。

Docker支持以下存储驱动程序:

overlay2 是当前所有受支持的Linux发行版的首选存储驱动程序,并且不需要任何额外的配置。

aufs是在内核3.13上的Ubuntu 14.04上运行的Docker 18.06及更早版本的首选存储驱动程序,而该内核不支持overlay2。

fuse-overlayfs仅在不提供对rootless的支持的主机上运行Rootless Docker时才首选overlay2。在Ubuntu和Debian 10上,即使在无根模式下fuse-overlayfs也不需要使用该驱动程序overlay2。请参阅无根模式文档。

devicemapper支持,但是direct-lvm对于生产环境是必需的,因为loopback-lvm零配置虽然性能很差。devicemapper是CentOS和RHEL的推荐存储驱动程序,因为它们的内核版本不支持overlay2。但是,当前版本的CentOS和RHEL现在支持overlay2,这是推荐的驱动程序。

如果btrfs和zfs驱动程序是后备文件系统(安装了Docker的主机的文件系统),则使用它们。这些文件系统允许使用高级选项,例如创建“快照”,但需要更多的维护和设置。这些中的每一个都依赖于正确配置的后备文件系统。

该vfs存储驱动程序的目的是为了进行测试,并在那里不能使用任何写入时复制文件系统的情况。此存储驱动程序的性能很差,通常不建议在生产中使用。

Docker的源代码定义了选择顺序。您可以在Docker Engine 20.10的源代码上看到订单

如果您运行其他版本的Docker,则可以使用文件查看器顶部的分支选择器来选择其他分支。

一些存储驱动程序要求您对备份文件系统使用特定格式。如果您有使用特定备份文件系统的外部要求,则可能会限制您的选择。请参阅支持的后备文件系统。

在确定了可以选择的存储驱动程序之后,您的选择取决于工作负载的特征和所需的稳定性。请参阅其他注意事项, 以帮助您做出最终决定。

为TA充电
共{{data.count}}人
人已赞赏
云计算

华为丁耘:5G与工业制造深度融合,已在10多个子行业打造了100多个项目

2021-5-8 16:25:53

云计算

观看破千万 4K花园等联合举办5G+4K/8K+VR云直播演唱会

2021-5-9 13:35:36

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索