すべてのプロダクト
Search
ドキュメントセンター

Platform For AI:ストレージマウント

最終更新日:Aug 18, 2026

OSS、NAS、データセット、コードセット、またはモデルを EAS サービスにマウントすることで、インスタンス間でデータを共有でき、イメージを再ビルドせずにコンテンツを更新できます。

ストレージソリューションの選択

最初にストレージタイプを選択し、次にマウント方法を選択します。

1. 基盤ストレージタイプの選択

データの特性とパフォーマンス要件に基づいて選択します。

ストレージタイプ

ファイルの特性

読み取り/書き込みパターン

パフォーマンス特性

一般的なユースケース

OSS

大量の大容量ファイル

読み取り中心

高スループット、低コスト

モデルファイルの保存、静的アセットの管理

汎用 NAS

中~大容量ファイル

読み取り/書き込み混在、複数インスタンス共有

中程度の IOPS、中程度のレイテンシー

複数インスタンスで共有するディレクトリ、設定ファイルの管理

エクストリーム NAS

多数の小さなファイル

高頻度、低レイテンシーの読み取り/書き込み操作

低レイテンシー、高 IOPS

AI トレーニング、ハイパフォーマンスコンピューティング

CPFS

超大規模ファイル

大規模並列読み取り/書き込み

極めて低いレイテンシー、極めて高スループット

分散トレーニング、大規模並列コンピューティング

推奨事項:

  • コスト重視のアプリケーションの場合: OSS はストレージコストが最も低く、パフォーマンスが重要ではない大容量データに適しています。

  • パフォーマンス重視のアプリケーションの場合: パフォーマンスは CPFS > エクストリーム NAS > 汎用 NAS > OSS の順です。予算とパフォーマンス要件に基づいて選択します。

  • ストレージの組み合わせ: 複数のストレージタイプを同時にマウントします。たとえば、大規模なモデルには OSS を使用し、共有の設定ファイルには汎用 NAS を使用します。

  • 移行パス: まず OSS で迅速に検証し、必要に応じて本番環境向けに NAS または CPFS にアップグレードします。

重要

2. マウント方法の選択

ユースケースに基づいてマウント方法を選択します。

マウント方法

ユースケース

主なメリット

説明

ストレージパスを直接マウント

迅速な検証、一時的な利用

設定が簡単、必要に応じて利用

OSS または NAS のパスを直接指定します。

PAI データセットをマウント

データバージョン管理、チームでの共同作業

バージョン管理、アセットの再利用

OSS または NAS のパスをデータセットとして登録します。

Git からマウント

アプリケーションコードとスクリプトのデプロイ

コードのバージョン管理

Git リポジトリからプルし、読み取り専用でマウントします。

PAI コードセットをマウント

企業のコードアセット管理

標準化された管理、監査とトレーサビリティ

Git リポジトリをコードセットとして登録します。

PAI モデルをマウント

モデルのバージョン管理

イテレーション、チームでの共同作業

モデルを PAI AI アセットとして登録します。

基本的なストレージマウント

OSS マウント

ユースケース

  • 大容量のモデルファイル (GB レベル以上) を保存します。

  • 画像、動画、設定ファイルなど、推論に必要な静的アセットを保存します。

  • データ読み取りが主体の、読み取り負荷の高いワークロードに使用します。

  • 低コストのストレージを必要とする、コストに敏感なアプリケーションに使用します。

設定

コンソールのストレージマウントセクションで OSS を選択し、バケットとマウントパスを指定します。

JSON の例:

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

パラメータ:

パラメータ (コンソール)

パラメータ (JSON)

説明

Uri

oss.path

ソース OSS バケットのパスです。バケットを作成するには、クイックスタートをご参照ください。

Mount Path

mount_path

サービスインスタンス内の宛先パスです。このパスからソースファイルにアクセスします。例:/mnt/data

Read-only

oss.readOnly

読み取り専用モードでマウントするかどうかを指定します。

NAS マウント

NAS マウントは、ストレージソリューションの選択に記載されているネットワーク要件に従い、汎用 NAS、エクストリーム NAS、CPFS をサポートします。

JSON の例:

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

パラメータ:

パラメータ (コンソール)

パラメータ (JSON)

説明

Storage Permission Resource Group

nfs.resourceGroup

ファイルシステムが属するリソースグループです。リソースグループによってファイルシステムをフィルタリングします。リソースグループ設計のベストプラクティスをご参照ください。

[All Storage Permission Resource Groups] を選択した場合、JSON ファイルでこのパラメータを設定する必要はありません。

Select File System

N/A

NAS ファイルシステム ID です。ご利用のリージョンの NAS コンソールで確認できます。

File System Mount Target

nfs.server

NAS マウントターゲットのアドレスです。マウントターゲットアドレスの表示で確認できます。

説明

コンソールでマウントターゲットを選択すると、関連付けられている VPC が自動的に選択されます。

File System Path

nfs.path

NAS ファイルシステム内のソースパスです (例:/)。このパスが存在することを確認してください。

Mount Path

mount_path

サービスインスタンス内の宛先パスです。例:/mnt/data

Read-only

nfs.readOnly

読み取り専用モードでマウントするかどうかを指定します。

Git マウント

JSON の例:

{
  "storage": [
        {
            "git": {
                "repo": "https://codeup.aliyun.com/xxx/eas/aitest.git",
                "branch": "master",
                "commit": "xxx",
                "username": "username",
                "password": "パスワードまたはアクセストークン"
            },
            "mount_path": "/mnt/data/"
        }
    ]
}

パラメータ:

パラメータ (コンソール)

パラメータ (JSON)

説明

Git URL

git.repo

Git リポジトリの HTTPS URL です。Git プロトコルはサポートされていません。

Branch

git.branch

プルするブランチです。デフォルト: master。

Commit

git.commit

プルするコミット ID です。

Git Username

git.username

プライベートリポジトリ認証用のユーザー名です。

Access Token

git.password

プライベート Git リポジトリ用のパスワードまたはアクセストークンです。付録:GitHub アカウントのトークンを取得するをご参照ください。

Mount Path

mount_path

サービスインスタンス内の宛先パスです。例:/mnt/data

プラットフォームアセットのマウント

PAI AI アセットとして登録されたデータセット、コードセット、モデルをマウントすることで、集中管理と再利用が可能になります。

データセットのマウント

データまたは設定ファイルを PAI データセットとして登録することで、バージョン管理や複数のデプロイにわたる再利用が可能になります。

説明

OSS、汎用 NAS、エクストリーム NAS、および CPFS を基盤とするカスタムデータセットをサポートします。

JSON の例:

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

パラメーター:

パラメーター (コンソール)

パラメーター (JSON)

説明

[Custom Dataset]

dataset.id

登録済みのカスタムデータセット。「データセットの作成と管理」で作成し、その ID を確認してください。

[Version]

version

データセットのバージョン。例: v1。

[Read-only]

dataset.read_only

データセットを読み取り専用でマウントするかどうか。

[Mount Path]

mount_path

サービスインスタンス内でのマウントパス。例: /mnt/data/

コードセットのマウント

Git リポジトリを PAI コードセットとして登録します。コードセットは読み取り専用モードでマウントされます。

JSON の例:

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

パラメーター:

パラメーター (コンソール)

パラメーター (JSON)

説明

[Code Configuration]

code.id

登録済みのコードセット。「コード設定」で作成し、その ID を確認してください。

[Mount Path]

mount_path

サービスインスタンス内でのマウントパス。例: /data_image

PAI モデルのマウント

モデルを PAI AI アセットとして登録し、バージョンとメタデータを集中管理します。モデルは読み取り専用モードでマウントされます。詳細については、「モデルの登録と管理」をご参照ください。

パラメーター:

パラメーター (コンソール)

説明

[PAI Model]

登録済みの PAI モデル。「モデルの登録と管理」で作成してください。

[Mount Path]

モデルのマウントパス。例: /mnt/model/

高度なマウントオプション

EAS は以下の追加マウント方法をサポートしています:

  • イメージマウント:Docker イメージパスから一時的なローカルボリュームにファイルをコピーし、サービスインスタンスにマウントします。大規模なディレクトリは、ストレージ使用量と起動時間を増加させます。

  • emptyDir マウント:実行中のインスタンスの一時ローカルストレージです。予期しない再起動後もコンテンツは保持されます。キャッシュや一時ファイルに使用します。

イメージマウント

JSON で設定します:

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

イメージは、同一リージョン内の内部ネットワークアドレスからのみマウントできます。プライベートイメージの場合は、認証に dockerAuth パラメーターを使用します。dockerAuth の設定については、「カスタムイメージの使用」をご参照ください。

パラメーター:

パラメーター (JSON)

説明

image.image

イメージリポジトリの内部ネットワークアドレス。

image.path

イメージ内のコピー元のパス。

mount_path

サービスインスタンス内の宛先パス。例:/data_image

emptyDir マウント

JSON で設定します:

{
    "storage": [
        {
            "empty_dir": {},
            "mount_path": "/mnt/temp"
        }
    ]
}

パラメーター:

パラメーター (JSON)

説明

mount_path

サービスインスタンス内の宛先パス。

empty_dir

emptyDir ボリュームを定義します。空のオブジェクト {} を指定すると、データはローカルディスクに保存されます。共有メモリを設定するために追加のプロパティを指定することもできます。

共有メモリの設定

より高いパフォーマンスを得るために、共有メモリボリューム (tmpfs) をマウントします:

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

パラメーター:

パラメーター (JSON)

説明

medium

このパラメーターを memory に設定します。

mount_path

このパラメーターを /dev/shm に設定します。

size_limit

メモリサイズの上限 (GB 単位)。

JSON 設定例

完全な設定例です。JSON によるデプロイメントについては、「JSON を使用したサービスのデプロイ」をご参照ください。

{
    "name": "service_name",
    "model_path": "http://path/to/model",
    "processor": "pmml",
    "storage": [
        {
            "oss": {
                "path": "oss://bucket/path/",
                "readOnly": false
            },
            "mount_path": "/mnt/oss_data/"
        },
        {
            "nfs": {
                "path": "/",
                "server": "06ba74****-a****.cn-hangzhou.nas.aliyuncs.com",
                "readOnly": false
            },
            "mount_path": "/mnt/nfs_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/git_code/"
        }
    ],
    "metadata": {
        "cpu": 1,
        "instance": 1,
        "resource": "eas-r-xxx"
    }
}

よくある質問

  1. OSS バケットをマウントした後に "file not found" エラーが表示されるのはなぜですか?

    多くの場合、パスの指定ミスが原因です。マウント設定とアクセスパスを確認してください。

    例えば、oss://my-bucket//mnt/data にマウントする場合、OSS のファイル oss://my-bucket/subfolder/myfile.txt には、/mnt/data/myfile.txt ではなく、コンテナ内のパス /mnt/data/subfolder/myfile.txt からアクセスする必要があります。

  2. ネットワーク接続の問題で NAS マウントに失敗した場合はどうすればよいですか?

    NAS をマウントするには、EAS サービスと NAS マウントターゲットが同じ VPC 内に存在する必要があります。以下を確認してください。

    • VPC の整合性:EAS サービスと NAS マウントターゲットの VPC ID が同一であることを確認してください。

    • ネットワーク設定:NAS にアクセスするには、Access public or internal resources from EAS の手順に従ってネットワークを設定してください。

    • マウントターゲットの状態:NAS マウントターゲットが存在し、状態が Available であることを確認してください。

  3. 認証エラーにより Git マウントに失敗した場合はどうすればよいですか?

    以下を確認してください。

    • アクセストークンの有効性:Git のアクセストークンが有効期限が切れておらず、リポジトリに対する読み取り権限があることを確認してください。

    • リポジトリの権限:プライベートリポジトリの場合は、ユーザー名とパスワードまたはトークンが正しく、読み取り権限があることを確認してください。

    • リポジトリのアドレス形式: https://github.com/user/repo.git のような HTTPS プロトコルを使用します。Git プロトコルはサポートされていません。

    • ブランチ/コミットの存在:指定したブランチ名またはコミット ID がリポジトリに存在することを確認してください。

  4. マウントパスの競合によりサービスの起動に失敗した場合はどうすればよいですか?

    マウントパスの競合は、次のような原因で発生することがあります。

    • マウントパスの重複: 同一サービス内で、複数のストレージ設定が同じマウントパスを使用しています。各ストレージの mount_path が一意になるようにしてください。

    • システムディレクトリの競合: マウントパスとして、/bin/etc/usr、または /lib などの重要なシステムディレクトリを指定することはできません。 /mnt または /data 配下のパスを使用してください。

    • 不正なパス形式: マウントパスは、スラッシュ (/) で始まる絶対パスである必要があります。

  5. FTP または SSH ツールを使用してインスタンスに接続し、ファイルをアップロードまたはダウンロードできますか?

    できません。EAS インスタンスでは FTP または SSH アクセスは提供されません。

  6. EAS サービスとは異なるリージョンにある OSS バケットをマウントできますか?

    できません。EAS はリージョンをまたいで OSS バケットをマウントできません。OSS の クロスリージョンレプリケーション 機能を使用して、EAS サービスと同じリージョンにある OSS バケットにデータを同期してください。

  7. ストレージをマウントしていない場合、インスタンスにダウンロードしたファイルはどこに保存されますか?

    ファイルは、インスタンスのシステムディスクに保存されます。このシステムディスクは一時的なものです。インスタンスの再起動または更新を行うと、システムディスク上のデータは失われます。データを永続化するには、外部ストレージをマウントしてください。

  8. EAS サービスで OSS のマウントに失敗し、s3fs ログに signal terminated と表示される場合はどうすればよいですか?

    signal terminated は、マウントプロセスが外部シグナルによって終了されたことを示しており、OSS がエラーを返したわけではありません。次の順序でトラブルシューティングを行います。

    • エンドポイントとバケット間のリージョンの一貫性: Uri (oss.path) で指定されたエンドポイントが、ターゲットバケットと同じリージョンにあることを確認してください。内部エンドポイントは、同じリージョン内でのみ利用可能です。バケットが存在するリージョンとは異なるリージョンのエンドポイントを使用すると、s3fs 接続は失敗します。

    • RAM ロールの権限:サービスに設定した RAM ロールに、対象バケットに対する読み取り/書き込み権限があることを確認してください。権限が不足している場合、起動時にマウントプロセスが終了します。

    • curldbg からの詳細なエラー: マウント設定に -o curldbg パラメーターを追加し、サービスを再起動します。このパラメーターを設定すると、ログに詳細な HTTP リクエストエラーが含まれるようになり、ネットワーク、認証、パスの問題を切り分けることができます。

    • ヘルスチェックとリソース制限: サービスのヘルスチェックのタイムアウトが十分に長く、コンテナリソースが超過していないことを確認してください。ヘルスチェックのタイムアウトやリソース制限の超過も、インスタンスプロセスを終了させてデータ損失を引き起こす原因となります。この場合も、ログには signal terminated と報告されます。

  9. リージョンをまたいだコンテナイメージのプルに失敗した場合はどうすればよいですか?

    サービスと同じリージョンでランタイムイメージを再ビルドしてプッシュするか、仮想プライベートクラウド (VPC) を設定してクロスリージョンの内部ネットワークに接続してください。詳細なトラブルシューティング手順については、EAS に関するよくある質問 および カスタムイメージの使用 をご参照ください。