全部產品
Search
文件中心

Elastic Container Instance:建立和管理DataCache

更新時間:May 26, 2026

部署DataCache CRD後,您可以建立DataCache提前拉取業務所需的資料,例如AI訓練模型等。本文介紹DataCache的配置參數以及如何建立、查詢和刪除DataCache。

前提條件

叢集中已部署DataCache CRD。具體操作,請參見部署DataCache CRD。

建立DataCache

配置說明

DataCache的YAML配置參數如下:

apiVersion: eci.aliyun.com/v1alpha1
kind: DataCache
metadata:
  name: test-url
spec:
  bucket: default
  path: /demo/url
  size: 20
  retentionDays: 3
  dataSource:
    type: URL 
    options:
      url: https://www.example.com
  netConfig: 
    securityGroupId: sg-2ze63v3jtm8e6sy******
    vSwitchId: vsw-2ze94pjtfuj9vaym******

參數說明如下:

  • apiVersion:API版本,固定為eci.aliyun.com/v1alpha1。

  • kind:資源類型,固定為DataCache。

  • metadata

    • name:DataCache名稱。

  • spec

    • bucket:資料的儲存空間。預設為default,支援自訂。eci-system為ECI保留空間,不可使用。

    • path:資料存放區的路徑。

    • size:DataCache大小。單位為GiB,預設為20 GiB。請根據實際資料量評估所需大小。

    • retentionDays:DataCache保留天數。到期會被清理。預設不到期。

    • dataSource:資料來源,包括資料來源類型type和配置參數options。

      資料來源類型

      資料來源說明

      配置參數

      URL

      連結地址

      • url:資料下載地址。

      • accessToken:拉取私人資料時,需配置該參數來驗證身份以訪問資料。

      HuggingFace或ModelScope

      • repoSource:取值範圍為ModelScope/Model、ModelScope/DataSet、HuggingFace/Model、HuggingFace/DataSet,表示從ModelScope或HuggingFace社區拉模數型或者資料集。

      • repoId:模型ID或資料集ID。

      • revision:版本。預設為main或者master。

      • accessToken:拉取私人資料時,需配置該參數來驗證身份以訪問資料。

      NAS

      NAS檔案系統

      • server:NAS檔案系統的掛載點。

      • path:掛載子目錄。極速型NAS需要以/share為首碼,例如/share/path。

      • vers:掛載NAS的NFS協議版本號碼。推薦使用v3,極速型NAS僅支援v3。

      • options:掛載選項。建議使用NAS服務推薦選項,例如nolock,tcp,noresvport。

      OSS

      OSS儲存空間

      • bucket:OSS Bucket的名稱。

      • url:OSS的接入網域名稱(Endpoint)。

      • path:掛載子目錄。相對Bucket根目錄的目錄,預設為/。

      • otherOpts:掛載OSS時支援輸入定製化參數,格式為-o *** -o ***,例如-o max_stat_cache_size=0 -o allow_other。

      • ramRole:使用RAM角色授權時,對應的RAM角色。

        說明

        請建立RAM角色並為該角色授權。具體操作,請參見建立可信實體為阿里雲服務的RAM角色和管理RAM角色的許可權。

        建立時,可信實體類型為阿里云服务,角色類型為普通服务角色,受信服務為云服务器;為角色授權時,請選擇AliyunOSSFullAccess權限原則。

      • akId:使用AccessKey直接授權時,對應的AccessKey ID。具體操作,請參見擷取AccessKey。

      • akSecret:使用AccessKey直接授權時,對應的AccessKey Secret。具體操作,請參見擷取AccessKey。

      SNAPSHOT

      快照

      snapshotId:快照ID。

    • netConfig

      • securityGroupId:建立DataCache過程中產生的ECI執行個體所屬的安全性群組ID。

      • vSwitchId:建立DataCache過程中產生的ECI執行個體所屬的交換器ID。

      如果需要通過公網拉取資料,在指定的交換器沒有配置SNAT時,支援綁定EIP來拉取公網資料。此時,可在netConfig下添加EIP相關參數。

      netConfig: 
        eipInstanceId: eip-2zey74a7zienoxf*****  #與eipCreateParam二選一
        eipCreateParam:  #與eipInstanceId二選一
          bandwidth: 5
          commonBandwidthPackage:  cbwp-2zeukbj916scmj5******
          internetChargeType:  PayByTraffic
          publicIpAddressPoolId: pippool-bp187arfugi543y1s****
          ISP: BGP
      • eipInstanceId:如果指定的交換器沒有配置SNAT,可以綁定已有的可用EIP,以便拉取公網資料。

      • eipCreateParam:如果指定的交換器沒有配置SNAT,且沒有可用的EIP,此時如果想要拉取公網資料,可以配置以下參數建立一個EIP並綁定。

        • bandwidth:EIP頻寬。單位為Mbps。預設為5 Mbps。

        • commonBandwidthPackage:綁定已有的共用頻寬包。更多資訊,請參見共用頻寬。

        • internetChargeType:EIP的計量方式。取值範圍為PayByBandwidth(按頻寬計費)和PayByTraffic(按流量計費)。更多資訊,請參見EIP計費方式。

        • publicIpAddressPoolId:IP位址集區ID。 EIP將從該IP位址集區中分配。 IP位址集區功能預設不開放。如需使用,請在配額中心申請IP位址集區功能權益配額。更多資訊,請參見IP 位址集區。

        • ISP:EIP的線路類型。取值範圍為BGP(預設值)和BGP_PRO。更多資訊,請參見EIP線路類型。

配置樣本

編寫DataCache的YAML設定檔(假設名稱為datacache.yaml),通過kubectl命令即可建立DataCache。

  • 全新建立

    kubectl create -f datacache.yaml
  • 更新建立

    kubectl apply -f datacache.yaml

URL

  • 從連結地址拉取資料

    apiVersion: eci.aliyun.com/v1alpha1
    kind: DataCache
    metadata:
      name: test-url-1
    spec:
      path: /demo/url
      dataSource:
        type: URL 
        options:
          url: https://www.example.com
      netConfig:                
        securityGroupId: sg-2ze63v3jtm8e6sy******
        vSwitchId: vsw-2ze94pjtfuj9vaym******

  • 從HuggingFace拉模數型

    apiVersion: eci.aliyun.com/v1alpha1
    kind: DataCache
    metadata:
      name: test-url-2
    spec:
      path: /demo/url
      dataSource:
        type: URL 
        options:
          repoSource: "HuggingFace/Model"        
          repoId: "decapoda-research/llama-7b-hf"
      netConfig: 
        securityGroupId: sg-2ze63v3jtm8e6sy******
        vSwitchId: vsw-2ze94pjtfuj9vaym******

NAS

apiVersion: eci.aliyun.com/v1alpha1
kind: DataCache
metadata:
  name: test-nas
spec:
  path: /demo/nas
  dataSource:
    type: NAS 
    options:
      server: "0389a***-nh**.cn-beijing.extreme.nas.aliyuncs.com"
      path: "/"
      vers: "3"
      options: "nolock,tcp,noresvport"
  netConfig: 
    securityGroupId: sg-2ze63v3jtm8e6sy******
    vSwitchId: vsw-2ze94pjtfuj9vaym******

OSS

apiVersion: eci.aliyun.com/v1alpha1
kind: DataCache
metadata:
  name: test-oss
spec:
  path: /demo/oss
  dataSource:
    type: OSS 
    options:
      bucket: "oss-***"
      url: "oss-cn-beijing-internal.aliyuncs.com"
      path: "/test"
      otherOpts: "-o max_stat_cache_size=0 -o allow_other"
      ramRole: "<your RAM Role Name>"
  netConfig: 
    securityGroupId: sg-2ze63v3jtm8e6sy******
    vSwitchId: vsw-2ze94pjtfuj9vaym******

SNAPSHOT

apiVersion: eci.aliyun.com/v1alpha1
kind: DataCache
metadata:
  name: test-snapshot
spec:
  path: /demo/snapshot
  dataSource:
    type: SNAPSHOT 
    options:
      snapshotId: s-uf6j98q2tvfcjz******
  netConfig: 
    securityGroupId: sg-2ze63v3jtm8e6sy******
    vSwitchId: vsw-2ze94pjtfuj9vaym***

管理DataCache

說明

查詢或刪除時,可使用以下任意一個名稱作為資源類型名稱:

  • edc

  • datacache

  • datacaches

  • datacaches.eci.aliyun.com

查詢DataCache

建立DataCache後,您可以根據需要查詢叢集下所有DataCache列表或者查看某個DataCache的詳細資料。

  • 查詢叢集下所有DataCache列表

    kubectl get edc 

    返回樣本如下,狀態為Available表示可以使用該DataCache。

    ~$ kubectl get datacache
    NAME              AGE   DATACACHEID            STATUS      PROGRESS   BUCKET    PATH
    test-snapshot     3m5s  edc-2zef0yo3be9g8…     Creating    27%        default   /demo/snapshot
    test-url-2        81m   edc-2zehgoxuevp3er     Available   100%       default   /demo/url
  • 查看某個DataCache的詳細資料

    kubectl describe edc <edc-name>

    返回樣本如下,包括DataCache的基本資料、中繼資料、配置、狀態和事件資訊等。

    :~$ kubectl describe edc test-url-2
    Name:         test-url-2
    Namespace:
    Labels:       <none>
    Annotations:  <none>
    API Version:  eci.aliyun.com/v1alpha1
    Kind:         DataCache
    Metadata:
      Creation Timestamp:  2023-07-27T08:25:26Z
      Finalizers:
        eci.aliyun.com/datacachecontroller
      Generation:        1
      Resource Version:  816839
      UID:               70b90647-4915-45d5-a075-f0e3cf2fdcfb
    Spec:
      Bucket:  default
      Data Source:
        Options:
          Repo Id:      decapoda-research/llama-7b-hf
          Repo Source:  HuggingFace/Model
          Type:         URL
      Net Config:
        Security Group Id:  sg-2zegwszw5xxx
        V Switch Id:        vsw-2zeet2ksxxx
      Path:                 /demo/url
      Size:                 20
    Status:
      Data Cache Id:  edc-2zehgoxuevpxxx
      Progress:       100%
      Snapshot Id:    s-2zeib05j5bmxm:xxx
      Status:         Available
    Events:
      Type    Reason    Age   From                  Message
      ----    ------    ----  ----                  -------
      Normal  Creating  31m   datacache-controller  Creating dataCache in ECI
      Normal  Creating  31m   datacache-controller  ECI status: Pending
      Normal  Success   30m   datacache-controller  Create dataCache in ECI successfully

刪除DataCache

重要

DataCache對應一個快照。保留快照需要支付快照儲存費用。對於不再使用的DataCache,建議您及時刪除。

如果想要刪除某個DataCache,可執行以下命令:

kubectl delete edc <edc-name>