日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

靜態(tài)掛載CPFS智算版存儲卷

對于AIGC、自動駕駛等智算場景,可以選擇CPFS智算版作為持久化存儲卷。本文介紹如何為應(yīng)用靜態(tài)掛載CPFS存儲卷,并驗證CPFS的共享存儲和持久化存儲。

背景信息

CPFS智算版是阿里云文件存儲CPFS推出的一款超高性能的文件存儲服務(wù),支持端到端RDMA網(wǎng)絡(luò),適用于AIGC、自動駕駛等智算場景。更多信息,請參見存儲概述。

重要

目前ACS僅支持使用CPFS智算版,不支持CPFS通用版。CPFS智算版目前處于邀測中,更多信息,請參見CPFS智算版。

前提條件

ACS集群中已安裝managed-csiprovisioner組件。

說明

您可以在ACS集群管理頁的左側(cè)導(dǎo)航欄選擇運維管理 > 組件管理,在存儲頁簽下查看managed-csiprovisioner組件的安裝情況。

使用限制

  • 僅支持在高性能網(wǎng)絡(luò)GPU型工作負(fù)載中掛載CPFS智算版文件系統(tǒng)。

  • 僅部分地域和可用區(qū)支持創(chuàng)建CPFS智算版文件系統(tǒng),具體請參見CPFS智算版。

注意事項

  • CPFS為共享存儲。一個CPFS存儲卷可以掛載到多個Pod上。

  • CPFS智算版采用按量計費,具體請參見CPFS智算版

創(chuàng)建CPFS智算版文件系統(tǒng)

CPFS智算版目前處于邀測中,您需要提交工單,申請?zhí)砑覥PFS智算版服務(wù)使用白名單后,才能創(chuàng)建CPFS智算版文件系統(tǒng)。更多信息,請參見創(chuàng)建CPFS智算版文件系統(tǒng)

靜態(tài)掛載CPFS存儲卷

步驟一:創(chuàng)建PV

  1. 連接集群。具體操作,請參見獲取集群KubeConfig并通過kubectl工具連接集群在CloudShell上通過kubectl管理Kubernetes集群

  2. 將以下YAML內(nèi)容保存為pv.yaml。

    apiVersion: v1
    kind: PersistentVolume
    metadata:
      name: bmcpfs-gpu-hpn
    spec:
      accessModes:
      - ReadWriteMany
      capacity:
        storage: 10Ti
      claimRef:
        name: bmcpfs-gpu-hpn
        namespace: default
      csi:
        driver: povplugin.csi.alibabacloud.com
        volumeAttributes:
          filesystemId: bmcpfs-*****
          path: /
        volumeHandle: bmcpfs-*****
      persistentVolumeReclaimPolicy: Retain
      storageClassName: alibaba-cloud-cpfs-premium

    相關(guān)參數(shù)說明如下:

    參數(shù)

    說明

    accessModes

    訪問模式。

    capacity

    聲明存儲卷容量。

    claimRef

    綁定的 PVC 的namespacename

    csi.driver

    驅(qū)動類型,必須設(shè)置為povplugin.csi.alibabacloud.com。

    csi.volumeAttributes

    • filesystemIdCPFS智算版文件系統(tǒng)ID,例如bmcpfs-*****

    • path默認(rèn)為/表示掛載CPFS文件系統(tǒng)的根目錄,支持設(shè)置為子目錄,如/dir。如果子目錄不存在,會在掛載時被自動創(chuàng)建。

    csi.volumeHandle

    設(shè)置為CPFS智算版文件系統(tǒng)ID。

    persistentVolumeReclaimPolicy

    回收策略,必須設(shè)置為Retain

  3. 創(chuàng)建PV。

    kubectl create -f pv.yaml

步驟二:創(chuàng)建PVC

  1. 將以下YAML內(nèi)容保存為pvc.yaml。

    apiVersion: v1
    kind: PersistentVolumeClaim
    metadata:
      name: bmcpfs-gpu-hpn
    spec:
      accessModes:
      - ReadWriteMany
      storageClassName: alibaba-cloud-cpfs-premium
      volumeName: bmcpfs-gpu-hpn
      resources:
        requests:
          storage: 10Ti

    相關(guān)參數(shù)說明如下:

    參數(shù)

    說明

    accessModes

    訪問模式。

    volumeName

    設(shè)置為之前創(chuàng)建的PV名。

    resources.requests

    容量不大于PV容量即可。

  2. 創(chuàng)建PVC。

    kubectl create -f pvc.yaml
  3. 檢查PVC完成綁定。

    kubectl get pvc bmcpfs-gpu-hpn

    返回示例如下:

    NAME             STATUS   VOLUME           CAPACITY   ACCESS MODES   STORAGECLASS                 VOLUMEATTRIBUTESCLASS   AGE
    bmcpfs-gpu-hpn   Bound    bmcpfs-gpu-hpn   10Ti       RWX            alibaba-cloud-cpfs-premium   <unset>                 10s

步驟三:創(chuàng)建應(yīng)用并掛載CPFS

  1. 使用以下YAML內(nèi)容,創(chuàng)建cpfs-test.yaml文件。

    以下YAML示例可以創(chuàng)建包含2個Pod的Deployment,2個Pod均通過alibabacloud.com/compute-class: gpu-hpn聲明要使用GPU型算力,并且通過名為cpfs-pvc的PVC申請存儲資源,掛載路徑均為/data。

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: cpfs-test
      labels:
        app: cpfs-test
    spec:
      replicas: 2
      selector:
        matchLabels:
          app: cpfs-test
      template:
        metadata:
          labels:
            app: cpfs-test
            alibabacloud.com/compute-class: gpu-hpn
        spec:
          containers:
          - name: nginx
            image: registry.cn-hangzhou.aliyuncs.com/acs-sample/nginx:latest
            ports:
            - containerPort: 80
            volumeMounts:
              - name: pvc-cpfs
                mountPath: /data
          volumes:
            - name: pvc-cpfs
              persistentVolumeClaim:
                claimName: bmcpfs-gpu-hpn
  2. 創(chuàng)建Deployment并掛載CPFS。

    kubectl create -f cpfs-test.yaml
  3. 查看Deployment中Pod的部署情況。

    kubectl get pod | grep cpfs-test

    返回示例如下,已創(chuàng)建2個Pod。

    cpfs-test-****-***a   1/1     Running   0          45s
    cpfs-test-****-***b   1/1     Running   0          45s
  4. 查看掛載路徑。

    命令示例如下,預(yù)期會返回CPFS智算版文件系統(tǒng)掛載目錄下的數(shù)據(jù)。默認(rèn)為空。

    kubectl exec cpfs-test-****-***a -- ls /data

驗證CPFS的共享存儲和持久化存儲

按照上文示例創(chuàng)建的Deployment中含有2個Pod,2個Pod同時掛載了同一CPFS智算版文件系統(tǒng)。您可以通過以下方式進行驗證:

  • 在一個Pod中創(chuàng)建文件,然后另一個Pod中查看文件,以此來驗證共享存儲。

  • 重建Deployment,然后在新創(chuàng)建的Pod中查看文件系統(tǒng)中的數(shù)據(jù)是否存在,以此來驗證持久化存儲。

  1. 查看Pod信息。

    kubectl get pod | grep cpfs-test

    返回示例如下:

    cpfs-test-****-***a   1/1     Running   0          45s
    cpfs-test-****-***b   1/1     Running   0          45s
  2. 驗證共享存儲。

    1. 在一個Pod中創(chuàng)建文件。

      以名為cpfs-test-****-***a的Pod作為示例:

      kubectl exec cpfs-test-****-***a -- touch /data/test.txt
    2. 在另一個Pod中查看文件。

      以名為cpfs-test-****-***b的Pod作為示例:

      kubectl exec cpfs-test-****-***b -- ls /data

      預(yù)期返回如下,可以看到已共享新建的文件test.txt

      test.txt
  3. 驗證持久化存儲。

    1. 重建Deployment。

      kubectl rollout restart deploy cpfs-test
    2. 查看Pod,等待新Pod創(chuàng)建成功。

      kubectl get pod | grep cpfs-test

      返回示例如下:

      cpfs-test-****-***c   1/1     Running   0          78s
      cpfs-test-****-***d   1/1     Running   0          52s
    3. 在新Pod中查看文件系統(tǒng)中的數(shù)據(jù)是否存在。

      以名為cpfs-test-c***的Pod作為示例:

      kubectl exec cpfs-test-****-***c -- ls /data

      預(yù)期返回如下,可以看到CPFS智算版文件系統(tǒng)中的數(shù)據(jù)依然存在,在新Pod的掛載目錄下可以重新獲取。

      test.txt