文档

OSS存储卷概述

更新时间:

您可以在容器服务Kubernetes集群中使用阿里云OSS存储卷。本文介绍OSS存储卷的功能介绍、存储规格、适用场景、使用限制及计费说明。

功能介绍

阿里云对象存储OSS(Object Storage Service)是阿里云提供的海量、安全、低成本、高持久的云存储服务。

OSS具有丰富的安全防护能力,支持服务器端加密、客户端加密、防盗链白名单、细粒度权限管控、日志审计、合规保留策略(WORM)等特性。OSS为您的云端数据安全进行全方位的保驾护航,并满足您企业数据的安全与合规要求。

存储规格

对象存储OSS提供标准、低频访问、归档、冷归档四种存储类型,全面覆盖从热到冷的各种数据存储场景。更多信息,请参见存储类型概述

适用场景

根据业务需求,您可以对OSS存储卷进行以下操作。

业务需求

参考链接

存储应用数据

加密存储在OSS存储卷上的数据

仅支持服务器端加密。更多信息,请参见服务器端加密

具体操作,请参见加密OSS存储卷

使用限制及说明

重要

OSS存储卷通过FUSE将对象存储挂载到本地,与本地存储和ext4块存储相比有一定限制。针对读写场景,请尽量避免使用随机写和追加写操作,或直接在挂载路径下进行压缩、解压缩操作。由于写操作导致的元数据和数据的不一致性问题,容器服务 Kubernetes 版 ACK(Container Service for Kubernetes)不承诺保障。

您可以使用SDK、ossutil工具实现写操作。若您需要直接通过OSS存储卷实现写操作,建议使用ossfs 1.91及以上版本。更多信息,请参见ossfs 1.91及以上版本新功能介绍及性能压测

配置存储卷的使用说明如下。

  • OSS为共享存储,可以同时为多个Pod提供共享存储服务。

  • 使用数据卷时,每个应用使用独立的PV名称。

  • 如需挂载OSS Bucket中的子目录,建议直接使用PV中的path字段,而非subpath方式。若您的业务需要使用subpath或subpathExpr配置,为避免因权限配置错误等原因导致挂载异常,请先阅读常见问题中的使用subpath或subpathExpr方式挂载OSS存储卷异常

  • OSS存储卷是使用ossfs文件进行挂载的FUSE文件系统。

    • 适合于读文件场景。例如,读配置文件、视频、图片文件等场景。 更多使用限制,请参见ossfs使用限制

    • 不适用于写文件的应用场景。如需写入文件,建议您使用SDK实现写操作。关于使用SDK实现写操作的具体操作,请参见OSS存储读写分离最佳实践。若您需要直接通过OSS存储卷实现写操作,建议使用ossfs 1.91及以上版本。更多信息,请参见ossfs 1.91及以上版本新功能介绍及性能压测

    • CSI版本小于1.28时,ossfs以进程形式直接运行在节点上,支持的节点操作系统为CentOS、Alibaba Cloud Linux、ContainerOS和龙蜥操作系统。如果节点操作系统不支持,您可以通过升级CSI版本的方式运行ossfs。

  • OSS存储卷挂载根路径不支持chmod、chown操作,您可以通过配置项mp_umask实现。更多信息,请参见OSS存储挂载权限问题

ossfs使用限制

  • 随机或者追加写文件实际为在本地生成新文件重新上传至OSS服务端。

  • 因为需要远程访问OSS服务器,list directory等元数据操作的性能较差。

  • 文件、文件夹的rename操作不是原子的。

  • 多个客户端挂载同一个OSS Bucket时,依赖用户自行协调各个客户端的行为,例如,避免多个客户端写入同一个文件等。

  • 不支持硬链接(Hard Link)。

  • CSI plugin为v1.20.7以下的版本时,仅检测本地修改,而不能检测其他客户端或工具的外部修改。

  • 为避免系统的负载升高,请勿在高并发读写的场景中使用。

计费说明

关于OSS的计量计费方式,请参见计费概述