OSSFS 是阿里云官方提供的基于 FUSE 的文件系统(项目主页见
https://github.com/aliyun/ossfs)。OSSFS 数据卷可以将 OSS 的 Bucket 包装成数据卷。
由于数据需要经过网络同步到云端,OSSFS 在性能和功能上与本地文件系统有差距。请不要把数据库等重 IO 应用、日志等需要不断改写文件的应用运行在 OSSFS 上。OSSFS 比较适合多容器之间共享配置文件,或者附件上传等没有改写操作的场景。
OSSFS 和本地文件系统具体差异如下所示:
- 随机或者追加写文件会导致整个文件的重写。
- 因为需要远程访问 OSS 服务器,元数据操作(例如 list directory)性能较差。
- 文件/文件夹的重命名操作不是原子的。
- 多个客户端挂载同一个 OSS Bucket 时,需要您自行协调各个客户端的行为。例如,避免多个客户端写同一个文件等等。
- 不支持硬链接(hard link)。
前提条件
您的集群必须满足以下两个条件,才可以开通数据卷功能:
- 集群 Agent 的版本为 0.6 或更高。
您可以在集群列表页面查看您的 Agent 的版本。选择所需的集群,单击右侧的 更多 > 升级Agent。
如果您的 Agent 版本低于 0.6,请先升级您的 Agent。有关如何升级 Agent,参见升级 Agent。- 集群里部署了 acsvolumedriver 应用。建议您将 acsvolumedriver 升级到最新版本。
您可以通过升级系统服务部署和升级 acsvolumedriver 应用。详细操作参见升级系统服务。
步骤 1 创建 OSS bucket
- 登录 对象存储管理控制台
- 创建一个 bucket。
本示例创建了一个位于华东 1 地域的 bucket。
步骤 2 创建 OSSFS 数据卷
- 登录 容器服务管理控制台。
- 在 Swarm 菜单下,单击左侧导航栏中的数据卷。
- 选择需要创建数据卷的集群并单击页面右上角的创建。
- 在弹出的对话框中,选择数据卷类型为OSS,设置数据卷参数并单击创建。容器服务会在集群的所有节点上创建名称相同的数据卷。
-
您可以在数据卷列表页面查看创建的 OSSFS 数据卷。
后续操作
创建数据卷之后,您可以在您的应用中使用创建的数据卷。有关如何在应用中使用数据卷,参见[url=https://help.aliyun.com/document_detail/44607.html#concept_acx_xrr_xdb]使用第三方数据卷。