全部產品
Search
文件中心

Platform For AI:為EAS服務進行儲存掛載

更新時間:Aug 23, 2025

EAS服務支援多種儲存掛載方式,可將模型檔案、代碼檔案或其他設定檔掛載至服務執行個體中。通過掛載功能,實現多執行個體間的資料共用,並在模型迭代或代碼更新時直接修改掛載檔案,無需重新構建鏡像,降低開發和營運成本。本文介紹EAS服務支援的掛載類型及其配置方法。

掛載不同類型的儲存

  • 如果是模型、圖片、視頻等非結構化資料,且主要是讀取操作,請優先選擇 OSS

  • 如果會頻繁讀寫小檔案,或多個服務執行個體需要共用一個讀寫目錄,請選擇通用型NAS

  • 如果涉及高效能運算或AI訓練,並且需要極低時延和高吞吐,選擇極速型NAS智算CPFS

  • 如果需要對接大規模並行計算架構或AI訓練架構,優先選擇智算CPFS

說明
  • 僅使用靈駿智算資源配額部署EAS服務時,支援掛載智算CPFS檔案系統。

  • NAS僅支援同地區內網地址掛載,且需要打通到NAS所在vSwitch的直連網路,網路打通方法請參見網路設定

OSS掛載

這是最常用的儲存掛載。控制台配置介面如下:

image

JSON配置樣本:

{
  "storage": [
        {
            "oss": {
                "path": "oss://bucket/path/",
                "readOnly": false
            },
            "mount_path": "/mnt/data/"
        }
    ]
}

參數說明:

參數(控制台)

參數(JSON配置)

描述

Uri

oss.path

配置為OSS源地址路徑,即Object Storage Service儲存空間路徑。如何建立儲存空間,請參見控制台快速入門

掛載路徑

mount_path

表示掛載到服務執行個體中的目標路徑,用來讀取源檔案或資料。例如/mnt/data

是否唯讀

oss.readOnly

支援通過開啟或關閉是否唯讀開關,來設定讀寫權限。

NAS掛載

NAS掛載(包括通用型NAS、極速型NAS和智算CPFS)僅支援同地區內網地址掛載,可以使用內網NAS地址,且需要打通到NAS所在vSwitch的直連網路,網路打通方法請參見網路設定

控制台配置介面如下:image

JSON配置樣本:

{
  "storage": [
        {
            "nfs": {
                "path": "/",
                "server": "06ba74****-a****.cn-hangzhou.nas.aliyuncs.com",
                "readOnly": false
            },
            "mount_path": "/mnt/data/"
        }
    ]
}

參數說明:

參數(控制台)

參數(JSON配置)

描述

儲存許可權資源群組

nfs.resourceGroup

檔案系統資源群組,通過資源群組過濾相應的檔案系統。更多關於資源群組介紹資訊,請參見資源群組設計最佳實務

當選擇全部儲存許可權資源群組時,JSON中無需配置。

選擇檔案系統

已建立的NAS檔案系統的ID。您可以登入NAS控制台,在對應的地區,查看NAS檔案系統ID。

檔案系統掛載點

nfs.server

NAS掛載點的地址,EAS服務將通過掛載點來訪問NAS檔案系統。如何查看,請參見查看掛載點地址

說明

通過控制台選擇掛載點後,系統會自動選擇與掛載點一致的專用網路。

檔案系統路徑

nfs.path

需要掛載的NAS中的源路徑。即NAS執行個體內部的檔案系統路徑,例如/。請確保該路徑存在,否則後續使用時會出現錯誤。

掛載路徑

mount_path

掛載到服務執行個體中的目標路徑,用來讀取源檔案或資料。例如/mnt/data

是否唯讀

nfs.readOnly

是否以唯讀方式進行掛載。

掛載自訂資料集

支援將相關資料或設定檔建立為PAI的資料集,註冊為公用AI資產,方便在部署服務時掛載引用。

說明

僅支援掛載Object Storage Service類型的自訂資料集。

控制台配置介面如下:image

JSON配置樣本:

"storage": [
        {
            "dataset": {
                "id": "d-pcsah1t86bm8******",
                "version": "v1",
                "read_only": false
            },
            "mount_path": "/mnt/data/"
        }
    ]

參數說明:

參數(控制台)

參數(JSON配置)

描述

自訂資料集

dataset.id

登入的Object Storage Service類型的自訂資料集。如何建立自訂資料集、擷取資料集ID,請參見建立及管理資料集

版本

version

資料集版本,例如v1。

是否唯讀

dataset.read_only

是否以唯讀方式進行掛載。

掛載路徑

mount_path

掛載到服務執行個體中的目標路徑。例如/mnt/data/

掛載代碼

  • Git掛載:支援將Git倉庫中的代碼以唯讀方式掛載到服務執行個體中,執行個體啟動時拉取代碼。代碼變更後,需重啟服務執行個體才會生效。

  • 代碼配置:支援將Git代碼倉庫建立為PAI的代碼集,註冊為公用AI資產,方便在部署服務時掛載引用。

Git掛載

控制台配置介面如下:image

JSON配置樣本:

{
  "storage": [
        {
            "git": {
                "repo": "https://codeup.aliyun.com/xxx/eas/aitest.git",
                "branch": "master",
                "commit": "xxx",
                "username": "username",
                "password": "password or access token"
            },
            "mount_path": "/mnt/data/"
        }
    ]
}

參數說明:

參數(控制台)

參數(JSON配置)

描述

Git地址

git.repo

需要掛載的Git代碼倉庫的HTTPS地址。暫不支援Git協議。

代碼分支

git.branch

需要拉取的Git代碼倉庫的分支,預設為master。

代碼Commit

git.commit

需要拉取的Git代碼倉庫的commit ID。

Git使用者名稱

git.username

私人Git代碼倉庫的登入使用者名稱。

訪問Token

git.password

私人Git代碼倉庫的登入密碼。擷取方法,請參見附錄:擷取GitHub帳號的Token

掛載路徑

mount_path

掛載到服務執行個體中的目標路徑。例如/mnt/data

代碼配置

以唯讀方式掛載到服務執行個體中。

控制台配置介面如下:image

JSON配置樣本:

"storage": [
        {
            "code": {
                "id": "code-4d3b42a1152****"
            },
            "mount_path": "/mnt/data/"
        }
    ]

參數說明:

參數(控制台)

參數(JSON配置)

描述

代碼配置

code.id

登入的代碼集。如何建立代碼集、擷取代碼集ID,請參見代碼配置

掛載路徑

mount_path

掛載到服務執行個體中的目標路徑。例如/data_image

掛載PAI模型

將服務所需的模型註冊為PAI公用的AI資產,方便在PAI中統一管理模型,詳情請參見註冊及管理模型。後續在部署服務時以唯讀方式掛載到服務執行個體中。

控制台配置介面如下:

image

參數說明:

參數(控制台)

描述

PAI模型

登入的PAI模型。如何建立模型,請參見註冊及管理模型

掛載路徑

掛載到服務執行個體中的目標路徑。例如/mnt/data/

其他掛載

  • 鏡像掛載:Docker Image的掛載方式並非直接將鏡像中的目錄掛載到服務執行個體中,而是通過Shared Volume先將要掛載的鏡像中的指定目錄中的檔案拷貝至本地Shared Volume中,在服務運行時掛載本地的Shared Volume,因此當要掛載的目錄中資料量較大時,會消耗較多的本機存放區,並延長服務執行個體啟動時間。請根據需要使用該功能。

  • EmptyDir掛載:如果您希望執行個體運行時讀寫本地磁碟目錄,且執行個體異常重啟後寫入的內容不會丟失,則可以使用EmptyDir的儲存掛載方式。

鏡像掛載

  • 配置方法

    {
        "storage": [
            {
                "image": {
                    "image": "registry-vpc.cn-xxxx.aliyuncs.com/eas/image_name:v1",
                    "path": "/path/to/mount/"
                },
                "mount_path": "/data_image"
            }
        ]
    }
    說明

    僅支援同地區內網地址掛載,如要掛載的鏡像是private,需通過dockerAuth參數來指定鏡像倉庫的鑒權資訊。關於dockerAuth參數的使用說明,請參見自訂鏡像

  • 參數說明

    參數(JSON配置)

    描述

    image.image

    需要掛載的內網鏡像倉庫地址。

    image.path

    需要掛載到服務執行個體中的鏡像中的路徑。

    mount_path

    掛載到服務執行個體中的目標路徑。例如/data_image

EmptyDir掛載

  • 配置方法

    {
        "name": "service_name",
        "storage": [
            {
                "empty_dir": {},
                "mount_path": "/data_image"
            }
        ]
    }
  • 參數說明

    參數名(JSON配置)

    含義

    mount_path

    掛載到服務執行個體中的目標路徑。

    empty_dir

    表示類型為EmptyDir、值為空白的Map,表示將資料存放區在本地磁碟上。暫不支援其他屬性的配置。

配置共用記憶體

當對儲存效能要求較高時,您可以使用以下設定檔來配置共用記憶體。

{
    "storage": [
        {
            "empty_dir": {
              "medium": "memory",
              "size_limit": 20
            },
            "mount_path": "/dev/shm"
        }
    ]
}

其中:

參數(JSON配置)

描述

medium

指定為memory

mount_path

指定為/dev/shm

size_limit

用來限制記憶體上限,單位為GB。

JSON配置完整樣本

完整的配置樣本如下,更多配置詳情,請參見JSON部署

{
    "name": "service_name",
    "model_path": "http://path/to/model",
    "processor": "pmml",
    "storage": [
        {
            "oss": {
                "path": "oss://bucket/path/",
                "readOnly": false
            },
            "mount_path": "/mnt/data/"
        },
        {
            "nfs": {
                "path": "/",
                "server": "06ba74****-a****.cn-hangzhou.nas.aliyuncs.com",
                "readOnly": false
            },
            "mount_path": "/mnt/data/"
        },
        {
            "image": {
                "image": "registry-vpc.cn-shanghai.aliyuncs.com/eas/test_image:v1",
                "path": "/path/to/mount/"
            },
            "mount_path": "/data_image"
        },
        {
            "empty_dir": {
              "medium": "memory",
              "size_limit": 20
            },
            "mount_path": "/dev/shm"
        },
        {
            "git": {
                "repo": "https://codeup.aliyun.com/xxx/eas/aitest.git",
                "branch": "master",
                "commit": "xxx",
                "username": "username",
                "password": "password or access token"
            },
            "mount_path": "/mnt/data/"
        }
    ],
    "metadata": {
        "cpu": 1,
        "instance": 1,
        "resource": "eas-r-xxx"
    }
}

常見問題

  1. 掛載了OSS,為何報錯找不到檔案?

    通常是路徑錯誤,請檢查掛載配置以及訪問路徑。

    例如,將 oss://my-bucket/ 掛載到 /mnt/data,OSS中檔案 oss://my-bucket/subfolder/myfile.txt在容器中需通過 /mnt/data/subfolder/myfile.txt 訪問,而不是 /mnt/data/myfile.txt

  2. 可以直接用FTP或SSH工具串連到執行個體上傳/下載檔案嗎?

    不可以。EAS執行個體不提供FTP或SSH訪問。

  3. EAS和OSS不在同一地區,可以掛載嗎?

    不可以。EAS無法跨地區掛載OSS。請使用 OSS的跨地區複製將資料同步到與EAS服務相同地區的OSS Bucket中。

  4. 未掛載儲存時,下載到執行個體中的檔案去哪了? 檔案儲存在執行個體的系統硬碟中,會在執行個體重啟或更新後被清空,導致資料丟失。建議掛載儲存以持久化資料。