ossfs 1.0版本说明

更新时间:2025-05-06 01:46:52

ossfs 1.0客户端版本随着CSI组件版本的迭代进行升级。本文介绍ossfs 1.0版本说明以及如何查看并切换ossfs 1.0版本。

功能说明

通过CSI挂载OSS存储卷时,csi-plugin组件将启动ossfs进程,将OSS服务端数据挂载到容器内指定的挂载路径。您可以通过POSIX操作读写服务端的文件,像操作普通文件那样读写OSS Bucket中的Object,便于云端存储资源的访问和管理。

ossfs 1.0是一个用户空间文件系统(userspace filesystem),可以将对象存储OSSBucket挂载到Linux系统的本地文件系统。通过ossfs 1.0客户端,您可以像操作本地文件一样直接访问和管理OSS中的Object,实现数据的无缝共享和操作。主要功能如下:

  • 支持POSIX文件协议标准的大部分功能,例如上传和下载文件、目录,设置用户权限等。

  • 默认使用OSS的分片上传和断点续传功能上传文件。

  • 支持MD5校验,保证数据的完整性。

  • 基于s3fs构建,具有s3fs的全部功能。

版本说明

ossfs 1.0版本的表达方式为x.yy.z。其中:

  • x.yyossfs基于开源s3fs的版本。x.yy版本发布时,支持通过CSI环境变量等配置项回退。

  • zossfs自身的迭代版本,包括OSS存储、ACK使用环境的优化。例如监控、鉴权、加密等新增功能。更多版本信息,请参见csi-plugin

  • 为了区分开源ossfs版本,容器ossfs版本还会有.ack.1后缀,例如1.80.6.ack.1

ossfs大版本迭代记录

重要

如果您对文件操作性能有较高要求,建议您将ossfs 1.0版本切换至1.91及以上版本。关于ossfs 1.91及以上版本的启用场景,请参见1.91及以上版本功能启用最佳实践。如何切换ossfs 1.0版本,请参见下文ossfs 1.0切换至1.91及以上版本

架构类型

ossfs 1.0版本

对应CSI版本

架构类型

ossfs 1.0版本

对应CSI版本

Arm64

1.91及以上版本

  • v1.30.1-98960d8-aliyun (通过特性门控启用)

  • v1.30.4-fe12624-aliyun(默认使用)

1.80.x

v1.20.5-ff6490f-aliyun(支持Arm64的首个CSI版本)

AMD64

1.91及以上版本

  • v1.30.1-98960d8-aliyun (通过特性门控启用)

  • v1.30.4-fe12624-aliyun(默认使用)

1.88.x

v1.22.14-820d8870-aliyun

1.86.x

v1.16.9.43-f36bb540-aliyun

1.80.x

初始版本

ossfs1.91及以上版本的详细迭代记录,请参见版本更新功能介绍

查看ossfs版本

  • CSI版本小于1.28且不包含1.26.6时,ossfs 1.0运行在节点上,您可以登录任一节点,执行以下命令确认ossfs 1.0的版本。

    /usr/local/bin/ossfs --version
  • CSI版本为1.26.6,或1.28.1及以上时,ossfs 1.0作为Pod内的容器运行在集群中。您可以通过以下方式确认ossfs 1.0的版本。

    CSI版本为1.30.4及以上
    CSI版本小于1.30.4
    说明

    如果CSI版本为1.30.4及以上,挂载OSS存储卷后,CSI组件将自动在ack-csi-fuse命名空间下创建相关Pod。

    1. 查询正在运行的Pod。

      kubectl -n ack-csi-fuse get pod | grep csi-fuse-ossfs
    2. 确认ossfs 1.0的版本。

      kubectl -n ack-csi-fuse exec -it <csi-fuse-ossfs-xxxx> -- ossfs --version
    说明

    如果CSI版本小于1.30.4,挂载OSS存储卷后,CSI组件将自动在kube-system命名空间下创建相关Pod。

    1. 查询正在运行的Pod。

      kubectl -n kube-system get pod | grep csi-fuse-ossfs
    2. 确认ossfs版本。

      kubectl -n kube-system exec -it <csi-fuse-ossfs-xxxx> -- ossfs --version

ossfs 1.0切换至1.91及以上版本

方法一:升级CSI版本

对于1.30.4及以上的CSI版本,ossfs 1.0默认已使用1.91及以上的版本,您可以直接通过升级CSI版本切换ossfs 1.0的版本。

方法二:开启特性门控

您需要开启UpdatedOssfsVersion特性门控以启用1.91及以上版本的ossfs 1.0。具体操作如下:

说明

默认情况下,同一节点上挂载同一OSS存储卷的Pod共用一个ossfs进程,即在集群中只会启动一个名为csi-fuse-ossfs-***Pod。开启UpdatedOssfsVersion特性门控后,新启动的ossfs容器将自动使用1.91及以上版本镜像,正在使用OSS存储卷的业务不受影响。如需手动触发当前业务使用的ossfs版本升级,请参见共享挂载方式下,如何重启ossfs进程?

  1. 确认csi-plugin版本为1.30.1及以上版本。

    1. 登录容器服务管理控制台,在左侧导航栏选择集群列表

    2. 集群列表页面,单击目标集群名称,然后在左侧导航栏,选择运维管理 > 组件管理

    3. 在组件管理页面,查找定位csi-plugin组件,查看组件当前版本。

      csi-plugin版本小于1.30.1,请单击组件右下角升级,将组件升级至最新版本。

  2. 开启UpdatedOssfsVersion特性门控。

    说明

    通过控制台开启时,设置的FeatureGate参数将覆盖原有的特性门控配置,若您不确定此前是否已经通过kubectl开启过其他特性门控功能,建议您使用kubectl方式进行开启。

    控制台
    kubectl
    1. 升级csi-plugin组件后,单击csi-plugin组件卡片中的配置

    2. csi-plugin 参数配置页面,设置FeatureGate参数为UpdatedOssfsVersion=true,然后单击确定

      若之前已经开启过其他特性门控,则参数填写格式为xxxxxx=true,yyyyyy=false,UpdatedOssfsVersion=true

    1. 修改csi-pluginDaemonSet文件。

      kubectl -n kube-system edit ds csi-plugin
    2. csi-plugin容器(非Init Container容器)的args中,新增参数--feature-gates=UpdatedOssfsVersion=true

      说明

      若之前已经开启过其他特性门控,新增参数格式为--feature-gates=xxxxxx=true,yyyyyy=false,UpdatedOssfsVersion=true

      修改后的args类似为:

      - args:
        - --endpoint=$(CSI_ENDPOINT)
        - --v=2
        - --driver=oss,nas,disk
        - --feature-gates=UpdatedOssfsVersion=true

相关文档

关于1.91及以上版本新增功能以及压测性能介绍,请参见ossfs 1.0新版本功能介绍及性能压测

  • 本页导读 (1)
  • 功能说明
  • 版本说明
  • 查看ossfs版本
  • 将ossfs 1.0切换至1.91及以上版本
  • 方法一:升级CSI版本
  • 方法二:开启特性门控
  • 相关文档
AI助理

点击开启售前

在线咨询服务

你好,我是AI助理

可以解答问题、推荐解决方案等