汎用インスタンス - Amazon Elastic Compute Cloud

汎用インスタンス

汎用インスタンスは、コンピューティング、メモリ、およびネットワーキングリソースをバランスよく備えており、広範囲のワークロードに使用できます。

A1 インスタンス

これらのインスタンスは、Arm エコシステムがサポートするスケールアウト型ワークロードに最適です。これらのインスタンスは、次の用途に適しています。

  • ウェブサーバー

  • コンテナ化されたマイクロサービス

a1.metal などのベアメタルインスタンスを使用すると、アプリケーションから、プロセッサとメモリなどのホストサーバーの物理リソースに直接アクセスすることができます。

詳細については、「AWS Graviton プロセッサ」および「Amazon EC2 A1 インスタンス」を参照してください。

M5、M5a インスタンス

これらのインスタンスは、クラウドインフラストラクチャの実現に最適で、コンピューティング、メモリ、およびネットワーキングリソースをバランスよく備えており、クラウドにデプロイされる広範なアプリケーションに使用されます。このインスタンスは、以下に最適です。

  • 小規模および中規模のデータベース

  • 追加のメモリを必要とするデータ処理タスク

  • キャッシュフリート

  • SAP、Microsoft SharePoint、クラスターコンピューティング、その他のエンタープライズアプリケーションなどのバックエンドサーバー

詳細については、「Amazon EC2 M5 インスタンス」を参照してください。

m5.metal などのベアメタルインスタンスを使用すると、アプリケーションから、プロセッサとメモリなどのホストサーバーの物理リソースに直接アクセスすることができます。これらのインスタンスは、次の用途に適しています。

  • 仮想環境で利用できない、または完全にサポートされていない低レベルのハードウェア機能 (例: Intel VT) へのアクセスを必要とするワークロード

  • ライセンスやサポートを目的として非仮想化環境で実行する必要があるアプリケーション

M6g インスタンスと M6gd インスタンス

これらのインスタンスは AWS Graviton2 プロセッサを搭載しており、幅広い汎用ワークロードに対応するバランスの取れたコンピューティング、メモリ、ネットワーキングを提供します。このインスタンスは、以下に最適です。

  • アプリケーションサーバー

  • マイクロサービス

  • ゲームサーバー

  • 中規模のデータストア

  • キャッシュフリート

m6g.metal などのベアメタルインスタンスを使用すると、アプリケーションから、プロセッサとメモリなどのホストサーバーの物理リソースに直接アクセスすることができます。

詳細については、「Amazon EC2 M6g インスタンス」を参照してください。

T2、T3 インスタンス

これらのインスタンスは、ベースラインレベルの CPU パフォーマンスを維持し、ワークロードの必要に応じてより高いレベルまでバーストすることもできます。無制限インスタンスは、必要なときに、任意の期間にわたって高い CPU パフォーマンスを保持できます。詳細については、「バーストパフォーマンスインスタンス」を参照してください。これらのインスタンスは、次の用途に適しています。

  • ウェブサイトとウェブアプリケーション

  • コードリポジトリ

  • 開発、ビルド、テスト、およびステージング環境

  • マイクロサービス

詳細については、「Amazon EC2 T2 インスタンス」、「Amazon EC2 T3 インスタンス」、および「Amazon EC2T4g インスタンス」を参照してください。

ハードウェア仕様

以下に示しているのは、汎用インスタンスのハードウェア仕様の要約です。

インスタンスタイプ デフォルト vCPU メモリ (GiB)
a1.medium 1 2
a1.large 2 4
a1.xlarge 4 8
a1.2xlarge 8 16
a1.4xlarge 16 32
a1.metal 16 32
m4.large 2 8
m4.xlarge 4 16
m4.2xlarge 8 32
m4.4xlarge 16 64
m4.10xlarge 40 160
m4.16xlarge 64 256
m5.large 2 8
m5.xlarge 4 16
m5.2xlarge 8 32
m5.4xlarge 16 64
m5.8xlarge 32 128
m5.12xlarge 48 192
m5.16xlarge 64 256
m5.24xlarge 96 384
m5.metal 96 384
m5a.large 2 8
m5a.xlarge 4 16
m5a.2xlarge 8 32
m5a.4xlarge 16 64
m5a.8xlarge 32 128
m5a.12xlarge 48 192
m5a.16xlarge 64 256
m5a.24xlarge 96 384
m5ad.large 2 8
m5ad.xlarge 4 16
m5ad.2xlarge 8 32
m5ad.4xlarge 16 64
m5ad.8xlarge 32 128
m5ad.12xlarge 48 192
m5ad.16xlarge 64 256
m5ad.24xlarge 96 384
m5d.large 2 8
m5d.xlarge 4 16
m5d.2xlarge 8 32
m5d.4xlarge 16 64
m5d.8xlarge 32 128
m5d.12xlarge 48 192
m5d.16xlarge 64 256
m5d.24xlarge 96 384
m5d.metal 96 384
m5dn.large 2 8
m5dn.xlarge 4 16
m5dn.2xlarge 8 32
m5dn.4xlarge 16 64
m5dn.8xlarge 32 128
m5dn.12xlarge 48 192
m5dn.16xlarge 64 256
m5dn.24xlarge 96 384
m5n.large 2 8
m5n.xlarge 4 16
m5n.2xlarge 8 32
m5n.4xlarge 16 64
m5n.8xlarge 32 128
m5n.12xlarge 48 192
m5n.16xlarge 64 256
m5n.24xlarge 96 384
m6g.medium 1 4
m6g.large 2 8
m6g.xlarge 4 16
m6g.2xlarge 8 32
m6g.4xlarge 16 64
m6g.8xlarge 32 128
m6g.12xlarge 48 192
m6g.16xlarge 64 256
m6g.metal 64 256
m6gd.medium 1 4
m6gd.large 2 8
m6gd.xlarge 4 16
m6gd.2xlarge 8 32
m6gd.4xlarge 16 64
m6gd.8xlarge 32 128
m6gd.12xlarge 48 192
m6gd.16xlarge 64 256
m6gd.metal 64 256
t2.nano 1 0.5
t2.micro 1 1
t2.small 1 2
t2.medium 2 4
t2.large 2 8
t2.xlarge 4 16
t2.2xlarge 8 32
t3.nano 2 0.5
t3.micro 2 1
t3.small 2 2
t3.medium 2 4
t3.large 2 8
t3.xlarge 4 16
t3.2xlarge 8 32
t3a.nano 2 0.5
t3a.micro 2 1
t3a.small 2 2
t3a.medium 2 4
t3a.large 2 8
t3a.xlarge 4 16
t3a.2xlarge 8 32

各 Amazon EC2 インスタンスタイプのハードウェア仕様については、「Amazon EC2 インスタンスタイプ」を参照してください。

CPU オプションの指定についての詳細は、「CPU オプションの最適化」を参照してください。

インスタンスのパフォーマンス

EBS 最適化インスタンスは、インスタンスからの Amazon EBS I/O とその他のネットワークトラフィックとの競合を排除することによって、EBS ボリュームの安定した高パフォーマンスを実現できます。一部の汎用インスタンスは、追加料金なしでデフォルトで EBS 最適化されています。詳細については、「Amazon EBS 最適化インスタンス」を参照してください。

一部の汎用インスタンスタイプでは、Linux でプロセッサの C ステートと P ステートを制御できます。C ステートは非アクティブ時のコアのスリープレベルを制御し、P ステートは希望するコアからのパフォーマンス (CPU 周波数) を制御します。詳細については、「EC2 インスタンスのプロセッサのステート制御」を参照してください。

ネットワークパフォーマンス

サポートされているインスタンスタイプで拡張ネットワーキングを有効にすると、レイテンシーとネットワークジッターを低減し、パケット毎秒 (PPS) のパフォーマンスを高めることができます。ほとんどのアプリケーションでは、高いレベルのネットワークパフォーマンスが一貫して必要なわけではありませんが、データの送受信時にアクセスする帯域幅を増やすことでメリットを得られます。詳細については、「Linux の拡張ネットワーキング」を参照してください。

以下に示しているのは、拡張ネットワークをサポートする汎用インスタンスのネットワークパフォーマンスの要約です。

インスタンスタイプ ネットワークパフォーマンス 拡張ネットワーキング
t2.nano | t2.micro | t2.small | t2.medium | t2.large | t2.xlarge | t2.2xlarge 最大 1 Gbps サポート外
t3.nano | t3.micro | t3.small | t3.medium | t3.large | t3.xlarge | t3.2xlarge | t3a.nano | t3a.micro | t3a.small | t3a.medium | t3a.large | t3a.xlarge | t3a.2xlarge 最大 5 Gbps † ENA
m4.large Intel 82599 VF
m4.xlarge | m4.2xlarge | m4.4xlarge Intel 82599 VF
a1.4xlarge 以下 | a1.metal | m5.4xlarge 以下 | m5a.8xlarge 以下 | m5ad.8xlarge 以下 | m5d.4xlarge 以下 | m6g.4xlarge 以下 | m6gd.4xlarge 以下 最大 10 Gbps † ENA
m4.10xlarge 10 Gbps Intel 82599 VF
m5.8xlarge | m5a.12xlarge | m5ad.12xlarge | m5d.8xlarge 10 Gbps ENA
m5.12xlarge | m5a.16xlarge | m5ad.16xlarge | m5d.12xlarge | m6g.8xlarge | m6gd.8xlarge 12 Gbps ENA
m5.16xlarge | m5a.24xlarge | m5ad.24xlarge | m5d.16xlarge | m6g.12xlarge | m6gd.12xlarge 20 Gbps ENA
m5dn.4xlarge 以下 | m5n.4xlarge 以下 最大 25 Gbps † ENA
m4.16xlarge | m5.24xlarge | m5.metal | m5d.24xlarge | m5d.metal | m5dn.8xlarge | m5n.8xlarge | m6g.16xlarge | m6g.metal | m6gd.16xlarge | m6gd.metal 25 Gbps ENA
m5dn.12xlarge | m5n.12xlarge 50 Gbps ENA
m5dn.16xlarge | m5n.16xlarge 75 Gbps ENA
m5dn.24xlarge | m5n.24xlarge 100 Gbps ENA

† これらのインスタンスでは、ネットワーク I/O クレジットメカニズムを使用して、平均帯域幅使用率に基づいてインスタンスにネットワーク帯域幅を割り当てます。これらのインスタンスでは、帯域幅がベースライン帯域幅を下回るとクレジットを獲得し、これらのクレジットを、ネットワークデータ転送を実行するときに使用できます。詳細については、サポートケースを開き、関心のある特定のインスタンスタイプのベースライン帯域幅について問い合わせてください。

SSD I/O パフォーマンス

カーネルバージョン 4.4 以降の Linux AMI を使用し、インスタンスで利用可能なすべての SSD ベースのインスタンスストアボリュームを使用する場合は、以下の表に示されている IOPS (4,096 バイトブロックサイズ) のパフォーマンスを得ることができます (キューの深さの飽和度において)。それ以外の場合、IOPS パフォーマンスは低下します。

インスタンスサイズ 100% のランダム読み取り時 IOPS 書き込み IOPS
m5ad.large * 30,000 15,000
m5ad.xlarge *

59,000

29,000

m5ad.2xlarge *

117,000

57,000

m5ad.4xlarge *

234,000

114,000

m5ad.8xlarge

466,666

233,333

m5ad.12xlarge

700,000

340,000

m5ad.16xlarge

933,333

466,666

m5ad.24xlarge

1,400,000

680,000

m5d.large *

30,000

15,000

m5d.xlarge *

59,000

29,000

m5d.2xlarge *

117,000

57,000

m5d.4xlarge *

234,000

114,000

m5d.8xlarge

466,666

233,333

m5d.12xlarge

700,000

340,000

m5d.16xlarge

933,333

466,666

m5d.24xlarge

1,400,000

680,000

m5d.metal

1,400,000

680,000

m5dn.large *

30,000

15,000

m5dn.xlarge *

59,000

29,000

m5dn.2xlarge *

117,000

57,000

m5dn.4xlarge *

234,000

114,000

m5dn.8xlarge

466,666

233,333

m5dn.12xlarge

700,000

340,000

m5dn.16xlarge 933,333

466,666

m5dn.24xlarge

1,400,000

680,000

m6gd.medium 13,438 5,625
m6gd.large 26,875 11,250
m6gd.xlarge 53,750 22,500
m6gd.2xlarge 107,500 45,000
m6gd.4xlarge 215,000 90,000
m6gd.8xlarge 430,000 180,000
m6gd.12xlarge 645,000 270,000
m6gd.16xlarge 860,000 360,000
m6gd.metal 860,000 360,000

* これらのインスタンスの場合、最大で指定されたパフォーマンスを得ることができます。

インスタンスに SSD ベースのインスタンスストアボリュームを使用するほど、アーカイブできる書き込み IOPS の数は減少します。これは、SSD コントローラーが実行する必要がある追加の作業が原因です。SSD コントローラーは、利用可能な領域を見つけ、既存のデータを再書き込みし、未使用の領域を消去して、再書き込みができるようにします。このガベージコレクションというプロセスにより、SSD への内部的な書き込み増幅が発生し、ユーザーの書き込み操作に対する SSD 書き込み操作の割合として表示されます。書き込み操作が 4,096 バイトの倍数でないか、4,096 バイトの境界に整合していない場合、パフォーマンスの低下はさらに大きくなります。少量のバイト数または整合していないバイト数で書き込む場合、SSD コントローラーは周辺のデータを読み取り、その結果を新しい場所に保存する必要があります。このパターンにより、書き込み増幅が大幅に増え、レイテンシーが増加し、I/O パフォーマンスが大きく低下します。

SSD コントローラーは、複数の方法を利用すると、書き込み増幅の影響を減らすことができます。このような方法の 1 つには、SSD インスタンスストレージに領域を予約し、コントローラーが書き込み操作に利用できる領域をより効率的に管理できるようにすることです。これをオーバープロビジョニングと呼びます。インスタンスに提供された SSD ベースのインスタンスストアボリュームには、オーバープロビジョニングに対して予約された領域がありません。書き込み増幅を減らすには、ボリュームの 10% を未使用の状態のままにし、SSD コントローラーがこれをオーバープロビジョニングに使用できるようにすることをお勧めしますこれにより、使用できるストレージは減りますが、ディスクが総容量に近づいた場合でもパフォーマンスを向上させることができます。

TRIM をサポートするインスタンスストアボリュームの場合、TRIM コマンドを使用して、書き込んだデータが不要になったときはいつでも SSD コントローラーに通知することができます。これにより、より多くの空き領域がコントローラーに与えられ、その結果書き込み増幅が減り、パフォーマンスが向上します。詳細については、「インスタンスストアボリュームの TRIM のサポート」を参照してください。

インスタンスの機能

以下に示しているのは、汎用インスタンスの機能の要約です。

EBS のみ NVMe EBS インスタンスストア 配置グループ

A1

はい

はい

いいえ

あり

M4

はい

いいえ

いいえ

あり

M5

はい

はい

いいえ

あり

M5a

はい

はい

いいえ

あり

M5ad

いいえ

はい

NVMe *

あり

M5d

いいえ

はい

NVMe *

はい

M5dn

いいえ

はい

NVMe *

はい

M5n

はい

はい

いいえ

はい

M6g

はい

はい

いいえ

はい

M6gd

いいえ

はい

NVMe *

あり

T2

はい

いいえ

いいえ

いいえ

T3

はい

はい

いいえ

なし

T3a

はい

はい

いいえ

いいえ

* ルートデバイスボリュームは、Amazon EBS ボリュームにする必要があります。

詳細については、以下を参照してください。

リリースノート

  • M5、M5d、および T3 インスタンスは、第 1 世代 (Skylake-SP) または第 2 世代 (Cascade Lake) の 3.1 GHz Intel Xeon Platinum 8000 シリーズプロセッサーを搭載しています。

  • M5a、M5ad、および T3a インスタンスは、2.5 GHz AMD EPYC 7000 シリーズプロセッサを搭載しています。

  • A1 インスタンスは、64 ビット Arm アーキテクチャベースの 2.3 GHz AWS Graviton プロセッサを搭載しています。

  • M6g および M6gd インスタンスは、64 ビット Arm アーキテクチャベースの AWS Graviton2 プロセッサを搭載しています。

  • インスタンスタイプが M4、M5、M5a、M5ad、M5d、t2.large 以上の場合、および t3.large 以上 、および t3a.large 以上の場合は、64 ビットの HVM AMI が必要です。これらのインスタンスはハイメモリであるため、そのキャパシティーを活用するには 64 ビットのオペレーティングシステムが必要です。HVM AMI は、ハイメモリインスタンスタイプの準仮想化 (PV) AMI よりも優れたパフォーマンスを提供します。さらに、拡張ネットワーキングを利用するには、HVM AMI を使用する必要があります。

  • Nitro System 上に構築されたインスタンスには、次の要件があります。

    以下の Linux AMI はこれらの要件を満たしています。

    • Amazon Linux 2

    • Amazon Linux AMI 2018.03

    • Ubuntu 14.04 (linux-aws カーネル) 以降

    • Red Hat Enterprise Linux 7.4 以降

    • SUSE Linux Enterprise Server 12 SP2 以降

    • CentOS 7.4.1708 以降

    • FreeBSD 11.1 以降

    • Debian GNU/Linux 9 以降

  • AWS Graviton プロセッサを使用するインスタンスには、以下の要件があります。

    • 64 ビット Arm アーキテクチャ用の AMI を使用する必要があります。

    • ACPI テーブルを含む UEFI による起動と、PCI デバイスの ACPI ホットプラグをサポートしている必要があります。

    以下の Linux AMI はこれらの要件を満たしています。

    • Amazon Linux 2 (64 ビット Arm)

    • Ubuntu 16.04 以降 (64 ビット Arm)

    • Red Hat Enterprise Linux 8.0 以降 (64 ビット Arm)

    • SUSE Linux Enterprise Server 15 以降 (64 ビット Arm)

    • Debian 10 以降 (64 ビット Arm)

  • Nitro System 上に構築されたインスタンスは、ネットワークインターフェイス、EBS ボリューム、および NVMe インスタンスストアボリュームを含め、最大 28 のアタッチをサポートしています。詳細については、「Nitro System のボリューム制限」を参照してください。

  • ベアメタルインスタンスを起動すると、基盤となるサーバーが起動します。これには、すべてのハードウェアやファームウェアコンポーネントの確認が含まれます。つまり、インスタンスが実行状態になってからネットワーク経由で使用できるようになるまでに 20 分かかることがあります。

  • ベアメタルインスタンスから EBS ボリュームまたはセカンダリネットワークインターフェイスをアタッチまたはデタッチするには、PCIe のネイティブホットプラグサポートが必要です。Amazon Linux 2 および最新バージョンの Amazon Linux AMI は PCIe ネイティブホットプラグをサポートしていますが、以前のバージョンではサポートされていません。次の Linux カーネル設定オプションを有効にする必要があります。

    CONFIG_HOTPLUG_PCI_PCIE=y CONFIG_PCIEASPM=y
  • ベアメタルインスタンスでは、I/O ポートベースのシリアルデバイスではなく、PCI ベースのシリアルデバイスを使用しています。アップストリームの Linux カーネルと最新の Amazon Linux AMI は、このデバイスをサポートしています。また、ベアメタルインスタンスでは、システムが PCI ベースのシリアルデバイスを自動的に使用できるようにする ACPI SPCR テーブルも使用できます。最新の Windows AMI では、自動的に PCI ベースのシリアルデバイスが使用されます。

  • Nitro System 上に構築されたインスタンスには、API リクエストによるクリーンシャットダウンをサポートするための system-logind または acpid がインストールされている必要があります。

  • リージョンで起動できるインスタンスの合計数には制限があります。また、一部のインスタンスタイプにはその他の制限もあります。詳細については、Amazon EC2 の「よくある質問」の「Amazon EC2 で実行できるインスタンス数の上限は」を参照してください。