

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

# 起動テンプレートの上書きを使用してコンピューティングノードのネットワークインターフェイスをカスタマイズする
<a name="tutorial-network-customization-v3"></a>

 AWS ParallelCluster 3.15.0 以降、 `LaunchTemplateOverrides`パラメータを使用すると、参照される起動テンプレートの設定でデフォルトのネットワークインターフェイス設定を上書きすることで、コンピューティングノードのネットワークインターフェイスをカスタマイズできます。コンピューティングノードのネットワークインターフェイスセクション全体が、上書きに使用される起動テンプレートのネットワークインターフェイスセクションによって上書きされます。

このチュートリアルでは、`p6-b300.48xlarge`コンピューティングノードのデフォルトのネットワーク設定を上書きする例を示します。このカスタマイズは、 がデフォルトで設定するものとは異なる特定のネットワークインターフェイス AWS ParallelCluster 設定が必要な場合に便利です。この例では、Amazon EC2 EFA がサポートするインスタンスタイプのドキュメントで説明されているように、P6-B300 インスタンスのユースケース 2 を設定します。 [Amazon EC2 ](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/efa-acc-inst-types.html)

**注記**  
最大限の柔軟性 AWS CLI を実現するために、コンソールの代わりに を使用して起動テンプレートを作成することをお勧めします。

**注記**  
起動テンプレートには、ネットワークインターフェイスの上書きのみを含める必要があります。 AWS ParallelCluster には、他のパラメータの上書きを防ぐ検証があります。

**警告**  
オーバーライドを使用して、使用されているインスタンスタイプでサポートされていない方法でネットワークインターフェイスを設定すると、インスタンスは起動に失敗します。

**前提条件**
+ AWS ParallelCluster バージョン 3.15.0 以降[がインストールされています](install-v3-parallelcluster.md)。
+  AWS CLI [がインストールされ、設定されています。](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html)
+ [`pcluster`](pcluster-v3.md) CLI を実行するために必要な[アクセス許可](iam-roles-in-parallelcluster-v3.md#iam-roles-in-parallelcluster-v3-example-user-policies)を持つ IAM ロールがあること。

## ステップ 1: セキュリティグループを作成する
<a name="tutorial-network-customization-v3-security-groups"></a>

オーバーライドで使用する起動テンプレートを作成するときは、セキュリティグループを参照する必要があります。コンピューティングリソースのデフォルトの AWS ParallelCluster セキュリティグループは、クラスターが作成されるまで存在しないため、カスタムセキュリティグループを作成する必要があります。このセキュリティグループは、ヘッドノードとコンピューティングノード間のトラフィックを許可するには、ヘッドノードセキュリティグループによって参照される必要があります。

既存のクラスターを更新して新しい容量をカスタマイズする場合は、カスタムクラスターを作成する代わりに、起動テンプレートでデフォルトの AWS ParallelCluster コンピューティングノードセキュリティグループを使用できます。

次の 2 つのセキュリティグループを作成します。
+ **ヘッドノードの追加セキュリティグループ** (`sg-1234abcd`):
  + Ingress: コンピューティングセキュリティグループからのすべてのトラフィック
+ **コンピューティングセキュリティグループ** (`sg-abcd1234`):
  + Ingress: ヘッドノードセキュリティグループからのすべてのトラフィック
  + Ingress: 自己からのすべてのトラフィック (compute-to-compute)
  + 出力: デフォルトの allow-all

## ステップ 2: 起動テンプレートを作成する
<a name="tutorial-network-customization-v3-launch-template"></a>

`p6-b300.48xlarge` コンピューティングノードのネットワークインターフェイス設定を定義する起動テンプレートを作成します。プライマリネットワークインターフェイス (ネットワークカードインデックス 0、デバイスインデックス 0) には、ENA (デフォルト) ネットワークインターフェイスを使用します。残りのネットワークカードでは、EFA 専用インターフェイス (ネットワークカードインデックス 1～16、デバイスインデックス 0) と ENA (デフォルト) インターフェイス (ネットワークカードインデックス 1～16、デバイスインデックス 1) を作成します。

次の AWS CLI コマンドを実行して、起動テンプレート (`lt-123456789`) を作成します。

```
aws ec2 create-launch-template \
  --region us-east-1 \
  --launch-template-name override-lt \
  --launch-template-data '{
    "NetworkInterfaces": [
      {"NetworkCardIndex":0,  "DeviceIndex":0, "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":1,  "DeviceIndex":0, "InterfaceType":"efa-only", "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":1,  "DeviceIndex":1, "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":2,  "DeviceIndex":0, "InterfaceType":"efa-only", "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":2,  "DeviceIndex":1, "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":3,  "DeviceIndex":0, "InterfaceType":"efa-only", "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":3,  "DeviceIndex":1, "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":4,  "DeviceIndex":0, "InterfaceType":"efa-only", "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":4,  "DeviceIndex":1, "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":5,  "DeviceIndex":0, "InterfaceType":"efa-only", "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":5,  "DeviceIndex":1, "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":6,  "DeviceIndex":0, "InterfaceType":"efa-only", "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":6,  "DeviceIndex":1, "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":7,  "DeviceIndex":0, "InterfaceType":"efa-only", "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":7,  "DeviceIndex":1, "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":8,  "DeviceIndex":0, "InterfaceType":"efa-only", "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":8,  "DeviceIndex":1, "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":9,  "DeviceIndex":0, "InterfaceType":"efa-only", "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":9,  "DeviceIndex":1, "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":10, "DeviceIndex":0, "InterfaceType":"efa-only", "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":10, "DeviceIndex":1, "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":11, "DeviceIndex":0, "InterfaceType":"efa-only", "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":11, "DeviceIndex":1, "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":12, "DeviceIndex":0, "InterfaceType":"efa-only", "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":12, "DeviceIndex":1, "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":13, "DeviceIndex":0, "InterfaceType":"efa-only", "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":13, "DeviceIndex":1, "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":14, "DeviceIndex":0, "InterfaceType":"efa-only", "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":14, "DeviceIndex":1, "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":15, "DeviceIndex":0, "InterfaceType":"efa-only", "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":15, "DeviceIndex":1, "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":16, "DeviceIndex":0, "InterfaceType":"efa-only", "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"},
      {"NetworkCardIndex":16, "DeviceIndex":1, "Groups":["sg-abcd1234"], "SubnetId":"subnet-123456789"}
    ]
  }'
```

## ステップ 3: 起動テンプレートの上書きを使用してクラスターを作成する
<a name="tutorial-network-customization-v3-create-cluster"></a>

`LaunchTemplateOverrides` パラメータを使用して、作成した起動テンプレートを参照するクラスター設定を作成します。

```
Region: us-east-1
HeadNode:
  InstanceType: c5.xlarge
  Networking:
    SubnetId: subnet-abcdefghi
    AdditionalSecurityGroups:
      # Add the head node SG that allows traffic from the compute node SG
      - sg-1234abcd
...

Scheduling:
  Scheduler: slurm
  SlurmQueues:
  - Name: queue0
    Networking:
      SubnetIds:
        - subnet-123456789
    ComputeResources:
      - Name: compute-resource1
        InstanceType: p6-b300.48xlarge
        Efa:
          Enabled: false # The override replaces all network interface configuration, so this setting is ignored
        LaunchTemplateOverrides:
          LaunchTemplateId: lt-123456789
          Version: 1 # If the launch template is updated, then the new version should be specified here.
```