跳到主要内容

声明存储

更新时间:2025-04-23 16:58:25

开通弹性容器集群时,按客户申请,同步开通系统存储大小。
弹性容器集群 默认把系统存储分成两部分,静态存储和动态存储,其中动态存储默认10G空间
弹性容器集群 屏蔽底层的存储细节,用户只需要按需声明使用PVC, 挂载到容器目录中使用
更多k8s存储方面的知识,请参考k8s存储

提示

所有拥有权限的账号,共享静态存储,静态存储可以在不同资源清单共享数据
动态存储只有10G,且不可扩容,推荐用户使用静态存储

静态存储pvc声明

  • 用户在创建namespace时,自动创建静态存储声明,不需要用户再显式声明静态存储
    pvc-capacity-userdata:读写(当前集群下的目录及文件)
    pvc-capacity-share: 只读(企业下的所有目录及文件)
    pvc-capacity-app:只读(开通的应用(Inference, LM Lab)下的目录及文件)
    获取存储声明:

    kubectl get pvc -n test

    image

  • 如果用户已开通其他存储,可联系客服创建PV,然后使用如下方式声明。

    apiVersion: v1
    kind: PersistentVolumeClaim
    metadata:
    name: your-pvc-name
    spec:
    volumeName: your-pv-name
    accessModes:
    - ReadWriteMany
    提示

    用户在通过上述文件声明时,请根据已开通PV信息替换上述文件的your-pvc-nameyour-pv-name

动态存储pvc声明

获取StorageClass:

kubectl get storageClass

image

示例:

# `弹性容器集群` 动态存储pvc声明
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: your-pvc-name
namespace: your-namespace
spec:
storageClassName: your-storage-class # 上步获取的存储类名称
accessModes:
- ReadWriteMany
resources:
requests:
storage: 1Gi

使用存储

将声明的pvc挂载到容器的指定目录
claimName的值 静态存储:pvc-capacity-userdata:读写(弹性容器集群使用)
如果动态存储(最多10G),填写您创建的PVC名称

示例:

#pod中使用存储
template:
metadata:
labels:
app: your-label
spec:
containers:
- name: your-container-name
image: your-image # 替换为您自己的镜像名称
command: your-command
ports:
- containerPort: your-port-num
volumeMounts:
- name: data-volume
mountPath: /mnt/test # 容器内使用存储的目录
volumes:
- name: data-volume
persistentVolumeClaim:
claimName: pvc-capacity-userdata # 如果是动态存储,此处是您声明的PVC名称