You need to enable JavaScript to run this app.
文档中心
容器服务

容器服务

复制全文
下载 pdf
FSX 访问方式
通过 FSX 客户端使用 vePFS 静态存储卷
复制全文
下载 pdf
通过 FSX 客户端使用 vePFS 静态存储卷
FSX 支持对接 vePFS 文件系统,提供 Fuse 框架的文件系统客户端,只需为 vePFS 文件系统创建 FUSE 协议服务,即可通过 FSX 进行挂载。本文为您介绍如何通过 FSX 客户端使用 vePFS 静态存储卷。​
前提条件​
  • 已安装 csi-fsx 和 fsxset-controller 组件,并升级至最新版本。详情请参见 csi-fsx、fsxset-controller。​
  • 文件存储 vePFS(性能版、智算版)已启用 FSX 客户端,并已创建接入点。详情请参见 FSX 客户端概述。​
  • (可选)已在本地安装 kubectl 工具,并通过 kubectl 连接目标集群。详情请参见 连接集群。​
使用限制​
  • FSX 客户端仅支持使用性能版或智算版 vePFS 文件系统实例。​
  • 若使用临时 Token 鉴权,需要自主实现刷新 Token 的逻辑。​
  • 有状态负载需要独占一个卷,暂不支持使用手动创建的存储卷声明。​
  • 暂不支持 Kubernetes v1.20 及以下版本的集群使用。​
  • 若使用 Kubernetes v1.26.x 版本集群,禁止使用名称中带符号.的 Secret 密钥,否则会导致 PV 创建失败。​
通过控制台配置​
步骤一:创建存储卷(PV)​
  1. 在左侧导航栏中,选择 集群,单击目标集群名称,进入集群管理页面。​
  1. 在集群管理页面左侧导航栏中,选择 存储管理 > 存储卷,单击 创建存储卷,在弹出的配置页面中,完成参数配置。​
  • ​​​
  • ​
    配置项​
    说明​
    创建方式​
    选择存储卷的创建方式,目前支持 静态创建。​
    名称​
    自定义存储卷的名称,需确保存储卷名称在集群内唯一。​
    存储类型​
    选择存储类型,本场景选择 文件存储 vePFS。​
    访问类型​
    存储卷的访问类型,本场景选择 FSX。其中,FSX 访问类型性能更强劲、企业特性更丰富,访问类型选型详细说明参见:选型说明。​
    注意​
    FSX 访问方式目前仅支持云服务器,不支持弹性容器。​
    访问模式​
    存储卷的访问方式,目前支持 ReadWriteMany,表示多点读写。​
    项目​
    为存储卷指定所属项目,从项目纬度管理集群资源的运维、授权等操作。默认选择 default(默认项目)。详情请参见 项目管理。​
    文件系统​
    根据实际需求,选择已经创建的 vePFS 文件系统和接入点。​
    访问密钥​
    选择 vePFS 文件存储的访问密钥。使用此处指定的访问密钥,授权容器服务访问对象存储。​
    若无可使用的访问密钥,请单击 创建密钥,根据系统提示配置密钥名称、所属空间和 IAM 账号的 AK/SK。​
    注意​
    若使用 1.26.x 版本集群,禁止使用名称中带符号.的 Secret 密钥,否则会导致 PV 创建失败。​
    子目录​
    文件系统已经存在的路径,根据实际情况配置。支持挂载根目录,且默认为根目录“/”。​
    注意​
    务必确保配置的子目录已经在文件系统中存在,否则会导致挂载失败。​
    ​
  1. 单击 确定,完成配置。​
步骤二:创建存储卷声明(PVC)​
  1. 在集群管理页面左侧导航栏中,选择 存储管理 > 存储卷声明,单击 创建存储卷声明,配置存储卷声明。​
  • ​​​
  • ​
    配置项​
    说明​
    命名空间​
    选择存储卷声明所属的命名空间。建议选择自定义的命名空间,或系统默认创建的 default 命名空间。命名空间详细介绍参见:命名空间概述。​
    名称​
    自定义存储卷声明的名称,需确保存储卷声明名称在集群内唯一。​
    存储类型​
    选择存储类型,本场景选择 文件存储 vePFS 。​
    访问模式​
    存储卷的访问方式,目前支持 ReadWriteMany,表示多点读写。​
    计费类型​
    按需选择资源计费类型,目前仅支持 按量计费。​
    规格​
    选择创建存储卷使用的文件系统规格,目前支持:100 MB/s/TiB、性能版,更多详细介绍参见:产品规格。​
    说明​
    【邀测·申请试用】智算版规格目前处于邀测阶段,如需使用,请提交申请。​
    创建方式​
    存储卷声明的创建方式,包括:基于存储类创建、使用已有存储卷。本场景选择 使用已有存储卷。​
    存储卷​
    指定 vePFS 文件存储类型的存储卷进行关联挂载。​
    ​
  1. 单击 确定,完成配置。​
步骤三:创建应用并挂载存储卷​
vePFS 文件存储类型的静态存储卷创建完成后,可通过添加卷的方式挂载到工作负载使用,包括:无状态负载、有状态负载、任务、定时任务、守护进程。​
可通过创建工作负载或更新工作负载操作的容器配置步骤,为工作负载添加卷并挂载卷。详细操作参见:工作负载。​
​alt​​
通过 kubectl 命令行配置​
已经 连接集群 的情况下,可通过 kubectl 命令行使用 vePFS 文件存储静态存储卷。​
步骤一:(可选)创建策略​
说明​
  • 若使用主账号 AK/SK,可跳过此步骤。​
  • 如需实现动态刷新临时 Token 的逻辑,参考 AssumeRole 接口。​
创建策略的操作步骤参见 新建自定义策略 ,创建 vePFS 文件系统策略的 Json 示例如下:​
​
{​
"Statement": [​
{​
"Effect": "Allow",​
"Action": [​
"vepfs:ClientMount",​
"vepfs:ClientWrite"​
],​
"Resource": ["trn:vepfs:cn-beijing:xxxx:filesystem/vepfs-cngl86xxxxxab461"],​
"Condition": {​
"StringEquals": {​
"volc:RequestTag/accesspoint": "<accesspoint ID>"​
}​
}​
},​
{​
"Effect": "Allow",​
"Action": [​
"vepfs:VerifyAccessPoint",​
"vepfs:DescribeAccessPoints",​
"vepfs:CreateAccessPoint",​
"vepfs:ModifyAccessPoint",​
"vepfs:DeleteAccessPoint"​
],​
"Resource": [​
"*"​
]​
}​
]​
}​
​
步骤二:创建保密字典(Secret)​
  1. 创建 Secret 的 Yaml 文件vke-pfs-fsx-secret.yaml,示例代码如下:​
  • ​
    apiVersion: v1​
    data:​
    AccessKeyId: ${ak} # Base64 编码后的账号 AK,需要替换为真实信息​
    SecretAccessKey: ${sk} # Base64 编码后的账号 SK,与上述 AK 匹配,需要替换为真实信息​
    ExpiredTime: ${Temporary Token expiration time} # Base64 编码后的临时 Token 过期时间,如果使用账号 AK/SK,不需要指定​
    SessionToken: ${Temporary Token content} # Base64 编码后的临时 Token 内容,如果使用账号 AK/SK,不需要指定​
    kind: Secret​
    metadata:​
    name: pfs-fsx-key # Secret 名称。若使用 1.26.x 版本集群,名称中禁止使用符号.,其他版本不受影响​
    namespace: default​
    type: Opaque​
    ​
说明​
您可以使用echo -n "${ak}" | base64命令对 AK、SK 等进行 Base64 编码,请将${ak}替换为您自己的实际值。例如当${ak}取值为demo时,编码命令为echo -n "demo" | base64,编码后的值为ZGVtbw==。​
  1. 执行以下命令,创建 Secret。​
  • ​
    kubectl create -f vke-pfs-fsx-secret.yaml​
    ​
步骤三:创建存储卷(PV)​
  1. 创建 PV 的 Yaml 文件vke-pfs-fsx-static-pv.yaml,示例代码如下:​
  • ​
    apiVersion: v1​
    kind: PersistentVolume​
    metadata:​
    name: vke-pfs-fsx-static-pv​
    spec:​
    capacity:​
    storage: 20Gi​
    accessModes:​
    - ReadWriteMany​
    persistentVolumeReclaimPolicy: Delete​
    csi:​
    driver: fsx.csi.volcengine.com # 存储挂载依赖的驱动​
    volumeHandle: vke-pfs-fsx-static-pv # PV 的唯一标识符,与 PV 名称保持一致。如需同时使用多个 PV,则各个 PV 中该值必须不一致​
    volumeAttributes:​
    type: vePFS # 存储卷类型,需配置为 vePFS​
    server: ap-55xxxxbd.cnbxxxxxx40305xx.rrmjxxxxxxxxxxx58q09xxx.cn-beijing.vepfs-ivolces.com # vePFS 挂载命令中的域名,格式为 <接入点 ID>.<接入点域名>​
    path: / # 挂载的目录,请确认 path 存在,否则挂载会失败​
    secretName: pfs-fsx-key # 已创建的 Secret​
    secretNamespace: default # 已创建 Secret 所在命名空间​
    ​
  1. 执行以下命令,创建 PV。​
  • ​
    kubectl create -f vke-pfs-fsx-static-pv.yaml​
    ​
步骤四:创建存储卷声明(PVC)​
  1. 创建 PVC 的 Yaml 文件文件vke-pfs-fsx-static-pvc.yaml,示例代码如下:​
  • ​
    apiVersion: v1​
    kind: PersistentVolumeClaim​
    metadata:​
    name: vke-pfs-fsx-static-pvc # PVC 名称​
    namespace: default​
    spec:​
    accessModes: # PVC 访问模式。仅支持 ReadWriteMany,表示多点读写​
    - ReadWriteMany​
    resources:​
    requests:​
    storage: 20Gi # 声明的存储使用量​
    volumeMode: Filesystem​
    volumeName: vke-pfs-fsx-static-pv # 绑定到该 PVC 的 PV 名称​
    ​
  1. 执行以下命令,创建 PVC。​
  • ​
    kubectl create -f vke-pfs-fsx-static-pvc.yaml​
    ​
  1. 执行以下命令,查看 PVC 与 PV 的静态绑定结果。​
  • ​
    kubectl get pvc​
    ​
  • 预期输出结果如下,表示 PVC 与 PV 静态绑定成功。​
  • ​
    NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE​
    vke-pfs-fsx-static-pvc Bound vke-pfs-fsx-static-pv 20Gi RWX 2m36s​
    ​
步骤五:创建应用并挂载存储卷​
  1. 创建 Deployment 的 Yaml 文件文件vke-pfs-fsx-static-deployment.yaml,示例代码如下:​
  • ​
    apiVersion: apps/v1​
    kind: Deployment​
    metadata:​
    name: vke-static-pfs-fsx-deploy​
    spec:​
    replicas: 1​
    selector:​
    matchLabels:​
    app: vke-static-vepfs-fsx-deploy​
    template:​
    metadata:​
    labels:​
    app: vke-static-vepfs-fsx-deploy​
    spec:​
    containers:​
    - image: nginx​
    imagePullPolicy: IfNotPresent​
    name: nginx​
    volumeMounts:​
    - mountPath: /tmp # 存储卷在容器中的挂载位置​
    name: pfs-fsx-pv​
    volumes:​
    - name: pfs-fsx-pv​
    persistentVolumeClaim:​
    claimName: vke-pfs-fsx-static-pvc # 已创建的 PVC 名称​
    ​
  1. 执行以下命令创建 Deployment。​
  • ​
    kubectl create -f vke-pfs-fsx-static-deployment.yaml​
    ​
最近更新时间:2026.07.03 17:17:09
这个页面对您有帮助吗?
有用
有用
无用
无用