

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# ストレージプロファイルからパスマッピングルールを取得する
<a name="deriving-path-mapping-rules-from-storage-profiles"></a>

 パスマッピングルールは、ジョブからワーカーホスト上のパスの実際の場所にパスを再マッピングする方法を説明します。タスクがワーカーで実行されている場合、ジョブのストレージプロファイルがワーカーのフリートのストレージプロファイルと比較され、タスクのパスマッピングルールが取得されます。

 Deadline Cloud は、キューの設定に必要なファイルシステムの場所ごとにマッピングルールを作成します。たとえば、`WSAll`ストレージプロファイルを使用してキューに送信されたジョブ`Q1`には、パスマッピングルールがあります。
+  `FSComm`: `/shared/common -> /mnt/common` 
+  `FS1`: `/shared/projects/project1 -> /mnt/projects/project1` 

 Deadline Cloud は、 `FSComm`と `FS1` ファイルシステムの場所のルールを作成しますが、 `WSAll`と の両方の`WorkerConfig`ストレージプロファイルが を定義している場合でも、`FS2`ファイルシステムの場所は作成しません`FS2`。これは、キュー`Q1`の必要なファイルシステムの場所のリストが であるためです`["FSComm", "FS1"]`。

 オープンジョブ[の説明のパスマッピングルールファイルを出力するジョブを送信し、ジョブの完了後にセッションログを読み取ることで、特定のストレージプロファイルで送信されたジョブで使用できるパスマッピングルール](https://github.com/OpenJobDescription/openjd-specifications/wiki/How-Jobs-Are-Run#path-mapping)を確認できます。

```
# Change the value of FARM_ID to your farm's identifier
FARM_ID=farm-00112233445566778899aabbccddeeff
# Change the value of QUEUE1_ID to queue Q1's identifier
QUEUE1_ID=queue-00112233445566778899aabbccddeeff
# Change the value of WSALL_ID to the identifier of the WSALL storage profile
WSALL_ID=sp-00112233445566778899aabbccddeeff

aws deadline create-job --farm-id $FARM_ID --queue-id $QUEUE1_ID \
  --priority 50 \
  --storage-profile-id $WSALL_ID \
  --template-type JSON --template \
  '{
    "specificationVersion": "jobtemplate-2023-09",
    "name": "DemoPathMapping",
    "steps": [
      {
        "name": "ShowPathMappingRules",
        "script": {
          "actions": {
            "onRun": {
              "command": "/bin/cat",
              "args": [ "{{Session.PathMappingRulesFile}}" ]
            }
          }
        }
      }
    ]
  }'
```

 [Deadline Cloud CLI](https://pypi.org/project/deadline/) を使用してジョブを送信する場合、その`settings.storage_profile_id`設定により、CLI で送信されたジョブが持つストレージプロファイルが設定されます。`WSAll` ストレージプロファイルを使用してジョブを送信するには、以下を設定します。

```
deadline config set settings.storage_profile_id $WSALL_ID
```

 サンプルインフラストラクチャで実行されているかのようにカスタマーマネージドワーカーを実行するには、*Deadline Cloud ユーザーガイド*の[「ワーカーエージェントを実行する](https://docs.aws.amazon.com/deadline-cloud/latest/userguide/run-worker.html)」の手順に従ってワーカーを実行します AWS CloudShell。以前にこれらの指示に従った場合は、まず `~/demoenv-logs`および `~/demoenv-persist` ディレクトリを削除します。また、指示が参照する `DEV_FARM_ID`および `DEV_CMF_ID` 環境変数の値を次のように設定してから、設定します。

```
DEV_FARM_ID=$FARM_ID
DEV_CMF_ID=$FLEET_ID
```

 ジョブの実行後、ジョブのログファイルにパスマッピングルールが表示されます。

```
cat demoenv-logs/${QUEUE1_ID}/*.log
...
JJSON log results (see below)
...
```

ログには、 `FS1`と `FSComm` ファイルシステムの両方のマッピングが含まれています。読みやすいように再フォーマットされたログエントリは次のようになります。

```
{
    "version": "pathmapping-1.0",
    "path_mapping_rules": [
        {
            "source_path_format": "POSIX",
            "source_path": "/shared/projects/project1",
            "destination_path": "/mnt/projects/project1"
        },
        {
            "source_path_format": "POSIX",
            "source_path": "/shared/common",
            "destination_path": "/mnt/common"
        }
    ]
```

 異なるストレージプロファイルを持つジョブを送信して、パスマッピングルールがどのように変化するかを確認できます。