HeadNode セクション - AWS ParallelCluster

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

HeadNode セクション

(必須) ヘッドノードの設定を指定します。

HeadNode: InstanceType: string Networking: SubnetId: string ElasticIp: string/boolean SecurityGroups: - string AdditionalSecurityGroups: - string Proxy: HttpProxyAddress: string DisableSimultaneousMultithreading: boolean Ssh: KeyName: string AllowedIps: string LocalStorage: RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: integer DeleteOnTermination: boolean EphemeralVolume: MountDir: string SharedStorageType: string Dcv: Enabled: boolean Port: integer AllowedIps: string CustomActions: OnNodeStart: Sequence: - Script: string Args: - string Script: string Args: - string OnNodeConfigured: Sequence: - Script: string Args: - string Script: string Args: - string OnNodeUpdated: Sequence: - Script: string Args: - string Script: string Args: - string Iam: InstanceRole: string InstanceProfile: string S3Access: - BucketName: string EnableWriteAccess: boolean KeyName: string AdditionalIamPolicies: - Policy: string Imds: Secured: boolean Image: CustomAmi: string

HeadNode のプロパティ

InstanceType (必須)String)

ヘッドノードのインスタンスタイプを指定します。

ヘッドノードに使用される Amazon EC2 インスタンスタイプを定義します。インスタンスタイプのアーキテクチャは、 または SlurmInstanceType設定に使用される AWS Batch InstanceTypeアーキテクチャと同じである必要があります。

注記

AWS ParallelCluster は、 HeadNode設定で次のインスタンスタイプをサポートしていません。

  • hpc6id

p4d インスタンスタイプ、または複数のネットワークインターフェイスやネットワークインターフェイスカードを持つ別のインスタンスタイプを定義する場合、ElasticIptrue に設定してパブリックアクセスを提供する必要があります。 AWS パブリック IP は、単一のネットワークインターフェイスで起動されたインスタンスにのみ割り当てることができます。この場合、クラスターコンピューティングノードへのパブリックアクセスを提供するのに、NAT ゲートウェイを使用することをお勧めします。詳細については、「Amazon EC2 Linux インスタンス用ユーザーガイド」の「インスタンス起動時のパブリック IPv4 アドレスの割り当て」を参照してください。

更新ポリシー: この設定が変更された場合、更新は許可されません。

DisableSimultaneousMultithreading (オプションBoolean)

true の場合、ヘッドノードのハイパースレッディングを無効にします。デフォルト値は false です。

すべてのインスタンスタイプがハイパースレッディングを無効にできるわけではありません。ハイパースレッディングの無効化をサポートするインスタンスタイプの一覧については、「Amazon EC2 ユーザーガイド」のインスタンスタイプ別の CPU コア数と CPU コアごとのスレッド数を参照してください。

更新ポリシー: この設定が変更された場合、更新は許可されません。

SharedStorageType (オプションString)

内部共有データで使用するストレージのタイプを指定します。内部共有データには、 AWS ParallelCluster でクラスターを管理するために使用するデータと、デフォルトの共有 /home (共有ファイルシステムボリュームをマウントするためのマウントディレクトリとして SharedStorage セクション に指定がない場合) が含まれます。内部共有データの詳細については、「AWS ParallelCluster 内部ディレクトリ」を参照してください。

デフォルトのストレージタイプの Ebs である場合、ヘッドノードは NFS を使用してルートボリュームの一部をコンピューティングノードとログインノードの共有ディレクトリとしてエクスポートします。

Efs である場合、Parallelcluster は共有内部データおよび /home 用の EFS ファイルシステムを作成します。

更新ポリシー: この設定が変更された場合、更新は許可されません。

注記

クラスターがスケールアウトすると、ヘッドノードが NFS エクスポートを使用してルートボリュームのデータをコンピューティングノードと共有するため、EBS ストレージタイプがパフォーマンスのボトルネックをもたらす可能性があります。EFS を使用すると、クラスターのスケールアウトに伴う NFS エクスポートを回避し、関連するパフォーマンスのボトルネックを防止できます。小さなファイルやインストールプロセスでの読み取り/書き込みの可能性を最大限に高めるには、EBS を選択することをお勧めします。スケールには EFS を選択します。

Networking

(必須) ヘッドノードのネットワーク設定を定義します。

Networking: SubnetId: string ElasticIp: string/boolean SecurityGroups: - string AdditionalSecurityGroups: - string Proxy: HttpProxyAddress: string

更新ポリシー: この設定が変更された場合、更新は許可されません。

Networking のプロパティ

SubnetId (必須String)

ヘッドノードをプロビジョニングする既存のサブネットの ID を指定します。

更新ポリシー: この設定が変更された場合、更新は許可されません。

ElasticIp (オプションString)

ヘッドノードに Elastic IP アドレスを作成または割り当てます。サポートされる値は、truefalse、または既存の Elastic IP アドレスの ID です。デフォルト: false

更新ポリシー: この設定が変更された場合、更新は許可されません。

SecurityGroups (オプション[String])

ヘッドノードに使用する Amazon VPC セキュリティグループ ID のリスト。これらは、このプロパティが含まれていない場合に が AWS ParallelCluster 作成するセキュリティグループを置き換えます。

セキュリティグループが SharedStorage システム用に正しく設定されていることを確認します。

更新ポリシー: この設定は、更新中に変更できます。

AdditionalSecurityGroups (オプション[String])

ヘッドノードに使用する追加の Amazon VPC セキュリティグループ ID のリスト。

更新ポリシー: この設定は、更新中に変更できます。

Proxy (オプション)

ヘッドノードのプロキシ設定を指定します。

Proxy: HttpProxyAddress: string
HttpProxyAddress (オプションString)

HTTP または HTTPS プロキシサーバーを定義します。通常は、https://x.x.x.x:8080 です。

デフォルト値はありません。

更新ポリシー: この設定が変更された場合、更新は許可されません。

Ssh

(オプション) ヘッドノードへの SSH アクセスの設定を定義します。

Ssh: KeyName: string AllowedIps: string

更新ポリシー: この設定は、更新中に変更できます。

Ssh のプロパティ

KeyName (オプションString)

ヘッドノードへの SSH アクセスを有効にするための既存の Amazon EC2 キーペアを指定します。

更新ポリシー: この設定が変更された場合、更新は許可されません。

AllowedIps (オプションString)

ヘッドノードへの SSH 接続の CIDR 形式の IP 範囲またはプレフィックスリスト ID を指定します。デフォルト: 0.0.0.0/0

更新ポリシー: この設定は、更新中に変更できます。

LocalStorage

(オプション) ヘッドノードのローカルストレージ構成を定義します。

LocalStorage: RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: integer DeleteOnTermination: boolean EphemeralVolume: MountDir: string

更新ポリシー: この設定は、更新中に変更できます。

LocalStorage のプロパティ

RootVolume (必須)

ヘッドノードのルートボリュームストレージを指定します。

RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: integer DeleteOnTermination: boolean

更新ポリシー: この設定は、更新中に変更できます。

Size (オプションInteger)

ヘッドノードルートボリュームサイズをジビバイト (GiB) 単位で指定します。デフォルトのサイズは AMI から取得されます。異なるサイズを使用するには、AMI が growroot をサポートしている必要があります。

更新ポリシー: この設定が変更された場合、更新は許可されません。

Encrypted (オプションBoolean)

ルートボリュームを暗号化するかどうかを指定します。デフォルト値は true です。

更新ポリシー: この設定が変更された場合、更新は許可されません。

VolumeType (オプションString)

Amazon EBS ボリュームタイプを指定します。サポートされている値は gp2gp3io1io2sc1st1 および standard です。デフォルト値は gp3 です。

詳細については、「Amazon EC2 ユーザーガイド」の「Amazon EBS ボリュームの種類」を参照してください。

更新ポリシー: この設定が変更された場合、更新は許可されません。

Iops (オプションInteger)

io1io2 および gp3 タイプボリュームの IOPS の数を定義します。

デフォルト値、対応値、volume_iopsvolume_size の比率は、VolumeTypeSize で異なります。

更新ポリシー: この設定が変更された場合、更新は許可されません。

VolumeType = io1

デフォルト Iops = 100

サポートする値 Iops = 100 — 64000 †

最大 Iops/Size 比率 = 50 IOPS/GiB。5000 IOPS には、少なくとも 100 GiB の Size が必要です。

VolumeType = io2

デフォルト Iops = 100

サポートする値 Iops = 100 — 64000 (io2 Block Express ボリュームの場合は 256000) †

最大 Iops/Size 比率 = 500 IOPS/GiB。5000 IOPS には、少なくとも 10 GiB の Size が必要です。

VolumeType = gp3

デフォルト Iops = 3000

サポートされる値 Iops = 3000 — 16000

最大 Iops/Size 比率 = 500 IOPS/GiB。5000 IOPS には、少なくとも 10 GiB の Size が必要です。

† 最大 IOPS は、32,000 IOPS 以上でプロビジョニングされた Nitro System で構築されたインスタンスにのみ保証されます。他のインスタンスは、最大 32,000 IOPS を保証します。ボリュームを変更しない限り、古い io1 ボリュームはパフォーマンスが完全にはならないことがあります。io2Block Express ボリュームは、R5b インスタンスタイプで最大 256000 までの Iops 値をサポートします。詳細については、「Amazon EC2 ユーザーガイド」の「io2 Block Express ボリューム」を参照してください。

更新ポリシー: この設定は、更新中に変更できます。

Throughput (オプションInteger)

gp3 ボリュームタイプのスループットを MiB/秒で定義します。この設定は、VolumeTypegp3 の場合のみ有効です。デフォルト値は 125 です。サポートされる値: 125 — 1000 MIB/秒

ThroughputIops の比率は 0.25 以下にします。最大のスループットである 1000 MiB/秒を実現するためには、Iops の設定を 4000 以上にする必要があります。

更新ポリシー: この設定が変更された場合、更新は許可されません。

DeleteOnTermination (オプションBoolean)

ヘッドノードの終了時にルートボリュームを削除するかどうかを指定します。デフォルト値は true です。

更新ポリシー: この設定が変更された場合、更新は許可されません。

EphemeralVolume (オプション)

任意のインスタンスストアボリュームの詳細を指定します。詳細については、「Amazon EC2 Linux インスタンス用ユーザーガイド」の「インスタンスストアボリューム」を参照してください。

EphemeralVolume: MountDir: string

更新ポリシー: この設定が変更された場合、更新は許可されません。

MountDir (オプションString)

インスタンスストアボリュームのマウントディレクトリを指定します。デフォルト: /scratch

更新ポリシー: この設定が変更された場合、更新は許可されません。

Dcv

(オプション) ヘッドノードで実行している Amazon DCV サーバーの構成設定を定義します。

詳細については、「Amazon DCV 経由でヘッドノードとログインノードに接続する」を参照してください。

Dcv: Enabled: boolean Port: integer AllowedIps: string
重要

デフォルトでは、 によってセットアップされた Amazon DCV ポート AWS ParallelCluster はすべての IPv4 アドレスに対して開かれています。ただし、Amazon DCV ポートに接続できるのは、Amazon DCV セッションの URL があり、この URL が pcluster dcv-connect から返されてから 30 秒以内に Amazon DCV セッションに接続する場合のみです。AllowedIps 設定を使用して、CIDR 形式の IP 範囲により Amazon DCV ポートへのアクセスをさらに制限し、Port 設定を使用して非標準ポートを設定します。

更新ポリシー: この設定が変更された場合、更新は許可されません。

Dcv のプロパティ

Enabled (必須)Boolean)

ヘッドノードで Amazon DCV を有効にするかどうかを指定します。デフォルト値は false です。

更新ポリシー: この設定が変更された場合、更新は許可されません。

注記

Amazon DCV は、ヘッドノードで実行している Amazon DCV クライアントと Amazon DCV サーバー間のトラフィックを保護するための自己署名証明書を自動的に生成します。独自の証明書を設定するには、「Amazon DCV の HTTPS 証明書」を参照してください。

Port (オプションInteger)

Amazon DCV のポートを指定します。デフォルト値は 8443 です。

更新ポリシー: この設定が変更された場合、更新は許可されません。

AllowedIps (オプション、推奨)String)

Amazon DCV に接続するための CIDR 形式の IP 範囲を指定します。この設定は、 がセキュリティグループ AWS ParallelCluster を作成する場合にのみ使用されます。デフォルト値は 0.0.0.0/0 で、すべてのインターネットアドレスからのアクセスを許可します。

更新ポリシー: この設定は、更新中に変更できます。

CustomActions

(オプション) ヘッドノードで実行するカスタムスクリプトを指定します。

CustomActions: OnNodeStart: Sequence: - Script: string Args: - string Script: string Args: - string OnNodeConfigured: Sequence: - Script: string Args: - string Script: string Args: - string OnNodeUpdated: Sequence: - Script: string Args: - string Script: string Args: - string

CustomActions のプロパティ

OnNodeStart (オプション)

ノードデプロイのブートストラップアクションが開始される前にヘッドノードで実行する単一のスクリプトまたは一連のスクリプトを指定します。詳細については、「カスタムブートストラップアクション」を参照してください。

Sequence (オプション

run.run するスクリプトのリスト。最初のスクリプトから、設定ファイルにリストされているのと同じ順序でスクリプト AWS ParallelCluster を実行します。

Script (必須)String)

使用するファイルを指定します。ファイルパスは https:// または s3:// で始まる必要があります。

Args (オプション[String])

スクリプトに渡す引数のリスト。

Script (必須)String)

単一のスクリプトに使用するファイルを指定します。ファイルパスは https:// または s3:// で始まる必要があります。

Args (オプション[String])

単一のスクリプトに渡す引数のリスト。

更新ポリシー: この設定が変更された場合、更新は許可されません。

OnNodeConfigured (オプション)

ノードのブートストラップアクションが完了した後に、ヘッドノードで実行する単一のスクリプトまたは一連のスクリプトを指定します。詳細については、「カスタムブートストラップアクション」を参照してください。

Sequence (オプション)

実行するスクリプトのリストを指定します。

Script (必須)String)

使用するファイルを指定します。ファイルパスは https:// または s3:// で始まる必要があります。

Args (オプション[String])

スクリプトに渡す引数のリスト。

Script (必須)String)

単一のスクリプトに使用するファイルを指定します。ファイルパスは https:// または s3:// で始まる必要があります。

Args (オプション[String])

単一のスクリプトに渡す引数のリスト。

更新ポリシー: この設定が変更された場合、更新は許可されません。

OnNodeUpdated (オプション)

ノードの更新アクションが完了した後に、ヘッドノードで実行する単一のスクリプトまたは一連のスクリプトを指定します。詳細については、「カスタムブートストラップアクション」を参照してください。

Sequence (オプション)

実行するスクリプトのリストを指定します。

Script (必須)String)

使用するファイルを指定します。ファイルパスは https:// または s3:// で始まる必要があります。

Args (オプション[String])

スクリプトに渡す引数のリスト。

Script (必須)String)

単一のスクリプトに使用するファイルを指定します。ファイルパスは https:// または s3:// で始まる必要があります。

Args (オプション[String])

単一のスクリプトに渡す引数のリスト。

更新ポリシー: この設定は、更新中に変更できます。

注記

OnNodeUpdated が AWS ParallelCluster 3.4.0 から追加されました。

Sequence バージョン 3.6.0 AWS ParallelCluster 以降で が追加されました。を指定するとSequence、カスタムアクションの複数のスクリプトを一覧表示できます。 は、 を含めずに、1 つのスクリプトでカスタムアクションの設定をサポートするように AWS ParallelCluster 続行しますSequence

AWS ParallelCluster は、同じカスタムアクションSequenceに単一のスクリプトと の両方を含めることをサポートしていません。

Iam

(オプション) クラスターのデフォルトのインスタンスロールまたはインスタンスプロファイルをオーバーライドするために、ヘッドノードで使用するインスタンスロールまたはインスタンスプロファイルのいずれかを指定します。

Iam: InstanceRole: string InstanceProfile: string S3Access: - BucketName: string EnableWriteAccess: boolean KeyName: string AdditionalIamPolicies: - Policy: string

更新ポリシー: この設定は、更新中に変更できます。

Iam のプロパティ

InstanceProfile (オプションString)

デフォルトのヘッドノードのインスタンスプロファイルをオーバーライドするインスタンスプロファイルを指定します。InstanceProfileInstanceRole の両方を指定することはできません。形式は arn:Partition:iam::Account:instance-profile/InstanceProfileName です。

これを指定すると、S3AccessAdditionalIamPolicies の設定を指定することはできません。

に追加された機能には新しいアクセス許可が必要になる AWS ParallelCluster ことが多いため、 S3Accessおよび AdditionalIamPolicies設定のいずれかまたは両方を指定することをお勧めします。

更新ポリシー: この設定が変更された場合、更新は許可されません。

InstanceRole (オプションString)

デフォルトのヘッドノードのインスタンスロールをオーバーライドするインスタンスロールを指定します。InstanceProfileInstanceRole の両方を指定することはできません。形式は arn:Partition:iam::Account:role/RoleName です。

これを指定すると、S3AccessAdditionalIamPolicies の設定を指定することはできません。

に追加された機能には新しいアクセス許可が必要になる AWS ParallelCluster ことが多いため、 S3Accessおよび AdditionalIamPolicies設定のいずれかまたは両方を指定することをお勧めします。

更新ポリシー: この設定は、更新中に変更できます。

S3Access

S3Access (オプション

バケットを指定します。これは、指定されたアクセスをバケットに付与するためのポリシーを生成するために使用されます。

これを指定すると、InstanceProfileInstanceRole の設定を指定することはできません。

に追加された機能には新しいアクセス許可が必要になる AWS ParallelCluster ことが多いため、 S3Accessおよび AdditionalIamPolicies設定のいずれかまたは両方を指定することをお勧めします。

S3Access: - BucketName: string EnableWriteAccess: boolean KeyName: string

更新ポリシー: この設定は、更新中に変更できます。

BucketName (必須)String)

バケットの名前。

更新ポリシー: この設定は、更新中に変更できます。

KeyName (オプションString)

バケットのキーです。デフォルト値は「*」です。

更新ポリシー: この設定は、更新中に変更できます。

EnableWriteAccess (オプションBoolean)

バケットに対して書き込みアクセスが可能かどうかを示す。デフォルト値は false です。

更新ポリシー: この設定は、更新中に変更できます。

AdditionalIamPolicies

AdditionalIamPolicies (オプション)

Amazon EC2 の IAM ポリシーの Amazon リソースネーム (ARN) のリストを指定します。このリストは、 に必要なアクセス許可に加えて、ヘッドノードに使用されるルートロールにアタッチされます AWS ParallelCluster。

IAM ポリシー名とその ARN が異なります。名前を使用することはできません。

これを指定すると、InstanceProfileInstanceRole の設定を指定することはできません。

AdditionalIamPolicies は AWS ParallelCluster に必要なアクセス許可に追加され、 には必要なすべてのアクセス許可が含まれているInstanceRole必要があるAdditionalIamPoliciesため、 を使用することをお勧めします。必要な権限は、機能が追加されるにつれ、リリースごとに変更されることがよくあります。

デフォルト値はありません。

AdditionalIamPolicies: - Policy: string

更新ポリシー: この設定は、更新中に変更できます。

Policy (オプション[String])

IAM ポリシーの一覧。

更新ポリシー: この設定は、更新中に変更できます。

Imds

(オプション)インスタンスメタデータサービス (IMDS) のプロパティを指定します。詳細については、「Amazon EC2 ユーザーガイド」の「インスタンスメタデータサービスバージョン 2 の仕組み」を参照してください。

Imds: Secured: boolean

更新ポリシー: この設定が変更された場合、更新は許可されません。

Imds のプロパティ

Secured (オプションBoolean)

true の場合、ヘッドノードの IMDS (およびインスタンスプロファイルの認証情報) へのアクセスが一部のスーパーユーザーに制限されます。

false の場合、ヘッドノードのすべてのユーザーがヘッドノードの IMDS にアクセスできます。

次のユーザーにはヘッドノードの IMDS へのアクセスが許可されています。

  • ルートユーザー

  • クラスターの管理者ユーザー (デフォルトでは pc-cluster-admin)

  • オペレーティングシステム固有のデフォルトのユーザー (Amazon Linux 2 と RedHat の ec2-user、Ubuntu 18.04 の ubuntu)

デフォルト: true

default ユーザーは、クラスターが AWS リソースとやり取りするために必要なアクセス許可を持っていることを確認する責任があります。default ユーザー IMDS アクセスを無効にすると、 AWS ParallelCluster はコンピューティングノードを管理できず、動作を停止します。default ユーザーの IMDS アクセスを無効にしないでください。

ユーザーにヘッドノードの IMDS へのアクセス許可を付与すると、ヘッドノードのインスタンスプロファイルに含まれるアクセス許可を使用できます。例えば、これらのアクセス許可を使用して Amazon EC2 インスタンスを起動したり、クラスターを設定して認証のために使用する AD ドメインのパスワードを読み取ったりすることができます。

IMDS アクセスを制限するために、 は のチェーン AWS ParallelCluster を管理しますiptables

sudo アクセスを持つクラスターユーザーは、コマンドを実行することで、default ユーザーを含む他の個々のユーザーのヘッドノードの IMDS へのアクセスを選択的に有効または無効にできます。

$ sudo /opt/parallelcluster/scripts/imds/imds-access.sh --allow <USERNAME>

このコマンドの --deny オプションを使用して、ユーザーの IMDS アクセスを無効にできます。

default ユーザーの IMDS アクセスを知らないうちに無効にしてしまった場合は、--allow オプションを使用してアクセス許可を復元できます。

注記

iptables または ip6tables ルールのカスタマイズは、ヘッドノードの IMDS アクセスを制限するために使用するメカニズムを妨げる可能性があります。

更新ポリシー: この設定が変更された場合、更新は許可されません。

Image

(オプション) ヘッドノードのカスタムイメージを定義します。

Image: CustomAmi: string

更新ポリシー: この設定が変更された場合、更新は許可されません。

Image のプロパティ

CustomAmi (オプションString)

デフォルト AMI の代わりにヘッドノードに使用するカスタム AMI の ID を指定します。詳細については、「AWS ParallelCluster AMI カスタマイズ」を参照してください。

カスタム AMI の起動に追加のアクセス許可が必要な場合は、ユーザーおよびヘッドノードポリシーの両方にそれらのアクセス許可を追加する必要があります。

例えば、カスタム AMI に暗号化されたスナップショットが関連付けられている場合、ユーザーおよびヘッドノードポリシーの両方に次の追加のポリシーが必要です。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kms:DescribeKey", "kms:ReEncrypt*", "kms:CreateGrant", "kms:Decrypt" ], "Resource": [ "arn:aws:kms:<AWS_REGION>:<AWS_ACCOUNT_ID>:key/<AWS_KMS_KEY_ID>" ] } ] }

カスタム AMI 検証の警告のトラブルシューティングについては、「カスタム AMI の問題のトラブルシューティング」を参照してください。

更新ポリシー: この設定が変更された場合、更新は許可されません。